From 99304ab063d3f8c80d693c9d39e5e5197ab45576 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20A=C3=9Fmus?= Date: Wed, 5 Aug 2009 10:07:43 +0000 Subject: [PATCH] Do not use fWriter functions, when it has not been instantiated properly. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32122 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/kits/media/MediaWriter.cpp | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/kits/media/MediaWriter.cpp b/src/kits/media/MediaWriter.cpp index 2c3b580ed3..2a9318b5c9 100644 --- a/src/kits/media/MediaWriter.cpp +++ b/src/kits/media/MediaWriter.cpp @@ -61,13 +61,15 @@ MediaWriter::~MediaWriter() { CALLED(); - // free all stream cookies - // and chunk caches - StreamInfo* info; - for (fStreamInfos.Rewind(); fStreamInfos.GetNext(&info);) - fWriter->FreeCookie(info->cookie); + if (fWriter != NULL) { + // free all stream cookies + // and chunk caches + StreamInfo* info; + for (fStreamInfos.Rewind(); fStreamInfos.GetNext(&info);) + fWriter->FreeCookie(info->cookie); - _plugin_manager.DestroyWriter(fWriter); + _plugin_manager.DestroyWriter(fWriter); + } // fTarget is owned by the BMediaFile } @@ -99,6 +101,9 @@ MediaWriter::CreateEncoder(Encoder** _encoder, { CALLED(); + if (fWriter == NULL) + return B_NO_INIT; + // TODO: Here we should work out a way so that if there is a setup // failure we can try the next encoder. Encoder* encoder;