From c313524998377db92e5387d209e1ea79fbc30ba6 Mon Sep 17 00:00:00 2001 From: Vincent Sanders Date: Wed, 29 Jun 2016 23:06:53 +0100 Subject: reduce curl usage to fetcher, url unescaping and time parsing --- utils/file.c | 4 +++- utils/url.c | 4 ++-- utils/url.h | 5 +++-- 3 files changed, 8 insertions(+), 5 deletions(-) (limited to 'utils') diff --git a/utils/file.c b/utils/file.c index 888811004..6224d1c3c 100644 --- a/utils/file.c +++ b/utils/file.c @@ -136,7 +136,9 @@ static nserror posix_nsurl_to_path(struct nsurl *url, char **path_out) return NSERROR_BAD_PARAMETER; } - res = url_unescape(lwc_string_data(urlpath), &path); + res = url_unescape(lwc_string_data(urlpath), + lwc_string_length(urlpath), + &path); lwc_string_unref(urlpath); if (res != NSERROR_OK) { return res; diff --git a/utils/url.c b/utils/url.c index 1e3ef423c..4fcbccd1a 100644 --- a/utils/url.c +++ b/utils/url.c @@ -33,12 +33,12 @@ /* exported interface documented in utils/url.h */ -nserror url_unescape(const char *str, char **result) +nserror url_unescape(const char *str, int length, char **result) { char *curlstr; char *retstr; - curlstr = curl_unescape(str, 0); + curlstr = curl_unescape(str, length); if (curlstr == NULL) { return NSERROR_NOMEM; } diff --git a/utils/url.h b/utils/url.h index aafdf1e15..94579e39e 100644 --- a/utils/url.h +++ b/utils/url.h @@ -46,9 +46,10 @@ nserror url_escape(const char *unescaped, size_t toskip, bool sptoplus, * Convert an escaped string to plain. * * \param[in] str String to unescape. + * \parm[in] length Length of string or 0 to use strlen * \param[out] result unescaped string owned by caller must be freed with free() - * \return NSERROR_OK on success + * \return NSERROR_OK on success */ -nserror url_unescape(const char *str, char **result); +nserror url_unescape(const char *str, int length, char **result); #endif -- cgit v1.2.3