diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2010-07-20 09:19:08 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2010-07-20 09:19:08 +0000 |
commit | 411e5b317b155008d1d01f4705d2a4879eb1ce3e (patch) | |
tree | 8d8d588470fe16d84ebd97ef8308253d5a82d6bf | |
parent | 0cde249f22b1afed65a21d7f44cdcc2829bf428f (diff) | |
download | aports-411e5b317b155008d1d01f4705d2a4879eb1ce3e.tar.bz2 aports-411e5b317b155008d1d01f4705d2a4879eb1ce3e.tar.xz |
main/busybox: updated patch for diff
fixes #381
-rw-r--r-- | main/busybox/APKBUILD | 4 | ||||
-rw-r--r-- | main/busybox/diff.patch | 99 |
2 files changed, 79 insertions, 24 deletions
diff --git a/main/busybox/APKBUILD b/main/busybox/APKBUILD index de31b98f60..d382cd960d 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 +fcf0691c8d6ece1e0ace086bda354100 diff.patch 20d9beea7d0c0aaca14553a8f98fee12 flock-bb.patch 4bc85af9dd659cbb83c9a819b3481a47 busyboxconfig" diff --git a/main/busybox/diff.patch b/main/busybox/diff.patch index 947be700bd..d4948bd0e1 100644 --- a/main/busybox/diff.patch +++ b/main/busybox/diff.patch @@ -1,29 +1,84 @@ -commit d1ed648727f3a0df2d067d869040306ba1e2c52e -Author: Natanael Copa <natanael.copa@gmail.com> -Date: Fri Jul 9 09:38:03 2010 +0000 - - diff: strip trailing / on dirs - - fixes #2203 - https://bugs.busybox.net/show_bug.cgi?id=2203 +From 61f5f7823c4f217dd9bad2f1df547f81b9338c76 Mon Sep 17 00:00:00 2001 +From: Matheus Izvekov <mizvekov@gmail.com> +Date: Fri, 09 Jul 2010 17:40:00 +0000 +Subject: diff: fix "diff dir1 dir2/". Closes bug 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 @@ + + . ./testing.sh + +-# 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" - 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 "test name" "options" "expected result" "file input" "stdin" ++# testing "test name" "commands" "expected result" "file input" "stdin" -+ /* trim trailing / in dirs. */ -+ lc = last_char_is(p[i], '/'); -+ if (lc && lc != p[i]) -+ *lc = '\0'; ++# 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 +-- +cgit v0.8.2.1 |