From: Andrei Zmievski Date: Wed, 1 Feb 2006 23:53:53 +0000 (+0000) Subject: Check for intern->text before destroying it. X-Git-Tag: RELEASE_1_2~319 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2b763aa3054b226acc5399b9fb4ed8073b51f302;p=php Check for intern->text before destroying it. --- diff --git a/ext/unicode/unicode_iterators.c b/ext/unicode/unicode_iterators.c index e5de153dd0..e68fdace11 100644 --- a/ext/unicode/unicode_iterators.c +++ b/ext/unicode/unicode_iterators.c @@ -46,7 +46,7 @@ static void text_iterator_free_storage(void *object TSRMLS_DC) zend_hash_destroy(intern->std.properties); FREE_HASHTABLE(intern->std.properties); - zval_ptr_dtor(&intern->text); + if (intern->text) zval_ptr_dtor(&intern->text); efree(object); } @@ -90,6 +90,7 @@ PHP_METHOD(TextIterator, __construct) } if (Z_TYPE_P(text) != IS_UNICODE) { + printf("not unicode\n"); zend_throw_exception(U_CLASS_ENTRY(spl_ce_InvalidArgumentException), "Text iterator expects argument to be a Unicode string", 0 TSRMLS_CC); return; }