summaryrefslogtreecommitdiff
path: root/ext/imap/php_imap.c
diff options
context:
space:
mode:
authorIlia Alshanetsky <iliaa@php.net>2005-04-05 14:47:47 +0000
committerIlia Alshanetsky <iliaa@php.net>2005-04-05 14:47:47 +0000
commitcb8d20760c1854211d485d8a38d82bbef8ca0eb8 (patch)
treefabb2dcdfd19205bc111d98188de37e5975ffad9 /ext/imap/php_imap.c
parent7e7775a3286bc5190757d08b8d735efaebacd08c (diff)
downloadphp-git-cb8d20760c1854211d485d8a38d82bbef8ca0eb8.tar.gz
Fixed bug #32589 (Possible crash inside imap_mail_compose, with charsets).
Diffstat (limited to 'ext/imap/php_imap.c')
-rw-r--r--ext/imap/php_imap.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/ext/imap/php_imap.c b/ext/imap/php_imap.c
index 1257731b24..7e6fa12b5e 100644
--- a/ext/imap/php_imap.c
+++ b/ext/imap/php_imap.c
@@ -3045,7 +3045,8 @@ PHP_FUNCTION(imap_mail_compose)
if (zend_hash_find(Z_ARRVAL_PP(data), "charset", sizeof("charset"), (void **) &pvalue)== SUCCESS) {
convert_to_string_ex(pvalue);
tmp_param = mail_newbody_parameter();
- tmp_param->value = cpystr(Z_STRVAL_PP(pvalue));
+ tmp_param->value = (char *) fs_get(Z_STRLEN_PP(pvalue) + 1);
+ memcpy(disp_param->value, Z_STRVAL_PP(pvalue), Z_STRLEN_PP(pvalue) + 1);
tmp_param->attribute = "CHARSET";
tmp_param->next = bod->parameter;
bod->parameter = tmp_param;