2001-11-02 Jakub Jelinek <jakub@redhat.com>
* string/bits/string2.h (__strndup): If n is smaller than len, set
len to n + 1.
* string/tester.c (test_strndup): New function.
(main): Call it.
* sunrpc/rpc_main.c: Optimize variable definitions a bit.
+2001-11-02 Jakub Jelinek <jakub@redhat.com>
+
+ * string/bits/string2.h (__strndup): If n is smaller than len, set
+ len to n + 1.
+ * string/tester.c (test_strndup): New function.
+ (main): Call it.
+
2001-11-01 Ulrich Drepper <drepper@redhat.com>
- * sunrpc/rpc_main.c: Optomize variable definitions a bit.
+ * sunrpc/rpc_main.c: Optimize variable definitions a bit.
* sunrpc/Makefile (rpcgen-cmd): Use ../scripts/cpp in rpcgen calls.
* scripts/cpp: New file.
size_t __n = (n); \
char *__retval; \
if (__n < __len) \
- __len = __n; \
+ __len = __n + 1; \
__retval = (char *) malloc (__len); \
if (__retval != NULL) \
{ \
equal(one, "abcdef", 4); /* Zero-length copy. */
}
+static void
+test_strndup (void)
+{
+ char *p, *q;
+ it = "strndup";
+ p = strndup("abcdef", 12);
+ check(p != NULL, 1);
+ if (p != NULL)
+ {
+ equal(p, "abcdef", 2);
+ q = strndup(p + 1, 2);
+ check(q != NULL, 3);
+ if (q != NULL)
+ equal(q, "bc", 4);
+ free (q);
+ }
+ free (p);
+ p = strndup("abc def", 3);
+ check(p != NULL, 5);
+ if (p != NULL)
+ equal(p, "abc", 6);
+ free (p);
+}
+
static void
test_bcmp (void)
{
/* bcmp - somewhat like memcmp. */
test_bcmp ();
+ /* strndup. */
+ test_strndup ();
+
/* strerror - VERY system-dependent. */
test_strerror ();