commit 19db2c409fce51c612ce673550b186163c6e72d6 Author: pajoye Date: Mon Jun 22 20:42:04 2009 +0000 - MF53: #48619, imap_search ALL segfaults git-svn-id: http://svn.php.net/repository/php/php-src/branches/PHP_5_2@282598 c90b9560-bf6c-de11-be94-00142212c4b1 diff --git a/ext/imap/php_imap.c b/ext/imap/php_imap.c index ea4e8d5..24111e1 100644 --- a/ext/imap/php_imap.c +++ b/ext/imap/php_imap.c @@ -2670,7 +2670,7 @@ PHP_FUNCTION(imap_sort) slst = mail_sort(imap_le_struct->imap_stream, (myargc == 6 ? Z_STRVAL_PP(charset) : NIL), spg, mypgm, (myargc >= 4 ? Z_LVAL_PP(flags) : NIL)); - if (spg) { + if (spg && !(flags & SE_FREE)) { mail_free_searchpgm(&spg); } @@ -3712,7 +3712,7 @@ PHP_FUNCTION(imap_search) mail_search_full(imap_le_struct->imap_stream, (argc == 4 ? Z_STRVAL_PP(charset) : NIL), pgm, flags); - if (pgm) { + if (pgm && !(flags & SE_FREE)) { mail_free_searchpgm(&pgm); } @@ -4341,7 +4341,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); } commit 069ddaf37eaf2e8f4864b9bbff4cab9174961ffc Author: iliaa Date: Tue Jun 23 12:43:10 2009 +0000 Fixed build git-svn-id: http://svn.php.net/repository/php/php-src/branches/PHP_5_2@282642 c90b9560-bf6c-de11-be94-00142212c4b1 diff --git a/ext/imap/php_imap.c b/ext/imap/php_imap.c index 24111e1..a5b2dc9 100644 --- a/ext/imap/php_imap.c +++ b/ext/imap/php_imap.c @@ -2670,7 +2670,7 @@ PHP_FUNCTION(imap_sort) slst = mail_sort(imap_le_struct->imap_stream, (myargc == 6 ? Z_STRVAL_PP(charset) : NIL), spg, mypgm, (myargc >= 4 ? Z_LVAL_PP(flags) : NIL)); - if (spg && !(flags & SE_FREE)) { + if (spg && myargc >= 4 && !(Z_LVAL_PP(flags) & SE_FREE)) { mail_free_searchpgm(&spg); }