diff options
Diffstat (limited to 'common/str.h')
-rw-r--r-- | common/str.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/common/str.h b/common/str.h index d55ba072a9..ba1e0b8341 100644 --- a/common/str.h +++ b/common/str.h @@ -445,6 +445,17 @@ size_t strlcpy(char *dst, const char *src, size_t size); size_t strlcat(char *dst, const char *src, size_t size); /** + * Determine the length of a string up to a maximum of `maxSize` characters. + * This should be used instead of `strlen` when reading the length of a C string + * from potentially unsafe or corrupt sources, like game assets. + * + * @param src The source string. + * @param maxSize The maximum size of the string. + * @return The length of the string. + */ +size_t strnlen(const char *src, size_t maxSize); + +/** * Convenience wrapper for tag2string which "returns" a C string. * Note: It is *NOT* safe to do anything with the return value other than directly * copying or printing it. |