From 1b4bca605cc6a0b3ddda9b5230120bdec769ac89 Mon Sep 17 00:00:00 2001 From: Niels Dossche <7771979+nielsdos@users.noreply.github.com> Date: Mon, 21 Apr 2025 14:51:46 +0200 Subject: [PATCH] Add assertion as optimization hint in php_url_encode_impl() This avoids the code bloat induced by zend_string_truncate(). --- ext/standard/url.c | 1 + 1 file changed, 1 insertion(+) diff --git a/ext/standard/url.c b/ext/standard/url.c index 7d564b510bc..817f7315863 100644 --- a/ext/standard/url.c +++ b/ext/standard/url.c @@ -536,6 +536,7 @@ static zend_always_inline zend_string *php_url_encode_impl(const char *s, size_t } *to = '\0'; + ZEND_ASSERT(!ZSTR_IS_INTERNED(start) && GC_REFCOUNT(start) == 1); start = zend_string_truncate(start, to - (unsigned char*)ZSTR_VAL(start), 0); return start;