diff options
author | Christoph M. Becker <cmbecker69@gmx.de> | 2020-10-10 19:20:13 +0200 |
---|---|---|
committer | Christoph M. Becker <cmbecker69@gmx.de> | 2020-10-10 19:20:13 +0200 |
commit | e67814f67b8d687107a462f1f7161e785c258328 (patch) | |
tree | 49606efa2327a0568fa3166c341b8811cc7664fa /ext/imap/php_imap.c | |
parent | 49783e35f05a5c2e5d2b33f6cb069eb94fe6dcbc (diff) | |
parent | 7d085c87acb8ee2579cc27e8e51310741cb56c55 (diff) | |
download | php-git-e67814f67b8d687107a462f1f7161e785c258328.tar.gz |
Merge branch 'PHP-8.0' into master
* PHP-8.0:
Fix #80213: imap_mail_compose() segfaults on certain $bodies
Diffstat (limited to 'ext/imap/php_imap.c')
-rw-r--r-- | ext/imap/php_imap.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/ext/imap/php_imap.c b/ext/imap/php_imap.c index e0134a610b..1b84902cce 100644 --- a/ext/imap/php_imap.c +++ b/ext/imap/php_imap.c @@ -3195,6 +3195,7 @@ PHP_FUNCTION(imap_mail_compose) if(Z_TYPE_P(pvalue) == IS_ARRAY) { disp_param = tmp_param = NULL; ZEND_HASH_FOREACH_STR_KEY_VAL(Z_ARRVAL_P(pvalue), key, disp_data) { + if (key == NULL) continue; disp_param = mail_newbody_parameter(); disp_param->attribute = cpystr(ZSTR_VAL(key)); convert_to_string_ex(disp_data); @@ -3227,6 +3228,7 @@ PHP_FUNCTION(imap_mail_compose) if (Z_TYPE_P(pvalue) == IS_ARRAY) { disp_param = tmp_param = NULL; ZEND_HASH_FOREACH_STR_KEY_VAL(Z_ARRVAL_P(pvalue), key, disp_data) { + if (key == NULL) continue; disp_param = mail_newbody_parameter(); disp_param->attribute = cpystr(ZSTR_VAL(key)); convert_to_string_ex(disp_data); @@ -3295,6 +3297,7 @@ PHP_FUNCTION(imap_mail_compose) if (Z_TYPE_P(pvalue) == IS_ARRAY) { disp_param = tmp_param = NULL; ZEND_HASH_FOREACH_STR_KEY_VAL(Z_ARRVAL_P(pvalue), key, disp_data) { + if (key == NULL) continue; disp_param = mail_newbody_parameter(); disp_param->attribute = cpystr(ZSTR_VAL(key)); convert_to_string_ex(disp_data); @@ -3327,6 +3330,7 @@ PHP_FUNCTION(imap_mail_compose) if (Z_TYPE_P(pvalue) == IS_ARRAY) { disp_param = tmp_param = NULL; ZEND_HASH_FOREACH_STR_KEY_VAL(Z_ARRVAL_P(pvalue), key, disp_data) { + if (key == NULL) continue; disp_param = mail_newbody_parameter(); disp_param->attribute = cpystr(ZSTR_VAL(key)); convert_to_string_ex(disp_data); |