diff options
-rw-r--r-- | NEWS | 1 | ||||
-rw-r--r-- | ext/posix/posix.c | 21 |
2 files changed, 14 insertions, 8 deletions
@@ -2,6 +2,7 @@ PHP 4.0 NEWS ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 05 Oct 2000, Version 4.0.3 +- Fixed crash in the POSIX getrlimit() function (alex@zend.com) - Fixed dirname() under certain conditions (Andi) - Add --with-imap-ssl to support SSL'ized imap library in RH7 and others (Rasmus) diff --git a/ext/posix/posix.c b/ext/posix/posix.c index 7cb17cf8db..0eba167dab 100644 --- a/ext/posix/posix.c +++ b/ext/posix/posix.c @@ -833,6 +833,9 @@ PHP_FUNCTION(posix_getpwuid) #ifdef HAVE_GETRLIMIT + +#define UNLIMITED_STRING "unlimited" + static int posix_addlimit(int limit, char *name, pval *return_value) { int result; struct rlimit rl; @@ -848,15 +851,17 @@ static int posix_addlimit(int limit, char *name, pval *return_value) { return FAILURE; } - if (rl.rlim_cur == RLIM_INFINITY) - add_assoc_string(return_value,soft,"unlimited", 1); - else - add_assoc_long(return_value,soft,rl.rlim_cur); + if (rl.rlim_cur == RLIM_INFINITY) { + add_assoc_stringl(return_value, soft, UNLIMITED_STRING, sizeof(UNLIMITED_STRING)-1, 1); + } else { + add_assoc_long(return_value, soft, rl.rlim_cur); + } - if (rl.rlim_max == RLIM_INFINITY) - add_assoc_string(return_value,hard,"unlimited", 1); - else - add_assoc_long(return_value,hard,rl.rlim_max); + if (rl.rlim_max == RLIM_INFINITY) { + add_assoc_stringl(return_value, hard, UNLIMITED_STRING, sizeof(UNLIMITED_STRING)-1, 1); + } else { + add_assoc_long(return_value, hard, rl.rlim_max); + } return SUCCESS; } |