Make tests public. Rewrite most tests. Add tests.
[pintos-anon] / src / lib / string.c
index bec4444670b025768485cb143edb0329de3cb60c..01e4ecb378d462e4fb639ea01db177cb8070f977 100644 (file)
@@ -212,7 +212,9 @@ strstr (const char *haystack, const char *needle)
    single string.
 
    strtok_r() modifies the string S, changing delimiters to null
-   bytes.  Thus, S must be a modifiable string.
+   bytes.  Thus, S must be a modifiable string.  String literals,
+   in particular, are *not* modifiable in C, even though for
+   backward compatibility they are not `const'.
 
    Example usage:
 
@@ -333,7 +335,7 @@ strlcpy (char *dst, const char *src, size_t size)
     {
       size_t dst_len = size - 1;
       if (src_len < dst_len)
-        src_len = dst_len;
+        dst_len = src_len;
       memcpy (dst, src, dst_len);
       dst[dst_len] = '\0';
     }