summaryrefslogtreecommitdiff
path: root/src/soundmanager.cpp
diff options
context:
space:
mode:
authorSocapex <philippe_groarke@yahoo.ca>2013-01-19 21:02:01 -0500
committerSocapex <philippe_groarke@yahoo.ca>2013-01-19 21:02:01 -0500
commitdf606ace309acaf0c78f52e1f98eabed6c844ae2 (patch)
treed9799b0e4a507d9eacbbafc1755eecea03f0b373 /src/soundmanager.cpp
parentd0169223b889a115b486e974e5b287c3ccb00d85 (diff)
parent678d4e70999ade5a36862039875aa5564291d09d (diff)
downloadmanaplus-df606ace309acaf0c78f52e1f98eabed6c844ae2.tar.gz
manaplus-df606ace309acaf0c78f52e1f98eabed6c844ae2.tar.bz2
manaplus-df606ace309acaf0c78f52e1f98eabed6c844ae2.tar.xz
manaplus-df606ace309acaf0c78f52e1f98eabed6c844ae2.zip
Merge remote-tracking branch 'upstream/master' into osx
Diffstat (limited to 'src/soundmanager.cpp')
-rw-r--r--src/soundmanager.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/soundmanager.cpp b/src/soundmanager.cpp
index 5fc06eb79..b60e84ef3 100644
--- a/src/soundmanager.cpp
+++ b/src/soundmanager.cpp
@@ -2,7 +2,7 @@
* The ManaPlus Client
* Copyright (C) 2004-2009 The Mana World Development Team
* Copyright (C) 2009-2010 The Mana Developers
- * Copyright (C) 2011-2012 The ManaPlus Developers
+ * Copyright (C) 2011-2013 The ManaPlus Developers
*
* This file is part of The ManaPlus Client.
*
@@ -232,11 +232,14 @@ static SDLMusic *loadMusic(const std::string &fileName)
void SoundManager::playMusic(const std::string &fileName)
{
- mCurrentMusicFile = fileName;
-
if (!mInstalled || !mPlayMusic)
return;
+ if (mCurrentMusicFile == fileName)
+ return;
+
+ mCurrentMusicFile = fileName;
+
haltMusic();
if (!fileName.empty())
@@ -407,6 +410,7 @@ void SoundManager::haltMusic()
mMusic->decRef();
mMusic = nullptr;
}
+ mCurrentMusicFile.clear();
}
void SoundManager::changeAudio()