summaryrefslogtreecommitdiff
path: root/Zend/zend_string.h
diff options
context:
space:
mode:
Diffstat (limited to 'Zend/zend_string.h')
-rw-r--r--Zend/zend_string.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/Zend/zend_string.h b/Zend/zend_string.h
index fe2a7475c4..d517b74020 100644
--- a/Zend/zend_string.h
+++ b/Zend/zend_string.h
@@ -264,6 +264,14 @@ static zend_always_inline void zend_string_free(zend_string *s)
}
}
+static zend_always_inline void zend_string_efree(zend_string *s)
+{
+ ZEND_ASSERT(!ZSTR_IS_INTERNED(s));
+ ZEND_ASSERT(GC_REFCOUNT(s) <= 1);
+ ZEND_ASSERT(!(GC_FLAGS(s) & IS_STR_PERSISTENT));
+ efree(s);
+}
+
static zend_always_inline void zend_string_release(zend_string *s)
{
if (!ZSTR_IS_INTERNED(s)) {