From ce3ba75e2322bf977eba0ff166989703e9915439 Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Sat, 23 Dec 2006 06:59:50 +0000 Subject: [PATCH] errors in source filters, so each filter in the chain doesn't have a separate error --- stepmania/src/RageSoundReader.h | 8 +------- stepmania/src/RageSoundReader_FileReader.h | 5 +++++ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/stepmania/src/RageSoundReader.h b/stepmania/src/RageSoundReader.h index 151de9fbeb..464be45e39 100644 --- a/stepmania/src/RageSoundReader.h +++ b/stepmania/src/RageSoundReader.h @@ -40,14 +40,8 @@ public: virtual int GetNextSourceFrame() const = 0; virtual float GetStreamToSourceRatio() const = 0; - virtual RString GetError() const { return m_sError; } + virtual RString GetError() const = 0; int RetriedRead( char *pBuffer, int iFrames, int *iSourceFrame = NULL, float *fRate = NULL ); - -protected: - void SetError( RString sError ) const { m_sError = sError; } - -private: - mutable RString m_sError; }; #endif diff --git a/stepmania/src/RageSoundReader_FileReader.h b/stepmania/src/RageSoundReader_FileReader.h index 6ec0cd53e3..634fede526 100644 --- a/stepmania/src/RageSoundReader_FileReader.h +++ b/stepmania/src/RageSoundReader_FileReader.h @@ -26,11 +26,16 @@ public: virtual OpenResult Open(RString filename) = 0; virtual bool IsStreamingFromDisk() const { return true; } virtual float GetStreamToSourceRatio() const { return 1.0f; } + virtual RString GetError() const { return m_sError; } static RageSoundReader *OpenFile( RString filename, RString &error ); +protected: + void SetError( RString sError ) const { m_sError = sError; } + private: static RageSoundReader_FileReader *TryOpenFile( RString filename, RString &error, RString format, bool &bKeepTrying ); + mutable RString m_sError; }; #endif