summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libmpdemux/url.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libmpdemux/url.c b/libmpdemux/url.c
index 5df6a0a9d9..abd7b3cf94 100644
--- a/libmpdemux/url.c
+++ b/libmpdemux/url.c
@@ -33,6 +33,7 @@ url_new(char* url) {
Curl->url = strdup(url);
if( Curl->url==NULL ) {
mp_msg(MSGT_NETWORK,MSGL_FATAL,"Memory allocation failed!\n");
+ free(Curl);
return NULL;
}
@@ -40,6 +41,7 @@ url_new(char* url) {
ptr1 = strstr(url, "://");
if( ptr1==NULL ) {
mp_msg(MSGT_NETWORK,MSGL_V,"Not an URL!\n");
+ free(Curl->url);free(Curl);
return NULL;
}
pos1 = ptr1-url;
@@ -47,6 +49,7 @@ url_new(char* url) {
strncpy(Curl->protocol, url, pos1);
if( Curl->protocol==NULL ) {
mp_msg(MSGT_NETWORK,MSGL_FATAL,"Memory allocation failed!\n");
+ free(Curl->protocol);free(Curl->url);free(Curl);
return NULL;
}
Curl->protocol[pos1] = '\0';