diff options
author | bertrand <bertrand@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-10-19 23:28:51 +0000 |
---|---|---|
committer | bertrand <bertrand@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-10-19 23:28:51 +0000 |
commit | b6d2718ec552ea4c44cb2de069134d6690fc742e (patch) | |
tree | d83d299b2cd075d6ff523c7c99e7f353198749fc /libmpdemux | |
parent | 53ce4a80c4770225e96acfa2c1cd87d904b73227 (diff) | |
download | mpv-b6d2718ec552ea4c44cb2de069134d6690fc742e.tar.bz2 mpv-b6d2718ec552ea4c44cb2de069134d6690fc742e.tar.xz |
Fixed more potential mem leaks and use the url_free method
to free all the member pointers of the url.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@7810 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux')
-rw-r--r-- | libmpdemux/url.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/libmpdemux/url.c b/libmpdemux/url.c index abd7b3cf94..f139252341 100644 --- a/libmpdemux/url.c +++ b/libmpdemux/url.c @@ -33,7 +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); + url_free(Curl); return NULL; } @@ -41,7 +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); + url_free(Curl); return NULL; } pos1 = ptr1-url; @@ -49,7 +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); + url_free(Curl); return NULL; } Curl->protocol[pos1] = '\0'; @@ -71,6 +71,7 @@ url_new(char* url) { Curl->username = (char*)malloc(len+1); if( Curl->username==NULL ) { mp_msg(MSGT_NETWORK,MSGL_FATAL,"Memory allocation failed!\n"); + url_free(Curl); return NULL; } strncpy(Curl->username, ptr1, len); @@ -84,6 +85,7 @@ url_new(char* url) { Curl->password = (char*)malloc(len2+1); if( Curl->password==NULL ) { mp_msg(MSGT_NETWORK,MSGL_FATAL,"Memory allocation failed!\n"); + url_free(Curl); return NULL; } strncpy( Curl->password, ptr3+1, len2); @@ -120,6 +122,7 @@ url_new(char* url) { Curl->hostname = (char*)malloc(pos2-pos1+1); if( Curl->hostname==NULL ) { mp_msg(MSGT_NETWORK,MSGL_FATAL,"Memory allocation failed!\n"); + url_free(Curl); return NULL; } strncpy(Curl->hostname, ptr1, pos2-pos1); @@ -135,6 +138,7 @@ url_new(char* url) { Curl->file = strdup(ptr2); if( Curl->file==NULL ) { mp_msg(MSGT_NETWORK,MSGL_FATAL,"Memory allocation failed!\n"); + url_free(Curl); return NULL; } } @@ -144,6 +148,7 @@ url_new(char* url) { Curl->file = (char*)malloc(2); if( Curl->file==NULL ) { mp_msg(MSGT_NETWORK,MSGL_FATAL,"Memory allocation failed!\n"); + url_free(Curl); return NULL; } strcpy(Curl->file, "/"); |