}
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;
if( psz_sdp[1] != '=' )
{
msg_Warn( p_obj, "invalid packet" ) ;
- /* MEMLEAK ! */
+ FreeSDP( p_sdp );
return NULL;
}