Author: evgeni Date: 2011-03-28 12:33:01 +0000 (Mon, 28 Mar 2011) New Revision: 12040
Added: packages/trunk/blocks-of-the-undead/debian/patches/03_dont_fail_if_no_sound_available.patch Modified: packages/trunk/blocks-of-the-undead/debian/changelog packages/trunk/blocks-of-the-undead/debian/patches/series Log: Don't fail if there is no sound available Modified: packages/trunk/blocks-of-the-undead/debian/changelog =================================================================== --- packages/trunk/blocks-of-the-undead/debian/changelog 2011-03-28 11:39:04 UTC (rev 12039) +++ packages/trunk/blocks-of-the-undead/debian/changelog 2011-03-28 12:33:01 UTC (rev 12040) @@ -1,10 +1,14 @@ blocks-of-the-undead (1.0-4) UNRELEASED; urgency=low - * Team upload. + [ Paul Wise ] * Fix Homepage (Closes: #611121) - -- Paul Wise <[email protected]> Fri, 11 Mar 2011 21:14:27 +0800 + [ Evgeni Golov ] + * Don't fail if there is no sound available. + Closes: #603440 + -- Evgeni Golov <[email protected]> Mon, 28 Mar 2011 14:32:27 +0200 + blocks-of-the-undead (1.0-3) unstable; urgency=low * debian/patches/02_accept_mousepress_as_anykey.patch: Added: packages/trunk/blocks-of-the-undead/debian/patches/03_dont_fail_if_no_sound_available.patch =================================================================== --- packages/trunk/blocks-of-the-undead/debian/patches/03_dont_fail_if_no_sound_available.patch (rev 0) +++ packages/trunk/blocks-of-the-undead/debian/patches/03_dont_fail_if_no_sound_available.patch 2011-03-28 12:33:01 UTC (rev 12040) @@ -0,0 +1,88 @@ +From: Evgeni Golov <[email protected]> +Subject: Don't fail if there is no sound available + This can happen when the user does not have enough rights to use the + soundcard or there is no soundcard at all in the machine. +Bug-Debian: http://bugs.debian.org/603440 + +diff -Nru blocks-of-the-undead-1.0/Oodle/src/CSound.cpp blocks-of-the-undead-1.0.patched/Oodle/src/CSound.cpp +--- blocks-of-the-undead-1.0/Oodle/src/CSound.cpp 2005-01-16 21:20:00.000000000 +0100 ++++ blocks-of-the-undead-1.0.patched/Oodle/src/CSound.cpp 2011-03-28 14:26:25.009659884 +0200 +@@ -6,13 +6,16 @@ + const char* f2 = file.c_str(); + data = Mix_LoadWAV( f2 ); + +- if (!data) +- _THROWEX(ex_sdl, "Failed to load sound", "CSound", "CSound", "snd = " << snd); ++ if (!data) { ++ LOG("Failed to load sound " << snd << ".", 1, LOG_INFO); ++ LOG("This is normal if \"CSoundSystem\" failed to load above.", 1, LOG_INFO); ++ } + } + + CSound::~CSound() + { +- Mix_FreeChunk(data); ++ if (data) ++ Mix_FreeChunk(data); + } + + void CSound::setChannel(int c) +@@ -28,4 +31,4 @@ + Mix_Chunk* CSound::getChunk() const + { + return data; +-} +\ No newline at end of file ++} +diff -Nru blocks-of-the-undead-1.0/Oodle/src/CSoundSystem.cpp blocks-of-the-undead-1.0.patched/Oodle/src/CSoundSystem.cpp +--- blocks-of-the-undead-1.0/Oodle/src/CSoundSystem.cpp 2005-01-16 21:20:00.000000000 +0100 ++++ blocks-of-the-undead-1.0.patched/Oodle/src/CSoundSystem.cpp 2011-03-28 14:24:20.705012382 +0200 +@@ -3,24 +3,28 @@ + CSoundSystem::CSoundSystem(int chunksize, int frequency, int channels, Uint16 format) + { + SDL_InitSubSystem(SDL_INIT_AUDIO); ++ soundAvailable = true; + if (Mix_OpenAudio(frequency, format, channels, chunksize)) + { +- _THROWEX(ex_sdl, "Failed to load sound subsystem", "CSoundSystem", "CSoundSystem", +- "frequency = " << frequency << ", chunksize = " << chunksize << ", " << +- "channels = " << channels << ", format = " << format); ++ soundAvailable = false; ++ LOG("Failed to load sound subsystem \"CSoundSystem\".", 1, LOG_ERROR); ++ LOG("You will not have any sound during the game.", 1, LOG_INFO); + } + } + + void CSoundSystem::playSound(CSound &snd) const + { +- snd.setChannel( Mix_PlayChannel(-1, snd.getChunk(), 0) ); ++ if (soundAvailable) ++ snd.setChannel( Mix_PlayChannel(-1, snd.getChunk(), 0) ); + } + void CSoundSystem::stopSound(const CSound &snd) const + { +- Mix_HaltChannel(snd.getChannel()); ++ if (soundAvailable) ++ Mix_HaltChannel(snd.getChannel()); + } + + CSoundSystem::~CSoundSystem() + { +- Mix_CloseAudio(); +-} +\ No newline at end of file ++ if (soundAvailable) ++ Mix_CloseAudio(); ++} +diff -Nru blocks-of-the-undead-1.0/Oodle/src/CSoundSystem.h blocks-of-the-undead-1.0.patched/Oodle/src/CSoundSystem.h +--- blocks-of-the-undead-1.0/Oodle/src/CSoundSystem.h 2005-01-17 05:48:19.000000000 +0100 ++++ blocks-of-the-undead-1.0.patched/Oodle/src/CSoundSystem.h 2011-03-28 14:01:00.146914826 +0200 +@@ -13,7 +13,7 @@ + void playSound(CSound &snd) const; + void stopSound(const CSound &snd) const; + private: +- ++ bool soundAvailable; + }; + + #endif Modified: packages/trunk/blocks-of-the-undead/debian/patches/series =================================================================== --- packages/trunk/blocks-of-the-undead/debian/patches/series 2011-03-28 11:39:04 UTC (rev 12039) +++ packages/trunk/blocks-of-the-undead/debian/patches/series 2011-03-28 12:33:01 UTC (rev 12040) @@ -1,2 +1,3 @@ 01-sleep_a_bit.patch 02_accept_mousepress_as_anykey.patch +03_dont_fail_if_no_sound_available.patch _______________________________________________ Pkg-games-commits mailing list [email protected] http://lists.alioth.debian.org/mailman/listinfo/pkg-games-commits

