From: Szabolcs Nagy Date: Fri, 18 Apr 2014 22:15:07 +0000 (+0200) Subject: add wcsstr regression test X-Git-Url: http://nsz.repo.hu/git/?a=commitdiff_plain;h=f0101b1c9daa2cc5aa25eb303ebaa4e886a1a1d9;hp=9679fb900a837d35affba74ffa5b747884c5a00f;p=libc-test add wcsstr regression test --- diff --git a/src/regression/memmem-oob.c b/src/regression/memmem-oob.c index 2be928d..5249284 100644 --- a/src/regression/memmem-oob.c +++ b/src/regression/memmem-oob.c @@ -1,3 +1,4 @@ +// commit 6fbdeff0e51f6afc38fbb1476a4db81322779da4 2014-04-09 // memmem should not access oob data #ifndef _GNU_SOURCE #define _GNU_SOURCE diff --git a/src/regression/rlimit-open-files.c b/src/regression/rlimit-open-files.c index b946663..192ac35 100644 --- a/src/regression/rlimit-open-files.c +++ b/src/regression/rlimit-open-files.c @@ -19,7 +19,7 @@ int main(void) t_error("setrlimit(%d, %ld) failed: %s\n", r, lim, strerror(errno)); if (getrlimit(r, &rl)) t_error("getrlimit(%d) failed: %s\n", r, strerror(errno)); - if (lim != rl.rlim_max || lim != rl.rlim_cur) + if (rl.rlim_max != lim || rl.rlim_cur != lim) t_error("getrlimit %d says cur=%ld,max=%ld after setting the limit to %ld\n", r, rl.rlim_cur, rl.rlim_max, lim); while((fd=dup(1)) != -1) diff --git a/src/regression/wcsstr-false-negative.c b/src/regression/wcsstr-false-negative.c new file mode 100644 index 0000000..7283472 --- /dev/null +++ b/src/regression/wcsstr-false-negative.c @@ -0,0 +1,14 @@ +// commit 476cd1d96560aaf7f210319597556e7fbcd60469 2014-04-18 +// wcsstr (strstr and memmem) failed to match repetitive needles in some cases +#include +#include "test.h" + +int main(int argc, char* argv[]) +{ + wchar_t const *haystack = L"playing play play play always"; + wchar_t const *needle = L"play play play"; + wchar_t *p = wcsstr(haystack, needle); + if (p != haystack+8) + t_error("wcsstr(L\"%S\",L\"%S\") failed: got %p, want %p\n", haystack, needle, p, haystack+8); + return t_status; +}