summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2006-07-22 14:04:51 +0200
committerKlaus Schmidinger <vdr@tvdr.de>2006-07-22 14:04:51 +0200
commit375aa2563ad24f127874f45b87a1e70a2fbda50d (patch)
tree38d9a7229178c12145dab2b34cfc6d17756b6dde
parentee4fa90032d903b6030e7576af2b1d2e0d12ada8 (diff)
downloadvdr-375aa2563ad24f127874f45b87a1e70a2fbda50d.tar.gz
vdr-375aa2563ad24f127874f45b87a1e70a2fbda50d.tar.bz2
Fixed handling client side termination of SVDRP connections
-rw-r--r--CONTRIBUTORS3
-rw-r--r--HISTORY2
-rw-r--r--svdrp.c10
3 files changed, 12 insertions, 3 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 8f1c1770..09893f4b 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -1946,3 +1946,6 @@ Patrick Maier <maierp@informatik.tu-muenchen.de>
Norbert Wentz <norbert.wentz@online.de>
for reporting a bug in handling relative volume settings in the call to
cStatus::MsgSetVolume()
+
+Frank Schmirler <vdr@schmirler.de>
+ for fixing handling client side termination of SVDRP connections
diff --git a/HISTORY b/HISTORY
index f19f88d3..e6f100ca 100644
--- a/HISTORY
+++ b/HISTORY
@@ -4824,3 +4824,5 @@ Video Disk Recorder Revision History
(reported by Norbert Wentz).
- Added a missing initialization of 'mutex' in cCiMenu::cCiMenu() and removed
some superfluous semicolons in ci.c (thanks to Marco Schlüßler).
+- Fixed handling client side termination of SVDRP connections (thanks to Frank
+ Schmirler).
diff --git a/svdrp.c b/svdrp.c
index 34f283f6..6972681e 100644
--- a/svdrp.c
+++ b/svdrp.c
@@ -10,7 +10,7 @@
* and interact with the Video Disk Recorder - or write a full featured
* graphical interface that sits on top of an SVDRP connection.
*
- * $Id: svdrp.c 1.97 2006/06/11 09:04:36 kls Exp $
+ * $Id: svdrp.c 1.98 2006/07/22 13:59:43 kls Exp $
*/
#include "svdrp.h"
@@ -1594,8 +1594,12 @@ bool cSVDRP::Process(void)
isyslog("lost connection to SVDRP client");
Close();
}
- else
- break;
+ else {
+ isyslog("SVDRP client closed connection");
+ //TODO give cSVDRP::Close() an extra parameter to avoid this code duplication
+ file.Close();
+ DELETENULL(PUTEhandler);
+ }
}
if (Setup.SVDRPTimeout && time(NULL) - lastActivity > Setup.SVDRPTimeout) {
isyslog("timeout on SVDRP connection");