vlc | branch: master | Rémi Denis-Courmont <[email protected]> | Fri Apr 10 13:11:59 2020 +0300| [613e307b37abf430c9e6211a80000d1f056700c8] | committer: Rémi Denis-Courmont
sap: factor the well-known PT check It was called right after ParseConnection() in both cases. Move it inside ParseConnection(). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=613e307b37abf430c9e6211a80000d1f056700c8 --- modules/services_discovery/sap.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/modules/services_discovery/sap.c b/modules/services_discovery/sap.c index 232b0d448b..c028fd6753 100644 --- a/modules/services_discovery/sap.c +++ b/modules/services_discovery/sap.c @@ -368,10 +368,8 @@ static int OpenDemux( vlc_object_t *p_this ) if( ParseConnection( VLC_OBJECT( p_demux ), p_sdp ) ) { p_sdp->psz_uri = NULL; - } - if (!IsWellKnownPayload (p_sdp->i_media_type)) goto error; - if( p_sdp->psz_uri == NULL ) goto error; + } demux_sys_t *p_sys = malloc( sizeof(*p_sys) ); if( unlikely(p_sys == NULL) ) @@ -749,7 +747,7 @@ static int ParseSAP( services_discovery_t *p_sd, const uint8_t *buf, p_sdp->psz_uri = NULL; /* Multi-media or no-parse -> pass to LIVE.COM */ - if( !IsWellKnownPayload( p_sdp->i_media_type ) || !p_sys->b_parse ) + if( !p_sys->b_parse ) { free( p_sdp->psz_uri ); if (asprintf( &p_sdp->psz_uri, "sdp://%s", p_sdp->psz_sdp ) == -1) @@ -1083,6 +1081,12 @@ static int ParseConnection( vlc_object_t *p_obj, sdp_t *p_sdp ) return VLC_ENOMEM; } + if (!IsWellKnownPayload(p_sdp->i_media_type)) + { + free(p_sdp->psz_uri); + return VLC_EGENERIC; + } + return VLC_SUCCESS; } _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
