From: Stefan Becker Date: Tue, 9 Jul 2013 07:00:58 +0000 (+0300) Subject: http: don't crash on URI parse failure X-Git-Tag: 1.16.1~6 X-Git-Url: https://repo.or.cz/w/siplcs.git/commitdiff_plain/cbb8693940b25c34d47157a5bdf3126a2744db8b http: don't crash on URI parse failure sipe_http_parsed_uri_free can now be called with NULL pointer. (cherry picked from commit 8d225558c3c2d60c6706a03dcd03b851da8e85ef) --- diff --git a/src/core/sipe-http-request.h b/src/core/sipe-http-request.h index 493c078d..9af42d70 100644 --- a/src/core/sipe-http-request.h +++ b/src/core/sipe-http-request.h @@ -56,7 +56,7 @@ struct sipe_http_parsed_uri *sipe_http_parse_uri(const gchar *uri); /** * Free parsed URI data structure * - * @param pointer to parsed URI. + * @param pointer to parsed URI (may be @c NULL) */ void sipe_http_parsed_uri_free(struct sipe_http_parsed_uri *parsed_uri); diff --git a/src/core/sipe-http.c b/src/core/sipe-http.c index 0482095f..16913db6 100644 --- a/src/core/sipe-http.c +++ b/src/core/sipe-http.c @@ -38,9 +38,11 @@ void sipe_http_parsed_uri_free(struct sipe_http_parsed_uri *parsed_uri) { - g_free(parsed_uri->host); - g_free(parsed_uri->path); - g_free(parsed_uri); + if (parsed_uri) { + g_free(parsed_uri->host); + g_free(parsed_uri->path); + g_free(parsed_uri); + } } struct sipe_http_parsed_uri *sipe_http_parse_uri(const gchar *uri)