Contents of /trunk/glibc/patches/glibc-2.16.0-strncasecmp-segfault.patch
Parent Directory | Revision Log
Revision 1925 -
(show annotations)
(download)
Sun Oct 28 19:05:24 2012 UTC (11 years, 10 months ago) by niro
File size: 1556 byte(s)
Sun Oct 28 19:05:24 2012 UTC (11 years, 10 months ago) by niro
File size: 1556 byte(s)
-more glibc-2.16 fixes
1 | diff --git a/string/test-strncasecmp.c b/string/test-strncasecmp.c |
2 | index 6c17530..acfe668 100644 |
3 | --- a/string/test-strncasecmp.c |
4 | +++ b/string/test-strncasecmp.c |
5 | @@ -1,5 +1,5 @@ |
6 | /* Test and measure strncasecmp functions. |
7 | - Copyright (C) 1999, 2002, 2003, 2005, 2010 Free Software Foundation, Inc. |
8 | + Copyright (C) 1999-2012 Free Software Foundation, Inc. |
9 | This file is part of the GNU C Library. |
10 | Written by Jakub Jelinek <jakub@redhat.com>, 1999. |
11 | |
12 | @@ -251,9 +251,9 @@ do_random_tests (void) |
13 | } |
14 | } |
15 | |
16 | - |
17 | +/* Regression test for BZ #12205 */ |
18 | static void |
19 | -check1 (void) |
20 | +bz12205 (void) |
21 | { |
22 | static char cp [4096+16] __attribute__ ((aligned(4096))); |
23 | static char gotrel[4096] __attribute__ ((aligned(4096))); |
24 | @@ -270,6 +270,15 @@ check1 (void) |
25 | check_result (impl, s1, s2, n, exp_result); |
26 | } |
27 | |
28 | +/* Regression test for BZ #14195 */ |
29 | +static void |
30 | +bz14195 (void) |
31 | +{ |
32 | + const char *empty_string = ""; |
33 | + FOR_EACH_IMPL (impl, 0) |
34 | + check_result (impl, empty_string, "", 5, 0); |
35 | +} |
36 | + |
37 | int |
38 | test_main (void) |
39 | { |
40 | @@ -277,7 +286,8 @@ test_main (void) |
41 | |
42 | test_init (); |
43 | |
44 | - check1 (); |
45 | + bz12205 (); |
46 | + bz14195 (); |
47 | |
48 | printf ("%23s", ""); |
49 | FOR_EACH_IMPL (impl, 0) |
50 | diff --git a/sysdeps/i386/i686/multiarch/strcmp-ssse3.S b/sysdeps/i386/i686/multiarch/strcmp-ssse3.S |
51 | index 5e6321e..9735ad0 100644 |
52 | --- a/sysdeps/i386/i686/multiarch/strcmp-ssse3.S |
53 | +++ b/sysdeps/i386/i686/multiarch/strcmp-ssse3.S |
54 | @@ -2445,7 +2445,7 @@ L(less16bytes_sncmp): |
55 | # endif |
56 | jne L(neq_sncmp) |
57 | test %cl, %cl |
58 | - je L(eq) |
59 | + je L(eq_sncmp) |
60 | |
61 | cmp $1, REM |
62 | je L(eq_sncmp) |
63 | -- |
64 | 1.7.3.4 |