summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre Joye <pajoye@php.net>2009-06-22 20:42:04 +0000
committerPierre Joye <pajoye@php.net>2009-06-22 20:42:04 +0000
commitdb4411e768ffbbe916a52827ea4f7adaf6ea0f9e (patch)
tree41fcfe6d24ef06b98909d14fc7546686c410d275
parent34b0f569e1aabfda6f8f1af219b65980b874f7bf (diff)
downloadphp-git-db4411e768ffbbe916a52827ea4f7adaf6ea0f9e.tar.gz
- MF53: #48619, imap_search ALL segfaults
-rw-r--r--ext/imap/php_imap.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/ext/imap/php_imap.c b/ext/imap/php_imap.c
index ea4e8d5761..24111e1399 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);
}