diff options
author | Eric Blake <eblake@redhat.com> | 2010-10-06 13:48:07 -0400 |
---|---|---|
committer | Ulrich Drepper <drepper@gmail.com> | 2010-10-06 13:48:07 -0400 |
commit | 5fb308bca2f333dcc835945be85e165cd7843d5b (patch) | |
tree | f67ddffc0b758348e8f55ee94b69730af0955240 /string/bug-strstr1.c | |
parent | 1c375652919fb4482ae946d1cd612fa655429e11 (diff) | |
download | glibc-5fb308bca2f333dcc835945be85e165cd7843d5b.tar glibc-5fb308bca2f333dcc835945be85e165cd7843d5b.tar.gz glibc-5fb308bca2f333dcc835945be85e165cd7843d5b.tar.bz2 glibc-5fb308bca2f333dcc835945be85e165cd7843d5b.zip |
Fix strstr and memmem algorithm.
Diffstat (limited to 'string/bug-strstr1.c')
-rw-r--r-- | string/bug-strstr1.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/string/bug-strstr1.c b/string/bug-strstr1.c new file mode 100644 index 0000000000..889de12955 --- /dev/null +++ b/string/bug-strstr1.c @@ -0,0 +1,26 @@ +#include <stdio.h> +#include <string.h> + +int main (int argc, char** argv) +{ + const char haystack[] = + "F_BD_CE_BD_EF_BF_BD_EF_BF_BD_EF_BF_BD_EF_BF_BD_C3_88_20_EF_BF_BD_EF_BF_BD_EF_BF_BD_C3_A7_20_EF_BF_BD"; + + const char needle[] = + "_EF_BF_BD_EF_BF_BD_EF_BF_BD_EF_BF_BD_EF_BF_BD"; + + const char* sub = strstr (haystack, needle); + + if (sub != NULL) + { + int j; + + fprintf (stderr, "BUG: expected NULL, got:\n%s\n%s\n", sub, needle); + for (j = 0; needle[j] != '\0'; ++j) + putchar (needle[j] == sub[j] ? ' ' : '^'); + puts (""); + return 1; + } + + return 0; +} |