From: RĂ©mi Denis-Courmont Date: Wed, 8 Jun 2005 16:57:11 +0000 (+0000) Subject: Fix remotely-triggerable memleak X-Git-Tag: 0.8.2~74 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=9c55abfc0aff5630b735bf0a7b491d14082b9e7b;p=vlc Fix remotely-triggerable memleak --- diff --git a/modules/services_discovery/sap.c b/modules/services_discovery/sap.c index 2e51df6a5a..a6717e4639 100644 --- a/modules/services_discovery/sap.c +++ b/modules/services_discovery/sap.c @@ -1078,8 +1078,15 @@ static sdp_t * ParseSDP( vlc_object_t *p_obj, char* psz_sdp ) } p_sdp = (sdp_t *)malloc( sizeof( sdp_t ) ); + if( p_sdp == NULL ) + return NULL; p_sdp->psz_sdp = strdup( psz_sdp ); + if( p_sdp->psz_sdp == NULL ) + { + free( p_sdp ); + return NULL; + } p_sdp->psz_sessionname = NULL; p_sdp->psz_media = NULL; @@ -1125,7 +1132,7 @@ static sdp_t * ParseSDP( vlc_object_t *p_obj, char* psz_sdp ) if( psz_sdp[1] != '=' ) { msg_Warn( p_obj, "invalid packet" ) ; - /* MEMLEAK ! */ + FreeSDP( p_sdp ); return NULL; }