summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2010-07-12 15:12:56 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2010-07-12 15:12:56 +0000
commit18886fc59d4ced278ed458da880ccddefc91f5da (patch)
tree8a1871fa709234e6a4f81ad12d6f901800f36a1d
parent95014ba2894d7ed1fbbc35fe212826a3d5c638c3 (diff)
downloadaports-18886fc59d4ced278ed458da880ccddefc91f5da.tar.bz2
aports-18886fc59d4ced278ed458da880ccddefc91f5da.tar.xz
main/busybox: use upstream patch for diff
-rw-r--r--main/busybox/APKBUILD4
-rw-r--r--main/busybox/diff.patch94
2 files changed, 76 insertions, 22 deletions
diff --git a/main/busybox/APKBUILD b/main/busybox/APKBUILD
index de31b98f6..9ec44618a 100644
--- a/main/busybox/APKBUILD
+++ b/main/busybox/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=busybox
pkgver=1.16.2
-pkgrel=1
+pkgrel=2
pkgdesc="Size optimized toolbox of many common UNIX utilities"
url=http://busybox.net
license="GPL-2"
@@ -70,6 +70,6 @@ static() {
md5sums="2ba980f720a5bdce4ec05423519acc35 busybox-1.16.2.tar.bz2
4c0f3b486eaa0674961b7ddcd0c60a9b busybox-1.11.1-bb.patch
-f2d22840613fc6e3f359c87af9781caa diff.patch
+5ce533f9727761c31de5b5f9df568f2f diff.patch
20d9beea7d0c0aaca14553a8f98fee12 flock-bb.patch
4bc85af9dd659cbb83c9a819b3481a47 busyboxconfig"
diff --git a/main/busybox/diff.patch b/main/busybox/diff.patch
index 947be700b..702c66ca2 100644
--- a/main/busybox/diff.patch
+++ b/main/busybox/diff.patch
@@ -1,29 +1,83 @@
-commit d1ed648727f3a0df2d067d869040306ba1e2c52e
-Author: Natanael Copa <natanael.copa@gmail.com>
-Date: Fri Jul 9 09:38:03 2010 +0000
+commit 61f5f7823c4f217dd9bad2f1df547f81b9338c76
+Author: Matheus Izvekov <mizvekov@gmail.com>
+Date: Fri Jul 9 19:40:00 2010 +0200
- diff: strip trailing / on dirs
+ diff: fix "diff dir1 dir2/". Closes bug 2203
- fixes #2203
- https://bugs.busybox.net/show_bug.cgi?id=2203
+ Signed-off-by: Matheus Izvekov <mizvekov@gmail.com>
+ Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
diff --git a/editors/diff.c b/editors/diff.c
-index 07594e8..e2da626 100644
+index 07594e8..8d91b83 100644
--- a/editors/diff.c
+++ b/editors/diff.c
-@@ -788,9 +788,15 @@ static void diffdir(char *p[2], const char *s_start)
+@@ -760,9 +760,11 @@ static int FAST_FUNC add_to_dirlist(const char *filename,
+ void *userdata, int depth UNUSED_PARAM)
+ {
+ struct dlist *const l = userdata;
++ const char *file = filename + l->len;
+ l->dl = xrealloc_vector(l->dl, 6, l->e);
+- /* + 1 skips "/" after dirname */
+- l->dl[l->e] = xstrdup(filename + l->len + 1);
++ while(*file == '/')
++ file++;
++ l->dl[l->e] = xstrdup(file);
+ l->e++;
+ return TRUE;
+ }
+diff --git a/testsuite/diff.tests b/testsuite/diff.tests
+index 06d5a4f..27a4b33 100755
+--- a/testsuite/diff.tests
++++ b/testsuite/diff.tests
+@@ -4,7 +4,7 @@
- memset(&list, 0, sizeof(list));
- for (i = 0; i < 2; i++) {
-+ char *lc;
- /*list[i].s = list[i].e = 0; - memset did it */
- /*list[i].dl = NULL; */
+ . ./testing.sh
-+ /* trim trailing / in dirs. */
-+ lc = last_char_is(p[i], '/');
-+ if (lc && lc != p[i])
-+ *lc = '\0';
+-# testing "test name" "options" "expected result" "file input" "stdin"
++# testing "test name" "commands" "expected result" "file input" "stdin"
+
+ # diff outputs date/time in the header, which should not be analysed
+ # NB: sed has tab character in s command!
+@@ -100,9 +100,11 @@ testing "diff always takes context from old file" \
+ "abc\na c\ndef\n" \
+ "a c\n"
+
+-# testing "test name" "options" "expected result" "file input" "stdin"
++# testing "test name" "commands" "expected result" "file input" "stdin"
+
++# clean up
+ rm -rf diff1 diff2
++
+ mkdir diff1 diff2 diff2/subdir
+ echo qwe >diff1/-
+ echo asd >diff2/subdir/-
+@@ -187,4 +189,29 @@ SKIP=
+ # clean up
+ rm -rf diff1 diff2
+
++# NOT using directory structure from prev test...
++mkdir diff1 diff2
++echo qwe >diff1/-
++echo rty >diff2/-
++optional FEATURE_DIFF_DIR
++testing "diff diff1 diff2/" \
++ "diff -ur diff1 diff2/ | $TRIM_TAB; diff -ur .///diff1 diff2//// | $TRIM_TAB" \
++"\
++--- diff1/-
+++++ diff2/-
++@@ -1 +1 @@
++-qwe
+++rty
++--- .///diff1/-
+++++ diff2////-
++@@ -1 +1 @@
++-qwe
+++rty
++" \
++ "" ""
++SKIP=
++
++# clean up
++rm -rf diff1 diff2
+
- /* We need to trim root directory prefix.
- * Using list.len to specify its length,
- * add_to_dirlist will remove it. */
+ exit $FAILCOUNT