summaryrefslogtreecommitdiffstats
path: root/lib/file.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/file.c')
-rw-r--r--lib/file.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/lib/file.c b/lib/file.c
index b534ec1..272289e 100644
--- a/lib/file.c
+++ b/lib/file.c
@@ -190,14 +190,15 @@ static CURLcode file_connect(struct connectdata *conn, bool *done)
struct FILEPROTO *file = data->req.protop;
int fd;
#ifdef DOS_FILESYSTEM
- int i;
+ size_t i;
char *actual_path;
#endif
- int real_path_len;
+ size_t real_path_len;
- real_path = curl_easy_unescape(data, data->state.path, 0, &real_path_len);
- if(!real_path)
- return CURLE_OUT_OF_MEMORY;
+ CURLcode result = Curl_urldecode(data, data->state.path, 0, &real_path,
+ &real_path_len, FALSE);
+ if(result)
+ return result;
#ifdef DOS_FILESYSTEM
/* If the first character is a slash, and there's