[Mesa-dev] [PATCH 06/12] ralloc: Use strnlen() inside of strncat()
Vladislav Egorov
vegorov180 at gmail.com
Sat Jan 7 19:02:07 UTC 2017
If the str is long or isn't null-terminated, strlen() could take a lot
of time or even crash. I don't know why was it used in the first place,
maybe for platforms without strnlen(), but strnlen() is already used
inside of ralloc_strndup(), so this change should not additionally
break anything.
---
src/util/ralloc.c | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/src/util/ralloc.c b/src/util/ralloc.c
index df2b1d8..08cb989 100644
--- a/src/util/ralloc.c
+++ b/src/util/ralloc.c
@@ -410,12 +410,7 @@ ralloc_strcat(char **dest, const char *str)
bool
ralloc_strncat(char **dest, const char *str, size_t n)
{
- /* Clamp n to the string length */
- size_t str_length = strlen(str);
- if (str_length < n)
- n = str_length;
-
- return cat(dest, str, n);
+ return cat(dest, str, strnlen(str, n));
}
char *
--
2.7.4
More information about the mesa-dev
mailing list