X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f8a586e08eef0a5d09612f26f0e0c687cfac9963..0d2ef7a802809c59e4fa6be2465c5ac55c9f802d:/src/unix/sound.cpp diff --git a/src/unix/sound.cpp b/src/unix/sound.cpp index 3ac2ea8462..6afa44f146 100644 --- a/src/unix/sound.cpp +++ b/src/unix/sound.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: sound.cpp +// Name: src/unix/sound.cpp // Purpose: wxSound // Author: Marcel Rasche, Vaclav Slavik // Modified by: @@ -9,16 +9,9 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma implementation "sound.h" -#pragma implementation "soundbase.h" -#endif - // for compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" -#include "wx/setup.h" - #if defined(__BORLANDC__) #pragma hdrstop #endif @@ -413,7 +406,7 @@ bool wxSoundSyncOnlyAdaptor::IsPlaying() const #if wxUSE_THREADS return m_status.m_playing; #else - return FALSE; + return false; #endif } @@ -452,7 +445,8 @@ wxSound::~wxSound() Free(); } -bool wxSound::Create(const wxString& fileName, bool isResource) +bool wxSound::Create(const wxString& fileName, + bool WXUNUSED_UNLESS_DEBUG(isResource)) { wxASSERT_MSG( !isResource, _T("Loading sound from resources is only supported on Windows") ); @@ -465,9 +459,13 @@ bool wxSound::Create(const wxString& fileName, bool isResource) return false; } - wxFileOffset len = fileWave.Length(); + wxFileOffset lenOrig = fileWave.Length(); + if ( lenOrig == wxInvalidOffset ) + return false; + + size_t len = wx_truncate_cast(size_t, lenOrig); wxUint8 *data = new wxUint8[len]; - if (fileWave.Read(data, len) != len) + if ( fileWave.Read(data, len) != lenOrig ) { wxLogError(_("Couldn't load sound data from '%s'."), fileName.c_str()); return false; @@ -620,7 +618,6 @@ typedef struct wxUint16 uiBitsPerSample; } WAVEFORMAT; -#define MONO 1 // and stereo is 2 by wav format #define WAVE_FORMAT_PCM 1 #define WAVE_INDEX 8 #define FMT_INDEX 12