diff options
author | Ilia Alshanetsky <iliaa@php.net> | 2004-12-21 15:47:14 +0000 |
---|---|---|
committer | Ilia Alshanetsky <iliaa@php.net> | 2004-12-21 15:47:14 +0000 |
commit | 4ab69902dcbdeb7feb98faa687867de3a163ff78 (patch) | |
tree | edad98387966645ee023d5ad7e584a5f22758d49 /ext/imap/php_imap.c | |
parent | ea07d448a55a4235017dc9b819f72314e119e418 (diff) | |
download | php-git-4ab69902dcbdeb7feb98faa687867de3a163ff78.tar.gz |
Fixed possible crash in imap_mail_compose().
Diffstat (limited to 'ext/imap/php_imap.c')
-rw-r--r-- | ext/imap/php_imap.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/ext/imap/php_imap.c b/ext/imap/php_imap.c index 6703e6ba9c..05eabea324 100644 --- a/ext/imap/php_imap.c +++ b/ext/imap/php_imap.c @@ -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); |