iliaa Fri Jan 17 11:07:39 2003 EDT
Modified files:
/php4/ext/imap php_imap.c
Log:
Fixed memory leaks in imap_get_quota & imap_get_quotaroot.
Removed pointless checks around array_init().
Index: php4/ext/imap/php_imap.c
diff -u php4/ext/imap/php_imap.c:1.150 php4/ext/imap/php_imap.c:1.151
--- php4/ext/imap/php_imap.c:1.150 Sat Jan 4 15:06:32 2003
+++ php4/ext/imap/php_imap.c Fri Jan 17 11:07:39 2003
@@ -26,7 +26,7 @@
| PHP 4.0 updates: Zeev Suraski <[EMAIL PROTECTED]> |
+----------------------------------------------------------------------+
*/
-/* $Id: php_imap.c,v 1.150 2003/01/04 20:06:32 helly Exp $ */
+/* $Id: php_imap.c,v 1.151 2003/01/17 16:07:39 iliaa Exp $ */
#define IMAP41
@@ -343,12 +343,7 @@
/* put parsing code here */
for(; qlist; qlist = qlist->next) {
MAKE_STD_ZVAL(t_map);
- if (array_init(t_map) == FAILURE) {
- php_error(E_WARNING, "Unable to allocate t_map memory");
- FREE_ZVAL(t_map);
- FREE_ZVAL(IMAPG(quota_return));
- return;
- }
+ array_init(t_map);
if (strncmp(qlist->name, "STORAGE", 7) == 0)
{
/* this is to add backwards compatibility */
@@ -859,16 +854,13 @@
convert_to_string_ex(qroot);
MAKE_STD_ZVAL(IMAPG(quota_return));
- if (array_init(IMAPG(quota_return)) == FAILURE) {
- php_error(E_WARNING, "%s(): Unable to allocate array memory",
get_active_function_name(TSRMLS_C));
- FREE_ZVAL(IMAPG(quota_return));
- RETURN_FALSE;
- }
+ array_init(IMAPG(quota_return));
/* set the callback for the GET_QUOTA function */
mail_parameters(NIL, SET_QUOTA, (void *) mail_getquota);
if(!imap_getquota(imap_le_struct->imap_stream, Z_STRVAL_PP(qroot))) {
php_error(E_WARNING, "%s(): c-client imap_getquota failed",
get_active_function_name(TSRMLS_C));
+ FREE_ZVAL(IMAPG(quota_return));
RETURN_FALSE;
}
@@ -893,16 +885,13 @@
convert_to_string_ex(mbox);
MAKE_STD_ZVAL(IMAPG(quota_return));
- if (array_init(IMAPG(quota_return)) == FAILURE) {
- php_error(E_WARNING, "%s(): Unable to allocate array memory",
get_active_function_name(TSRMLS_C));
- FREE_ZVAL(IMAPG(quota_return));
- RETURN_FALSE;
- }
+ array_init(IMAPG(quota_return));
/* set the callback for the GET_QUOTAROOT function */
mail_parameters(NIL, SET_QUOTA, (void *) mail_getquota);
if(!imap_getquotaroot(imap_le_struct->imap_stream, Z_STRVAL_PP(mbox))) {
php_error(E_WARNING, "%s(): c-client imap_getquotaroot failed",
get_active_function_name(TSRMLS_C));
+ FREE_ZVAL(IMAPG(quota_return));
RETURN_FALSE;
}
@@ -1028,9 +1017,7 @@
ZEND_FETCH_RESOURCE(imap_le_struct, pils *, streamind, -1, "imap", le_imap);
/* Initialize return array */
- if (array_init(return_value) == FAILURE) {
- RETURN_FALSE;
- }
+ array_init(return_value);
for (msgno = 1; msgno <= imap_le_struct->imap_stream->nmsgs; msgno++) {
MESSAGECACHE * cache = mail_elt (imap_le_struct->imap_stream, msgno);
@@ -1971,9 +1958,7 @@
rfc822_parse_adrlist(&env->to, Z_STRVAL_PP(str), Z_STRVAL_PP(defaulthost));
- if (array_init(return_value) == FAILURE) {
- RETURN_FALSE;
- }
+ array_init(return_value);
addresstmp = env->to;
@@ -3493,9 +3478,7 @@
convert_to_string_ex(str);
- if (array_init(return_value) == FAILURE) {
- RETURN_FALSE;
- }
+ array_init(return_value);
string = Z_STRVAL_PP(str);
end = Z_STRLEN_PP(str);
@@ -3901,7 +3884,7 @@
long numNodes = 0;
char buf[25];
- if(array_init(*tree) != SUCCESS) return FAILURE;
+ array_init(*tree);
build_thread_tree_helper(top, *tree, &numNodes, buf);
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php