From: Pierre Joye Date: Mon, 22 Jun 2009 20:35:46 +0000 (+0000) Subject: - MF53: #48619, imap_search ALL segfaults X-Git-Tag: php-5.4.0alpha1~191^2~3267 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=aa382805f63895e917c4bb95e216960d5ff902a7;p=php - MF53: #48619, imap_search ALL segfaults --- diff --git a/ext/imap/php_imap.c b/ext/imap/php_imap.c index c499c1da07..f8b2d4b9a6 100644 --- a/ext/imap/php_imap.c +++ b/ext/imap/php_imap.c @@ -3028,7 +3028,7 @@ PHP_FUNCTION(imap_sort) slst = mail_sort(imap_le_struct->imap_stream, (argc == 6 ? charset : NIL), spg, mypgm, (argc >= 4 ? flags : NIL)); - if (spg) { + if (spg && !(flags & SE_FREE)) { mail_free_searchpgm(&spg); } @@ -4004,7 +4004,7 @@ PHP_FUNCTION(imap_search) mail_search_full(imap_le_struct->imap_stream, (argc == 4 ? charset : NIL), pgm, flags); - if (pgm) { + if (pgm && !(flags & SE_FREE)) { mail_free_searchpgm(&pgm); } @@ -4620,7 +4620,7 @@ PHP_FUNCTION(imap_thread) pgm = mail_criteria(criteria); top = mail_thread(imap_le_struct->imap_stream, "REFERENCES", NIL, pgm, flags); - if (pgm) { + if (pgm && !(flags & SE_FREE)) { mail_free_searchpgm(&pgm); }