diff options
author | Stef Walter <stef@memberwebs.com> | 2004-07-08 18:27:54 +0000 |
---|---|---|
committer | Stef Walter <stef@memberwebs.com> | 2004-07-08 18:27:54 +0000 |
commit | c912dc0c7a6ab39c90200ed5614b181cd1397d5c (patch) | |
tree | a3b2df0f9a3a62ea9de95395d8e313bffddce203 /common/compat.c | |
parent | 0561cfd0ce346fce733dd1b25e5b2650e50bf7bf (diff) |
Initial import
Diffstat (limited to 'common/compat.c')
-rw-r--r-- | common/compat.c | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/common/compat.c b/common/compat.c new file mode 100644 index 0000000..baf1e34 --- /dev/null +++ b/common/compat.c @@ -0,0 +1,77 @@ + +#include "usuals.h" +#include "compat.h" + +#ifndef HAVE_REALLOCF + +void* reallocf(void* ptr, size_t size) +{ + void* ret = realloc(ptr, size); + + if(!ret && size) + free(ptr); + + return ret; +} + +#endif + +#ifndef HAVE_STRLWR +char* strlwr(char* s) +{ + char* t = s; + while(*t) + { + *t = tolower(*t); + t++; + } + return s; +} +#endif + +#ifndef HAVE_STRUPR +char* strupr(char* s) +{ + char* t = s; + while(*t) + { + *t = toupper(*t); + t++; + } + return s; +} +#endif + +#ifndef HAVE_STRLCPY + +#ifndef HAVE_STRNCPY +#error neither strncpy or strlcpy found +#endif + +void strlcpy(char* dest, const char* src, size_t count) +{ + if(count > 0) + { + strncpy(dest, src, count); + dest[count - 1] = 0; + } +} +#endif + +#ifndef HAVE_STRLCAT + +#ifndef HAVE_STRNCAT +#error neither strncat or strlcat found +#endif + +void strlcat(char* dest, const char* src, size_t count) +{ + if(count > 0) + { + strncat(dest, src, count); + dest[count - 1] = 0; + } +} +#endif + + |