summaryrefslogtreecommitdiff
path: root/ext/xmlwriter/php_xmlwriter.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/xmlwriter/php_xmlwriter.c')
-rw-r--r--ext/xmlwriter/php_xmlwriter.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/ext/xmlwriter/php_xmlwriter.c b/ext/xmlwriter/php_xmlwriter.c
index c91b4d9254..8e566654bd 100644
--- a/ext/xmlwriter/php_xmlwriter.c
+++ b/ext/xmlwriter/php_xmlwriter.c
@@ -615,7 +615,7 @@ static char *_xmlwriter_get_valid_file_path(char *source, char *resolved_path, i
if (uri->scheme != NULL) {
/* absolute file uris - libxml only supports localhost or empty host */
if (strncasecmp(source, "file:///", 8) == 0) {
- if (strlen(source) == 8) {
+ if (source[sizeof("file:///") - 1] == '\0') {
return NULL;
}
isFileUri = 1;
@@ -625,7 +625,7 @@ static char *_xmlwriter_get_valid_file_path(char *source, char *resolved_path, i
source += 7;
#endif
} else if (strncasecmp(source, "file://localhost/",17) == 0) {
- if (strlen(source) == 17) {
+ if (source[sizeof("file://localhost/") - 1] == '\0') {
return NULL;
}
@@ -659,6 +659,8 @@ static char *_xmlwriter_get_valid_file_path(char *source, char *resolved_path, i
}
file_dest = resolved_path;
+ } else {
+ file_dest = source;
}
xmlFreeURI(uri);