summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnatol Belski <ab@php.net>2016-08-29 19:33:22 +0200
committerAnatol Belski <ab@php.net>2016-08-29 19:33:22 +0200
commit3437dbfa0097d3c5be69d4efb26a2ecb3edf5168 (patch)
treed5473184d2f040bb4dc604207bc445dacf956ddf
parent1d9308693756342578c13339a078d79f6f37d7c0 (diff)
parent1a840b9af0117f6ac4c2030dc0f8c562a0f453ba (diff)
downloadphp-git-3437dbfa0097d3c5be69d4efb26a2ecb3edf5168.tar.gz
Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6: fix double free
-rw-r--r--ext/intl/msgformat/msgformat_format.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/ext/intl/msgformat/msgformat_format.c b/ext/intl/msgformat/msgformat_format.c
index 959a4fd5a0..73fb5eeff6 100644
--- a/ext/intl/msgformat/msgformat_format.c
+++ b/ext/intl/msgformat/msgformat_format.c
@@ -50,11 +50,10 @@ static void msgfmt_do_format(MessageFormatter_object *mfo, zval *args, zval *ret
zend_hash_destroy(args_copy);
efree(args_copy);
- if (formatted && U_FAILURE(INTL_DATA_ERROR_CODE(mfo))) {
- efree(formatted);
- }
-
if (U_FAILURE(INTL_DATA_ERROR_CODE(mfo))) {
+ if (formatted) {
+ efree(formatted);
+ }
RETURN_FALSE;
} else {
INTL_METHOD_RETVAL_UTF8(mfo, formatted, formatted_len, 1);