summaryrefslogtreecommitdiff
path: root/ext/curl/interface.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/curl/interface.c')
-rw-r--r--ext/curl/interface.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/ext/curl/interface.c b/ext/curl/interface.c
index 9bb17beb12..2698a81243 100644
--- a/ext/curl/interface.c
+++ b/ext/curl/interface.c
@@ -500,8 +500,12 @@ static size_t curl_read(char *data, size_t size, size_t nmemb, void *ctx)
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Cannot call the CURLOPT_READFUNCTION");
length = -1;
} else {
- memcpy(data, Z_STRVAL_P(retval_ptr), size * nmemb);
- length = Z_STRLEN_P(retval_ptr);
+ if(Z_STRVAL_P(retval_ptr)) {
+ memcpy(data, Z_STRVAL_P(retval_ptr), size * nmemb);
+ length = Z_STRLEN_P(retval_ptr);
+ } else {
+ data = strdup("");
+ }
}
zval_ptr_dtor(argv[0]);