(svn r1616) Introduce ttd_strlcat() and use it to de-uglify some piece of code in misc_cmd.

While here rename the len parameter of ttd_strlcpy() to size, because it is a buffer size and not a string length.
Also add -Wwrite-strings to the Makefile, because the above mentioned piece of code was the only part which triggered this warning.
This commit is contained in:
tron
2005-01-23 15:16:47 +00:00
parent 98b06abd59
commit 1cd455b8be
4 changed files with 18 additions and 10 deletions

18
ttd.c
View File

@@ -203,12 +203,20 @@ static const DriverDesc *ChooseDefaultDriver(const DriverDesc *dd)
return best;
}
void ttd_strlcpy(char *dst, const char *src, size_t len)
void ttd_strlcpy(char *dst, const char *src, size_t size)
{
assert(len > 0);
while (--len && *src)
*dst++=*src++;
*dst = 0;
assert(size > 0);
while (--size > 0 && *src != '\0') *dst++ = *src++;
*dst = '\0';
}
void ttd_strlcat(char *dst, const char *src, size_t size)
{
assert(size > 0);
for (; size > 0 && *dst != '\0'; --size, ++dst) {}
assert(size > 0);
while (--size > 0 && *src != '\0') *dst++ = *src++;
*dst = '\0';
}
static char *strecpy(char *dst, const char *src)