]> granicus.if.org Git - php/commitdiff
Fixed possible crash in imap_mail_compose().
authorIlia Alshanetsky <iliaa@php.net>
Tue, 21 Dec 2004 15:47:14 +0000 (15:47 +0000)
committerIlia Alshanetsky <iliaa@php.net>
Tue, 21 Dec 2004 15:47:14 +0000 (15:47 +0000)
ext/imap/php_imap.c

index 6703e6ba9c906a35cd923c958b82bc82d549dc18..05eabea32450d09e67abfd4ca9d9836e41064d3a 100644 (file)
@@ -2978,6 +2978,10 @@ PHP_FUNCTION(imap_mail_compose)
                        bod->contents.text.data = (char *) fs_get(Z_STRLEN_PP(pvalue) + 1);
                        memcpy(bod->contents.text.data, Z_STRVAL_PP(pvalue), Z_STRLEN_PP(pvalue)+1);
                        bod->contents.text.size = Z_STRLEN_PP(pvalue);
+               } else {
+                       bod->contents.text.data = (char *) fs_get(1);
+                       bod->contents.text.data = "";
+                       bod->contents.text.size = 0;
                }
                if (zend_hash_find(Z_ARRVAL_PP(data), "lines", sizeof("lines"), (void **) &pvalue)== SUCCESS) {
                        convert_to_long_ex(pvalue);
@@ -3081,6 +3085,10 @@ PHP_FUNCTION(imap_mail_compose)
                                bod->contents.text.data = (char *) fs_get(Z_STRLEN_PP(pvalue) + 1);
                                memcpy(bod->contents.text.data, Z_STRVAL_PP(pvalue), Z_STRLEN_PP(pvalue) + 1);
                                bod->contents.text.size = Z_STRLEN_PP(pvalue);
+                       } else {
+                               bod->contents.text.data = (char *) fs_get(1);
+                               bod->contents.text.data = "";
+                               bod->contents.text.size = 0;
                        }
                        if (zend_hash_find(Z_ARRVAL_PP(data), "lines", sizeof("lines"), (void **) &pvalue)== SUCCESS) {
                                convert_to_long_ex(pvalue);