[Scummvm-cvs-logs] SF.net SVN: scummvm:[47841] scummvm/trunk/sound/decoders

lordhoto at users.sourceforge.net lordhoto at users.sourceforge.net
Wed Feb 3 09:58:54 CET 2010


Revision: 47841
          http://scummvm.svn.sourceforge.net/scummvm/?rev=47841&view=rev
Author:   lordhoto
Date:     2010-02-03 08:58:52 +0000 (Wed, 03 Feb 2010)

Log Message:
-----------
- Return 0 in makeVorbisStream and makeFlacStream, in case creating the stream failed.
- Add a TODO in the MP3 code for the same behavior.

Modified Paths:
--------------
    scummvm/trunk/sound/decoders/flac.cpp
    scummvm/trunk/sound/decoders/mp3.cpp
    scummvm/trunk/sound/decoders/vorbis.cpp

Modified: scummvm/trunk/sound/decoders/flac.cpp
===================================================================
--- scummvm/trunk/sound/decoders/flac.cpp	2010-02-03 03:26:28 UTC (rev 47840)
+++ scummvm/trunk/sound/decoders/flac.cpp	2010-02-03 08:58:52 UTC (rev 47841)
@@ -729,7 +729,13 @@
 SeekableAudioStream *makeFlacStream(
 	Common::SeekableReadStream *stream,
 	DisposeAfterUse::Flag disposeAfterUse) {
-	return new FlacInputStream(stream, disposeAfterUse);
+	SeekableAudioStream *s = new FlacInputStream(stream, disposeAfterUse);
+	if (s && s->endOfData()) {
+		delete s;
+		return 0;
+	} else {
+		return s;
+	}
 }
 
 } // End of namespace Audio

Modified: scummvm/trunk/sound/decoders/mp3.cpp
===================================================================
--- scummvm/trunk/sound/decoders/mp3.cpp	2010-02-03 03:26:28 UTC (rev 47840)
+++ scummvm/trunk/sound/decoders/mp3.cpp	2010-02-03 08:58:52 UTC (rev 47841)
@@ -338,6 +338,7 @@
 SeekableAudioStream *makeMP3Stream(
 	Common::SeekableReadStream *stream,
 	DisposeAfterUse::Flag disposeAfterUse) {
+	// TODO: Properly check whether creating the MP3 stream succeeded.
 	return new MP3InputStream(stream, disposeAfterUse);
 }
 

Modified: scummvm/trunk/sound/decoders/vorbis.cpp
===================================================================
--- scummvm/trunk/sound/decoders/vorbis.cpp	2010-02-03 03:26:28 UTC (rev 47840)
+++ scummvm/trunk/sound/decoders/vorbis.cpp	2010-02-03 08:58:52 UTC (rev 47841)
@@ -244,7 +244,13 @@
 SeekableAudioStream *makeVorbisStream(
 	Common::SeekableReadStream *stream,
 	DisposeAfterUse::Flag disposeAfterUse) {
-	return new VorbisInputStream(stream, disposeAfterUse);
+	SeekableAudioStream *s = new VorbisInputStream(stream, disposeAfterUse);
+	if (s && s->endOfData()) {
+		delete s;
+		return 0;
+	} else {
+		return s;
+	}
 }
 
 } // End of namespace Audio


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list