iliaa Wed Jan 14 19:35:05 2004 EDT
Modified files:
/php-src/ext/imap php_imap.c
Log:
Fixed bug #26909 (crash in imap_mime_header_decode() when no encoding is
used).
Index: php-src/ext/imap/php_imap.c
diff -u php-src/ext/imap/php_imap.c:1.181 php-src/ext/imap/php_imap.c:1.182
--- php-src/ext/imap/php_imap.c:1.181 Wed Jan 14 03:50:02 2004
+++ php-src/ext/imap/php_imap.c Wed Jan 14 19:35:04 2004
@@ -26,7 +26,7 @@
| PHP 4.0 updates: Zeev Suraski <[EMAIL PROTECTED]> |
+----------------------------------------------------------------------+
*/
-/* $Id: php_imap.c,v 1.181 2004/01/14 08:50:02 andi Exp $ */
+/* $Id: php_imap.c,v 1.182 2004/01/15 00:35:04 iliaa Exp $ */
#define IMAP41
@@ -3607,8 +3607,12 @@
add_property_string(myobject, "charset",
charset, 1);
add_property_string(myobject, "text", decode,
1);
zend_hash_next_index_insert(Z_ARRVAL_P(return_value), (void *)&myobject, sizeof(zval
*), NULL);
- fs_give((void**)&decode);
-
+
+ /* only free decode if it was allocated by
rfc822_qprint or rfc822_base64 */
+ if (decode != text) {
+ fs_give((void**)&decode);
+ }
+
offset = end_token+2;
for (i = 0; (string[offset + i] == ' ') ||
(string[offset + i] == 0x0a) || (string[offset + i] == 0x0d); i++);
if ((string[offset + i] == '=') &&
(string[offset + i + 1] == '?') && (offset + i < end)) {
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php