Fixed handling relative volume settings that unmute the audio in the call to cStatus::MsgSetVolume()

This commit is contained in:
Klaus Schmidinger 2006-09-03 11:49:32 +02:00
parent 2e97eed6ad
commit 5ff1d35711
3 changed files with 7 additions and 2 deletions

View File

@ -640,6 +640,8 @@ Oliver Endriss <o.endriss@gmx.de>
for reporting a problem in extracting APIVERSION with older versions of 'sed'
for fixing broken APIVERSION extraction line in 'newplugin'
for making VDR no longer stop removing empty directories if an error occurs
for reporting a bug in handling relative volume settings that unmute the audio in
the call to cStatus::MsgSetVolume()
Reinhard Walter Buchner <rw.buchner@freenet.de>
for adding some satellites to 'sources.conf'

View File

@ -4896,7 +4896,7 @@ Video Disk Recorder Revision History
detatching receivers. This change has caused some unwanted behavior, so further
testing is necessary.
2006-09-02: Version 1.4.2-1
2006-09-03: Version 1.4.2-1
- Added LC_ALL to the checks for UTF-8 at startup (suggested by Matthias Schwarzott).
- Fixed the cTimer::operator=() so that it won't mess up the cListObject's pointers
@ -4905,3 +4905,5 @@ Video Disk Recorder Revision History
(reported by Alexander Rieger).
- Fixed processing the PDCDescriptor in 'libsi' on big endian systems (thanks to
Martin Ostermann).
- Fixed handling relative volume settings that unmute the audio in the call to
cStatus::MsgSetVolume() (reported by Oliver Endriss).

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: device.c 1.136 2006/08/26 14:11:03 kls Exp $
* $Id: device.c 1.137 2006/09/03 10:13:25 kls Exp $
*/
#include "device.h"
@ -779,6 +779,7 @@ void cDevice::SetVolume(int Volume, bool Absolute)
int OldVolume = volume;
volume = min(max(Absolute ? Volume : volume + Volume, 0), MAXVOLUME);
SetVolumeDevice(volume);
Absolute |= mute;
cStatus::MsgSetVolume(Absolute ? volume : volume - OldVolume, Absolute);
if (volume > 0) {
mute = false;