Merge "Fix unnecessary call to __strncpy_chk2"
diff --git a/libc/include/string.h b/libc/include/string.h
index 10ff722..37d22c4 100644
--- a/libc/include/string.h
+++ b/libc/include/string.h
@@ -135,6 +135,10 @@
return __builtin___strncpy_chk(dest, src, n, bos_dest);
}
+ if (__builtin_constant_p(n) && (n <= bos_src)) {
+ return __builtin___strncpy_chk(dest, src, n, bos_dest);
+ }
+
size_t slen = __builtin_strlen(src);
if (__builtin_constant_p(slen)) {
return __builtin___strncpy_chk(dest, src, n, bos_dest);