Fixed locking the Channels list in cDisplayChannel, where the lock was still held when Flush() was called (cont'd)

This commit is contained in:
Klaus Schmidinger
2018-05-27 09:55:30 +02:00
parent d380b57d28
commit 30eb01ef37
3 changed files with 9 additions and 5 deletions

8
menu.c
View File

@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: menu.c 4.76 2018/05/06 09:30:11 kls Exp $
* $Id: menu.c 4.77 2018/05/27 09:51:56 kls Exp $
*/
#include "menu.h"
@@ -4654,8 +4654,10 @@ cDisplayChannel::cDisplayChannel(eKeys FirstKey)
displayChannel = Skins.Current()->DisplayChannel(withInfo);
positioner = NULL;
channel = NULL;
LOCK_CHANNELS_READ;
channel = Channels->GetByNumber(cDevice::CurrentChannel());
{
LOCK_CHANNELS_READ;
channel = Channels->GetByNumber(cDevice::CurrentChannel());
}
ProcessKey(FirstKey);
}