[liba] strlcpy third argument in size, not length

This commit is contained in:
Léa Saviot
2019-10-10 13:33:11 +02:00
parent 4025d75734
commit 0a21ed2cfb
2 changed files with 4 additions and 4 deletions

View File

@@ -14,7 +14,7 @@ void * memset(void * b, int c, size_t len);
char * strchr(const char * s, int c);
int strcmp(const char * s1, const char * s2);
int strncmp(const char * s1, const char * s2, size_t n);
size_t strlcpy(char * dst, const char * src, size_t len);
size_t strlcpy(char * dst, const char * src, size_t dstSize);
size_t strlen(const char * s);
LIBA_END_DECLS

View File

@@ -1,11 +1,11 @@
#include <string.h>
size_t strlcpy(char * dst, const char * src, size_t len) {
if (len == 0) {
size_t strlcpy(char * dst, const char * src, size_t dstSize) {
if (dstSize == 0) {
return strlen(src);
}
const char * cur = src;
const char * end = src+len-1;
const char * end = src+dstSize-1;
while (*cur != 0 && cur < end) {
*dst++ = *cur++;
}