summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStanislav Malyshev <stas@php.net>2000-09-08 13:19:51 +0000
committerStanislav Malyshev <stas@php.net>2000-09-08 13:19:51 +0000
commitd10336ec0e00baed0e5157db45d9eb597065bb47 (patch)
tree6085cf2b604760bb7acc5603ab8a5f2395b09d58
parent522aec44430dd9484f58d2ad749bb3e3aafad59c (diff)
downloadphp-git-d10336ec0e00baed0e5157db45d9eb597065bb47.tar.gz
Don't trust snprintf return
-rw-r--r--Zend/zend.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/Zend/zend.c b/Zend/zend.c
index 3ba958f11a..8e706b2481 100644
--- a/Zend/zend.c
+++ b/Zend/zend.c
@@ -615,6 +615,9 @@ ZEND_API void zend_error(int type, const char *format, ...)
#ifdef HAVE_VSNPRINTF
z_error_message->value.str.len = vsnprintf(z_error_message->value.str.val, ZEND_ERROR_BUFFER_SIZE, format, args);
+ if(z_error_message->value.str.len > ZEND_ERROR_BUFFER_SIZE-1) {
+ z_error_message->value.str.len = ZEND_ERROR_BUFFER_SIZE-1;
+ }
#else
/* This is risky... */
z_error_message->value.str.len = vsprintf(z_error_message->value.str.val, format, args);