summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKalle Sommer Nielsen <kalle@php.net>2016-11-20 19:36:36 +0100
committerKalle Sommer Nielsen <kalle@php.net>2016-11-20 19:36:36 +0100
commit06767ffcbe097151b07a26d8d4beb4a102ac853a (patch)
tree60bc90086bf835b207537e95f9a144f0e6ad5922
parentd7deaac362e86d2a5f1da8677d4dab4ae35abefc (diff)
downloadphp-git-06767ffcbe097151b07a26d8d4beb4a102ac853a.tar.gz
Shave off a strlen() call in ftp_mkdir()
-rw-r--r--ext/ftp/ftp.c4
-rw-r--r--ext/ftp/ftp.h2
-rw-r--r--ext/ftp/php_ftp.c2
3 files changed, 4 insertions, 4 deletions
diff --git a/ext/ftp/ftp.c b/ext/ftp/ftp.c
index dfefdd462d..0e0bfd6ead 100644
--- a/ext/ftp/ftp.c
+++ b/ext/ftp/ftp.c
@@ -560,7 +560,7 @@ ftp_cdup(ftpbuf_t *ftp)
/* {{{ ftp_mkdir
*/
zend_string*
-ftp_mkdir(ftpbuf_t *ftp, const char *dir)
+ftp_mkdir(ftpbuf_t *ftp, const char *dir, const size_t dir_len)
{
char *mkd, *end;
zend_string *ret;
@@ -576,7 +576,7 @@ ftp_mkdir(ftpbuf_t *ftp, const char *dir)
}
/* copy out the dir from response */
if ((mkd = strchr(ftp->inbuf, '"')) == NULL) {
- return zend_string_init(dir, strlen(dir), 0);
+ return zend_string_init(dir, dir_len, 0);
}
if ((end = strrchr(++mkd, '"')) == NULL) {
return NULL;
diff --git a/ext/ftp/ftp.h b/ext/ftp/ftp.h
index 881890e134..d355242a2a 100644
--- a/ext/ftp/ftp.h
+++ b/ext/ftp/ftp.h
@@ -135,7 +135,7 @@ int ftp_cdup(ftpbuf_t *ftp);
/* creates a directory, return the directory name on success, NULL on error.
* the return value must be freed
*/
-zend_string* ftp_mkdir(ftpbuf_t *ftp, const char *dir);
+zend_string* ftp_mkdir(ftpbuf_t *ftp, const char *dir, const size_t dir_len);
/* removes a directory, return true on success, false on error */
int ftp_rmdir(ftpbuf_t *ftp, const char *dir);
diff --git a/ext/ftp/php_ftp.c b/ext/ftp/php_ftp.c
index f9d397ffa3..6686690e3f 100644
--- a/ext/ftp/php_ftp.c
+++ b/ext/ftp/php_ftp.c
@@ -593,7 +593,7 @@ PHP_FUNCTION(ftp_mkdir)
}
/* create directorie */
- if (NULL == (tmp = ftp_mkdir(ftp, dir))) {
+ if (NULL == (tmp = ftp_mkdir(ftp, dir, dir_len))) {
php_error_docref(NULL, E_WARNING, "%s", ftp->inbuf);
RETURN_FALSE;
}