From bb9a36cad1b738d42ae935ec2a90b04ef0afa0f2 Mon Sep 17 00:00:00 2001 From: Andi Gutmans Date: Sat, 1 Dec 2001 08:33:48 +0000 Subject: - Use alloca() when possible. --- Zend/zend_API.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'Zend/zend_API.c') diff --git a/Zend/zend_API.c b/Zend/zend_API.c index e013d16a57..a9a10ccb8c 100644 --- a/Zend/zend_API.c +++ b/Zend/zend_API.c @@ -1206,7 +1206,10 @@ ZEND_API zend_class_entry *zend_register_internal_class_ex(zend_class_entry *cla ZEND_API zend_class_entry *zend_register_internal_class(zend_class_entry *class_entry TSRMLS_DC) { zend_class_entry *register_class; - char *lowercase_name = zend_strndup(class_entry->name, class_entry->name_length); + char *lowercase_name; + + lowercase_name = do_alloca(class_entry->name_length+1); + memcpy(lowercase_name, class_entry->name, class_entry->name_length+1); zend_str_tolower(lowercase_name, class_entry->name_length); @@ -1226,7 +1229,7 @@ ZEND_API zend_class_entry *zend_register_internal_class(zend_class_entry *class_ } zend_hash_update(CG(class_table), lowercase_name, class_entry->name_length+1, class_entry, sizeof(zend_class_entry), (void **) ®ister_class); - free(lowercase_name); + free_alloca(lowercase_name); return register_class; } -- cgit v1.2.1