diff options
-rw-r--r-- | meta/recipes-devtools/make/make-3.82/make-savannah-bug30612-fix_white_space.patch | 58 | ||||
-rw-r--r-- | meta/recipes-devtools/make/make_3.82.bb | 3 |
2 files changed, 60 insertions, 1 deletions
diff --git a/meta/recipes-devtools/make/make-3.82/make-savannah-bug30612-fix_white_space.patch b/meta/recipes-devtools/make/make-3.82/make-savannah-bug30612-fix_white_space.patch new file mode 100644 index 0000000000..0ef501fb97 --- /dev/null +++ b/meta/recipes-devtools/make/make-3.82/make-savannah-bug30612-fix_white_space.patch @@ -0,0 +1,58 @@ +Fix another error related to whitespace handling in archives. + +2011-06-12 Paul Smith <psmith@gnu.org> + +* read.c (parse_file_seq): Move the check for empty members out of +the loop so we can go to the next member properly. +Another fix for Savannah bug #30612. + +Upstream-Status: Backport + +--- + read.c | 10 +++++----- + tests/scripts/features/archives | 5 +++++ + 5 files changed, 30 insertions(+), 5 deletions(-) + +diff --git a/read.c b/read.c +index c87d4a7..b012094 100644 +--- a/read.c ++++ b/read.c +@@ -3044,16 +3044,16 @@ parse_file_seq (char **stringp, unsigned int size, int stopchar, + nlen -= (n + 1) - tp; + tp = n + 1; + +- /* If we have just "lib(", part of something like +- "lib( a b)", go to the next item. */ +- if (! nlen) +- continue; +- + /* We can stop looking now. */ + break; + } + } + while (*e != '\0'); ++ ++ /* If we have just "lib(", part of something like "lib( a b)", ++ go to the next item. */ ++ if (! nlen) ++ continue; + } + } + +diff --git a/tests/scripts/features/archives b/tests/scripts/features/archives +index 00aa1af..3fe46a0 100644 +--- a/tests/scripts/features/archives ++++ b/tests/scripts/features/archives +@@ -36,6 +36,11 @@ utouch(-50, 'a2.o'); + run_make_test('all: libxx.a(a3.o *.o)', '', + "ar rv libxx.a a3.o\na - a3.o\nar rv libxx.a a2.o\nr - a2.o\n"); + ++# Check whitespace handling ++utouch(-40, 'a2.o'); ++run_make_test('all: libxx.a( a3.o *.o )', '', ++ "ar rv libxx.a a2.o\nr - a2.o\n"); ++ + rmfiles(qw(a1.o a2.o a3.o libxx.a)); + + # This tells the test driver that the perl test script executed properly. + diff --git a/meta/recipes-devtools/make/make_3.82.bb b/meta/recipes-devtools/make/make_3.82.bb index b4292b5d62..8a2f287a01 100644 --- a/meta/recipes-devtools/make/make_3.82.bb +++ b/meta/recipes-devtools/make/make_3.82.bb @@ -7,7 +7,8 @@ require make.inc SRC_URI += "file://expand_MAKEFLAGS.patch \ file://intermediate-target-bugfix.patch \ - file://make-savannah-bug30612-handling_of_archives.patch;striplevel=0" + file://make-savannah-bug30612-handling_of_archives.patch;striplevel=0 \ + file://make-savannah-bug30612-fix_white_space.patch" SRC_URI[md5sum] = "1a11100f3c63fcf5753818e59d63088f" SRC_URI[sha256sum] = "e2c1a73f179c40c71e2fe8abf8a8a0688b8499538512984da4a76958d0402966" |