summaryrefslogtreecommitdiff
path: root/ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp
diff options
context:
space:
mode:
authorGustavo Lopes <glopes@safelinq.com>2012-07-23 16:51:28 +0200
committerGustavo Lopes <glopes@safelinq.com>2012-07-23 16:51:28 +0200
commit01004c6abb53ee235f7d76295c48c3082c998a5b (patch)
treee44a5769c23d338347603453e8eca601438e6c44 /ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp
parentd8d5f9a9f50a98e3a44218f8672a6516a9e8dfe7 (diff)
downloadphp-git-01004c6abb53ee235f7d76295c48c3082c998a5b.tar.gz
Fixed leak in RuleBasedBreakIterator constructor
The leak occurred in case of error.
Diffstat (limited to 'ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp')
-rw-r--r--ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp b/ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp
index 61fb574682..454e5249fd 100644
--- a/ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp
+++ b/ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp
@@ -70,6 +70,7 @@ static void _php_intlrbbi_constructor_body(INTERNAL_FUNCTION_PARAMETERS)
smart_str_free(&parse_error_str);
intl_error_set_custom_msg(NULL, msg, 1 TSRMLS_CC);
efree(msg);
+ delete rbbi;
RETURN_NULL();
}
} else { // compiled
@@ -78,6 +79,7 @@ static void _php_intlrbbi_constructor_body(INTERNAL_FUNCTION_PARAMETERS)
if (U_FAILURE(status)) {
intl_error_set(NULL, status, "rbbi_create_instance: unable to "
"create instance from compiled rules", 0 TSRMLS_CC);
+ delete rbbi;
RETURN_NULL();
}
#else