mirror of
https://github.com/VDR4Arch/vdr.git
synced 2023-10-10 13:36:52 +02:00
Fixed switching through encrypted channels with the Up/Down keys
This commit is contained in:
parent
5543f13051
commit
336822f672
@ -3566,6 +3566,7 @@ Onur Sent
|
|||||||
|
|
||||||
Helmut Binder <cco@aon.at>
|
Helmut Binder <cco@aon.at>
|
||||||
for improving calculating signal strength and quality
|
for improving calculating signal strength and quality
|
||||||
|
for fixing switching through encrypted channels with the Up/Down keys
|
||||||
|
|
||||||
Ulrich Eckhardt <uli@uli-eckhardt.de>
|
Ulrich Eckhardt <uli@uli-eckhardt.de>
|
||||||
for reporting a problem with shutdown after user inactivity in case a plugin is
|
for reporting a problem with shutdown after user inactivity in case a plugin is
|
||||||
|
2
HISTORY
2
HISTORY
@ -9363,3 +9363,5 @@ Video Disk Recorder Revision History
|
|||||||
when Flush() was called (reported by Matthias Senzel and Uwe Scheffler).
|
when Flush() was called (reported by Matthias Senzel and Uwe Scheffler).
|
||||||
- Fixed shutdown after user inactivity in case a plugin is keeping the OSD open
|
- Fixed shutdown after user inactivity in case a plugin is keeping the OSD open
|
||||||
(reported by Ulrich Eckhardt).
|
(reported by Ulrich Eckhardt).
|
||||||
|
- Fixed switching through encrypted channels with the Up/Down keys (thanks to Helmut
|
||||||
|
Binder).
|
||||||
|
4
device.c
4
device.c
@ -4,7 +4,7 @@
|
|||||||
* See the main source file 'vdr.c' for copyright information and
|
* See the main source file 'vdr.c' for copyright information and
|
||||||
* how to reach the author.
|
* how to reach the author.
|
||||||
*
|
*
|
||||||
* $Id: device.c 4.27 2018/03/24 09:49:14 kls Exp $
|
* $Id: device.c 4.28 2018/07/16 09:29:57 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "device.h"
|
#include "device.h"
|
||||||
@ -787,6 +787,7 @@ bool cDevice::SwitchChannel(const cChannel *Channel, bool LiveView)
|
|||||||
if (LiveView) {
|
if (LiveView) {
|
||||||
isyslog("switching to channel %d %s (%s)", Channel->Number(), *Channel->GetChannelID().ToString(), Channel->Name());
|
isyslog("switching to channel %d %s (%s)", Channel->Number(), *Channel->GetChannelID().ToString(), Channel->Name());
|
||||||
cControl::Shutdown(); // prevents old channel from being shown too long if GetDevice() takes longer
|
cControl::Shutdown(); // prevents old channel from being shown too long if GetDevice() takes longer
|
||||||
|
// and, if decrypted, this removes the now superflous PIDs from the CAM, too
|
||||||
}
|
}
|
||||||
for (int i = 3; i--;) {
|
for (int i = 3; i--;) {
|
||||||
switch (SetChannel(Channel, LiveView)) {
|
switch (SetChannel(Channel, LiveView)) {
|
||||||
@ -809,6 +810,7 @@ bool cDevice::SwitchChannel(int Direction)
|
|||||||
Direction = sgn(Direction);
|
Direction = sgn(Direction);
|
||||||
if (Direction) {
|
if (Direction) {
|
||||||
cControl::Shutdown(); // prevents old channel from being shown too long if GetDevice() takes longer
|
cControl::Shutdown(); // prevents old channel from being shown too long if GetDevice() takes longer
|
||||||
|
// and, if decrypted, this removes the now superflous PIDs from the CAM, too
|
||||||
int n = CurrentChannel() + Direction;
|
int n = CurrentChannel() + Direction;
|
||||||
int first = n;
|
int first = n;
|
||||||
LOCK_CHANNELS_READ;
|
LOCK_CHANNELS_READ;
|
||||||
|
4
menu.c
4
menu.c
@ -4,7 +4,7 @@
|
|||||||
* See the main source file 'vdr.c' for copyright information and
|
* See the main source file 'vdr.c' for copyright information and
|
||||||
* how to reach the author.
|
* how to reach the author.
|
||||||
*
|
*
|
||||||
* $Id: menu.c 4.77 2018/05/27 09:51:56 kls Exp $
|
* $Id: menu.c 4.78 2018/07/16 09:29:57 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "menu.h"
|
#include "menu.h"
|
||||||
@ -4704,6 +4704,8 @@ void cDisplayChannel::Refresh(void)
|
|||||||
const cChannel *cDisplayChannel::NextAvailableChannel(const cChannel *Channel, int Direction)
|
const cChannel *cDisplayChannel::NextAvailableChannel(const cChannel *Channel, int Direction)
|
||||||
{
|
{
|
||||||
if (Direction) {
|
if (Direction) {
|
||||||
|
cControl::Shutdown(); // prevents old channel from being shown too long if GetDevice() takes longer
|
||||||
|
// and, if decrypted, this removes the now superflous PIDs from the CAM, too
|
||||||
LOCK_CHANNELS_READ;
|
LOCK_CHANNELS_READ;
|
||||||
while (Channel) {
|
while (Channel) {
|
||||||
Channel = Direction > 0 ? Channels->Next(Channel) : Channels->Prev(Channel);
|
Channel = Direction > 0 ? Channels->Next(Channel) : Channels->Prev(Channel);
|
||||||
|
Loading…
Reference in New Issue
Block a user