tony2001 Thu Jan 20 13:03:35 2005 EDT
Modified files:
/php-src/ext/imap php_imap.c
Log:
fix segfault in imap_sort() - it segfaults when options is less than 0.
it looks like c-client bug, but we still need a workaround.
also, convert_to_string search criteria.
http://cvs.php.net/diff.php/php-src/ext/imap/php_imap.c?r1=1.199&r2=1.200&ty=u
Index: php-src/ext/imap/php_imap.c
diff -u php-src/ext/imap/php_imap.c:1.199 php-src/ext/imap/php_imap.c:1.200
--- php-src/ext/imap/php_imap.c:1.199 Thu Jan 20 09:04:50 2005
+++ php-src/ext/imap/php_imap.c Thu Jan 20 13:03:35 2005
@@ -26,7 +26,7 @@
| PHP 4.0 updates: Zeev Suraski <[EMAIL PROTECTED]> |
+----------------------------------------------------------------------+
*/
-/* $Id: php_imap.c,v 1.199 2005/01/20 14:04:50 tony2001 Exp $ */
+/* $Id: php_imap.c,v 1.200 2005/01/20 18:03:35 tony2001 Exp $ */
#define IMAP41
@@ -1537,7 +1537,7 @@
convert_to_long_ex(subjectlength);
if (Z_LVAL_PP(subjectlength) < 0) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Subject
length has to be greater than or equal to 0");
- RETURN_FALSE;
+ RETURN_FALSE;
}
} else {
subjectlength = 0x00;
@@ -2467,8 +2467,13 @@
}
if (myargc >= 4) {
convert_to_long_ex(flags);
+ if (Z_LVAL_PP(flags) < 0) {
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Search
options parameter has to be greater than or equal to 0cannot be less than 0");
+ RETURN_FALSE;
+ }
}
if (myargc >= 5) {
+ convert_to_string_ex(criteria);
search_criteria = estrndup(Z_STRVAL_PP(criteria),
Z_STRLEN_PP(criteria));
spg = mail_criteria(search_criteria);
efree(search_criteria);
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php