com php-src: Avoid reallocation: ext/tidy/tidy.c
| From: | Dmitry Stogov | Date: | Mon, 06 Apr 2015 23:35:21 +0000 |
| Subject: | com php-src: Avoid reallocation: ext/tidy/tidy.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-86113@lists.php.net to get a copy of this message | ||
Commit: 5bd71e97136e433190c4e9ba45ec25451140fc84
Author: Dmitry Stogov <dmitry@zend.com> Tue, 7 Apr 2015 02:35:21 +0300
Parents: f53e20e59532ec8c3a502f730c502274120bea3e
Branches: master
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=5bd71e97136e433190c4e9ba45ec25451140fc84
Log:
Avoid reallocation
Changed paths:
M ext/tidy/tidy.c
Diff:
diff --git a/ext/tidy/tidy.c b/ext/tidy/tidy.c
index f6b987d..5df732f 100644
--- a/ext/tidy/tidy.c
+++ b/ext/tidy/tidy.c
@@ -926,9 +926,9 @@ static void *php_tidy_get_opt_val(PHPTidyDoc *ptdoc, TidyOption opt, TidyOptionT
case TidyString: {
char *val = (char *) tidyOptGetValue(ptdoc->doc, tidyOptGetId(opt));
if (val) {
- return (void *) estrdup(val);
+ return (void *) zend_string_init(val, strlen(val), 0);
} else {
- return (void *) estrdup("");
+ return (void *) STR_EMPTY_ALLOC();
}
}
break;
@@ -1396,9 +1396,7 @@ static PHP_FUNCTION(tidy_get_config)
opt_value = php_tidy_get_opt_val(obj->ptdoc, opt, &optt);
switch (optt) {
case TidyString:
- // TODO: avoid reallocation ???
- add_assoc_string(return_value, opt_name, (char*)opt_value);
- efree(opt_value);
+ add_assoc_str(return_value, opt_name, (zend_string*)opt_value);
break;
case TidyInteger:
@@ -1530,8 +1528,7 @@ static PHP_FUNCTION(tidy_getopt)
optval = php_tidy_get_opt_val(obj->ptdoc, opt, &optt);
switch (optt) {
case TidyString:
- RETVAL_STRING((char *)optval);
- efree(optval);
+ RETVAL_STR((zend_string*)optval);
return;
case TidyInteger: