diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2003-02-16 11:20:55 +0100 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2003-02-16 11:20:55 +0100 |
commit | 9c04942eaac18f9a494c5ace7f3e73e62a820c47 (patch) | |
tree | e76bb7f87fb97ac075d251f383cf50310345b38f /ci.c | |
parent | 96df157057827185f94a150bf3c8a049f8bca369 (diff) | |
download | vdr-9c04942eaac18f9a494c5ace7f3e73e62a820c47.tar.gz vdr-9c04942eaac18f9a494c5ace7f3e73e62a820c47.tar.bz2 |
Broken CAM connections are now restored automatically
Diffstat (limited to 'ci.c')
-rw-r--r-- | ci.c | 10 |
1 files changed, 7 insertions, 3 deletions
@@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: ci.c 1.6 2003/02/15 14:14:57 kls Exp $ + * $Id: ci.c 1.7 2003/02/16 11:20:55 kls Exp $ */ /* XXX TODO @@ -1423,8 +1423,9 @@ int cCiHandler::CloseAllSessions(int Slot) return result; } -void cCiHandler::Process(void) +bool cCiHandler::Process(void) { + bool result = true; cMutexLock MutexLock(&mutex); for (int Slot = 0; Slot < numSlots; Slot++) { tc = tpl->Process(Slot); @@ -1453,8 +1454,10 @@ void cCiHandler::Process(void) } } } - else if (CloseAllSessions(Slot)) + else if (CloseAllSessions(Slot)) { tpl->ResetSlot(Slot); + result = false; + } else if (tpl->ModuleReady(Slot)) { dbgprotocol("Module ready in slot %d\n", Slot); tpl->NewConnection(Slot); @@ -1464,6 +1467,7 @@ void cCiHandler::Process(void) if (sessions[i]) sessions[i]->Process(); } + return result; } bool cCiHandler::EnterMenu(int Slot) |