Index: Slim/Player/Player.pm =================================================================== RCS file: /home/cvs/cvsroot/slim/server/Slim/Player/Player.pm,v retrieving revision 1.30 diff -u -p -B -r1.30 Player.pm --- Slim/Player/Player.pm 24 Sep 2004 01:45:20 -0000 1.30 +++ Slim/Player/Player.pm 5 Oct 2004 03:15:28 -0000 @@ -229,14 +229,6 @@ sub power { Slim::Utils::Prefs::clientSet($client, "powerOnBrightness", $powerOnBrightness); #check if there is a sync group to restore Slim::Player::Sync::restoreSync($client); - # restore volume (un-mute if necessary) - my $vol = $client->volume(); - if($vol < 0) { - # un-mute volume - $vol *= -1; - $client->volume($vol); - } - Slim::Control::Command::execute($client, ["mixer", "volume", $vol]); } else { Slim::Buttons::Common::setMode($client, 'off'); } @@ -277,13 +269,13 @@ sub fade_volume { my $vol = Slim::Utils::Prefs::clientGet($client, "volume"); my $mute = Slim::Utils::Prefs::clientGet($client, "mute"); - if ($vol < 0) { + if ($vol < 0 && $fade < 0) { # the volume is muted, don't fade. $callback && (&$callback(@$callbackargs)); return; } - if ($mute) { + if ($mute || (!$mute && $vol < 0)) { # Set Target (Negative indicates mute, but still saves old value) Slim::Utils::Prefs::clientSet($client, "volume", $vol * -1); }