Commit 24b586c7 authored by Francois Cartegnie's avatar Francois Cartegnie

demux: playlistmanager: fix leak or double free

Manager took ownership of logic
parent 81913ec5
...@@ -65,6 +65,7 @@ PlaylistManager::~PlaylistManager () ...@@ -65,6 +65,7 @@ PlaylistManager::~PlaylistManager ()
unsetPeriod(); unsetPeriod();
delete playlist; delete playlist;
delete conManager; delete conManager;
delete logic;
} }
void PlaylistManager::unsetPeriod() void PlaylistManager::unsetPeriod()
...@@ -92,17 +93,13 @@ bool PlaylistManager::setupPeriod() ...@@ -92,17 +93,13 @@ bool PlaylistManager::setupPeriod()
{ {
SegmentTracker *tracker = new (std::nothrow) SegmentTracker(logic, set); SegmentTracker *tracker = new (std::nothrow) SegmentTracker(logic, set);
if(!tracker) if(!tracker)
{
delete logic;
continue; continue;
}
AbstractStream *st = streamFactory->create(p_demux, set->getStreamFormat(), AbstractStream *st = streamFactory->create(p_demux, set->getStreamFormat(),
tracker, conManager); tracker, conManager);
if(!st) if(!st)
{ {
delete tracker; delete tracker;
delete logic;
continue; continue;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment