diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 38f21ffd..b9b4809c 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -1873,6 +1873,7 @@ Christoph Haubrich the jump instead of closing the display for reporting that the log message "deleting plugin: ..." is irritating when calling "vdr --help" + for fixing cDevice::ToggleMute() Pekka Mauno for fixing cSchedule::GetFollowingEvent() in case there is currently no present diff --git a/HISTORY b/HISTORY index dd668bdd..af73d0f2 100644 --- a/HISTORY +++ b/HISTORY @@ -4841,3 +4841,4 @@ Video Disk Recorder Revision History (thanks to Frank Schmirler). - Increased the APIVERSION to allow plugins that relied on the cStatus::MsgSetVolume() bug to react properly (suggested by Stefan Huelswitt). +- Fixed cDevice::ToggleMute() (thanks to Christoph Haubrich). diff --git a/device.c b/device.c index 8f451d71..882279cb 100644 --- a/device.c +++ b/device.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: device.c 1.133 2006/07/22 14:06:11 kls Exp $ + * $Id: device.c 1.134 2006/07/29 10:03:56 kls Exp $ */ #include "device.h" @@ -751,12 +751,12 @@ bool cDevice::ToggleMute(void) mute = !mute; //XXX why is it necessary to use different sequences??? if (mute) { - SetVolume(0, mute); + SetVolume(0, true); Audios.MuteAudio(mute); // Mute external audio after analog audio } else { Audios.MuteAudio(mute); // Enable external audio before analog audio - SetVolume(0, mute); + SetVolume(OldVolume, true); } volume = OldVolume; return mute;