diff options
author | 2006-04-19 19:56:28 +1000 | |
---|---|---|
committer | 2006-04-19 19:56:28 +1000 | |
commit | d0956f1e43dbad48216a22b6a387a39de509ea60 (patch) | |
tree | 4ef4e7a3a36a2cf4fdee885d7d6708b7dc143b3c /fallback.h | |
parent | 6996c7718e33b270c9ae952ad3e1cd4b5be80ddd (diff) |
Use libc implementations of wcslcpy and wcslcat if they exist. Move internal implementations to fallback.c.
darcs-hash:20060419095628-ac50b-0e94e4205306bb99bb9dea72eec43b442520bf1b.gz
Diffstat (limited to 'fallback.h')
-rw-r--r-- | fallback.h | 29 |
1 files changed, 29 insertions, 0 deletions
@@ -232,5 +232,34 @@ long wcstol(const wchar_t *nptr, int base); #endif +#ifndef HAVE_WCSLCAT + +/** + Appends src to string dst of size siz (unlike wcsncat, siz is the + full size of dst, not space left). At most siz-1 characters will be + copied. Always NUL terminates (unless siz <= wcslen(dst)). Returns + wcslen(src) + MIN(siz, wcslen(initial dst)). If retval >= siz, + truncation occurred. + + This is the OpenBSD strlcat function, modified for wide characters, + and renamed to reflect this change. + +*/ +size_t wcslcat( wchar_t *dst, const wchar_t *src, size_t siz ); + +#endif +#ifndef HAVE_WCSLCPY + +/** + Copy src to string dst of size siz. At most siz-1 characters will + be copied. Always NUL terminates (unless siz == 0). Returns + wcslen(src); if retval >= siz, truncation occurred. + + This is the OpenBSD strlcpy function, modified for wide characters, + and renamed to reflect this change. +*/ +size_t wcslcpy( wchar_t *dst, const wchar_t *src, size_t siz ); + +#endif #endif |