mirror of
https://github.com/tuxbox-fork-migrations/recycled-ni-libstb-hal.git
synced 2025-08-27 07:22:44 +02:00
gstreamer playback: fix possible segfaults
Origin commit data
------------------
Branch: master
Commit: a811b733d4
Author: TangoCash <eric@loxat.de>
Date: 2017-11-07 (Tue, 07 Nov 2017)
------------------
No further description and justification available within origin commit message!
------------------
This commit was generated by Migit
This commit is contained in:
committed by
Jacek Jendrzej
parent
d7f96461bf
commit
7c9305164b
@@ -290,6 +290,7 @@ GstBusSyncReply Gst_bus_call(GstBus *bus, GstMessage *msg, gpointer user_data)
|
||||
lt_info_c("%s:%s - /tmp/.id3coverart %d bytes written\n", FILENAME, __FUNCTION__, ret);
|
||||
}
|
||||
}
|
||||
if (tags)
|
||||
gst_tag_list_unref(tags);
|
||||
lt_debug_c( "%s:%s - GST_MESSAGE_INFO: update info tags\n", FILENAME, __FUNCTION__); //FIXME: how shall playback handle this event???
|
||||
break;
|
||||
@@ -461,6 +462,7 @@ void cPlayback::Close(void)
|
||||
// disconnect sync handler callback
|
||||
GstBus * bus = gst_pipeline_get_bus(GST_PIPELINE (m_gst_playbin));
|
||||
gst_bus_set_sync_handler(bus, NULL, NULL, NULL);
|
||||
if (bus)
|
||||
gst_object_unref(bus);
|
||||
lt_info( "%s:%s - GST bus handler closed\n", FILENAME, __FUNCTION__);
|
||||
}
|
||||
@@ -520,6 +522,7 @@ bool cPlayback::Start(char *filename, int /*vpid*/, int /*vtype*/, int /*apid*/,
|
||||
mAudioStream = 0;
|
||||
init_jump = -1;
|
||||
|
||||
if (m_stream_tags)
|
||||
gst_tag_list_unref(m_stream_tags);
|
||||
m_stream_tags = NULL;
|
||||
|
||||
@@ -594,6 +597,7 @@ bool cPlayback::Start(char *filename, int /*vpid*/, int /*vtype*/, int /*apid*/,
|
||||
//gstbus handler
|
||||
GstBus * bus = gst_pipeline_get_bus( GST_PIPELINE(m_gst_playbin) );
|
||||
gst_bus_set_sync_handler(bus, Gst_bus_call, NULL, NULL);
|
||||
if (bus)
|
||||
gst_object_unref(bus);
|
||||
|
||||
first = true;
|
||||
@@ -896,6 +900,7 @@ void cPlayback::FindAllPids(int *apids, unsigned int *ac3flags, unsigned int *nu
|
||||
g_signal_emit_by_name (m_gst_playbin, "get-audio-pad", i, &pad);
|
||||
|
||||
GstCaps * caps = gst_pad_get_current_caps(pad);
|
||||
if (pad)
|
||||
gst_object_unref(pad);
|
||||
|
||||
if (!caps)
|
||||
@@ -938,6 +943,7 @@ void cPlayback::FindAllPids(int *apids, unsigned int *ac3flags, unsigned int *nu
|
||||
//return atPCM;
|
||||
ac3flags[i] = 0;
|
||||
|
||||
if (caps)
|
||||
gst_caps_unref(caps);
|
||||
|
||||
//(ac3flags[i] > 2) ? ac3flags[i] = 1 : ac3flags[i] = 0;
|
||||
|
Reference in New Issue
Block a user