From 2b763aa3054b226acc5399b9fb4ed8073b51f302 Mon Sep 17 00:00:00 2001 From: Andrei Zmievski Date: Wed, 1 Feb 2006 23:53:53 +0000 Subject: [PATCH] Check for intern->text before destroying it. --- ext/unicode/unicode_iterators.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 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; } -- 2.40.0