diff options
author | Darren Salt <linux@youmustbejoking.demon.co.uk> | 2012-02-09 00:23:08 +0000 |
---|---|---|
committer | Darren Salt <linux@youmustbejoking.demon.co.uk> | 2012-02-09 00:23:08 +0000 |
commit | a09365d3eb2fd4e9dfa868659ab0614ab44ca290 (patch) | |
tree | c42cf66ae11cbfba515d899e3ac86849fba45691 | |
parent | 7baa16f251a9f21f838348be77a8a369c6cb366c (diff) | |
download | xine-lib-a09365d3eb2fd4e9dfa868659ab0614ab44ca290.tar.gz xine-lib-a09365d3eb2fd4e9dfa868659ab0614ab44ca290.tar.bz2 |
Kill a memory leak in the DVB tuning code.
-rw-r--r-- | src/input/input_dvb.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/input/input_dvb.c b/src/input/input_dvb.c index f7fa51e16..6eac34ff8 100644 --- a/src/input/input_dvb.c +++ b/src/input/input_dvb.c @@ -1263,8 +1263,7 @@ static void dvb_parse_si(dvb_input_plugin_t *this) { xprintf(this->stream->xine,XINE_VERBOSITY_LOG,"input_dvb: Error setting up Internal PAT filter - reverting to rc6 hehaviour\n"); dvb_set_pidfilter (this,VIDFILTER,this->channels[this->channel].pid[VIDFILTER], DMX_PES_OTHER, DMX_OUT_TS_TAP); dvb_set_pidfilter (this,AUDFILTER,this->channels[this->channel].pid[AUDFILTER], DMX_PES_OTHER, DMX_OUT_TS_TAP); - free(tmpbuffer); - return; + goto done; } result = read (tuner->fd_pidfilter[INTERNAL_FILTER], tmpbuffer, 3); @@ -1308,7 +1307,7 @@ static void dvb_parse_si(dvb_input_plugin_t *this) { xprintf(this->stream->xine,XINE_VERBOSITY_LOG,"input_dvb: WARNING **** Reverting to rc6 hehaviour. Please regenerate your channels.conf in ?zap format ****\n"); dvb_set_pidfilter (this,VIDFILTER,this->channels[this->channel].pid[VIDFILTER], DMX_PES_OTHER, DMX_OUT_TS_TAP); dvb_set_pidfilter (this,AUDFILTER,this->channels[this->channel].pid[AUDFILTER], DMX_PES_OTHER, DMX_OUT_TS_TAP); - return; + goto done; } result = read(tuner->fd_pidfilter[INTERNAL_FILTER],tmpbuffer,3); @@ -1336,6 +1335,7 @@ static void dvb_parse_si(dvb_input_plugin_t *this) { xprintf(this->stream->xine,XINE_VERBOSITY_DEBUG,"input_dvb: Setup of PID filters complete\n"); +done: free(tmpbuffer); } |