Chameleon

Chameleon Svn Source Tree

Root/branches/ErmaC/Trunk/i386/modules/klibc/strlcat.c

1/*
2 * strlcat.c
3 */
4
5#include <string.h>
6
7size_t strlcat(char *dst, const char *src, size_t size)
8{
9size_t bytes = 0;
10char *q = dst;
11const char *p = src;
12char ch;
13
14while (bytes < size && *q) {
15q++;
16bytes++;
17}
18if (bytes == size)
19return (bytes + strlen(src));
20
21while ((ch = *p++)) {
22if (bytes + 1 < size)
23*q++ = ch;
24
25bytes++;
26}
27
28*q = '\0';
29return bytes;
30}
31

Archive Download this file

Revision: 1622