diff options
Diffstat (limited to 'xorg-server/os/strlcpy.c')
-rw-r--r-- | xorg-server/os/strlcpy.c | 35 |
1 files changed, 17 insertions, 18 deletions
diff --git a/xorg-server/os/strlcpy.c b/xorg-server/os/strlcpy.c index 7ffb64cd6..52e7203b2 100644 --- a/xorg-server/os/strlcpy.c +++ b/xorg-server/os/strlcpy.c @@ -31,26 +31,25 @@ size_t strlcpy(char *dst, const char *src, size_t siz) { - register char *d = dst; - register const char *s = src; - register size_t n = siz; + register char *d = dst; + register const char *s = src; + register size_t n = siz; - /* Copy as many bytes as will fit */ - if (n != 0 && --n != 0) { - do { - if ((*d++ = *s++) == 0) - break; - } while (--n != 0); - } + /* Copy as many bytes as will fit */ + if (n != 0 && --n != 0) { + do { + if ((*d++ = *s++) == 0) + break; + } while (--n != 0); + } - /* Not enough room in dst, add NUL and traverse rest of src */ - if (n == 0) { - if (siz != 0) - *d = '\0'; /* NUL-terminate dst */ - while (*s++) - ; - } + /* Not enough room in dst, add NUL and traverse rest of src */ + if (n == 0) { + if (siz != 0) + *d = '\0'; /* NUL-terminate dst */ + while (*s++); + } - return s - src - 1; /* count does not include NUL */ + return s - src - 1; /* count does not include NUL */ } #endif |