summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CONTRIBUTORS2
-rw-r--r--HISTORY2
-rw-r--r--receiver.c9
3 files changed, 11 insertions, 2 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index f748f6fd..ea354f20 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -1127,6 +1127,8 @@ Reinhard Nissl <rnissl@gmx.de>
with open file handles when starting background commands
for fixing handling error status in cDvbTuner::GetFrontendStatus()
for fixing a busy loop in fast forward if the next video data file is missing
+ for adding a debug error message to cReceiver::~cReceiver() in case it is still
+ attached to a device
Richard Robson <richard_robson@beeb.net>
for reporting freezing replay if a timer starts while in Transfer Mode from the
diff --git a/HISTORY b/HISTORY
index c8ff1e7a..c2d9aa7e 100644
--- a/HISTORY
+++ b/HISTORY
@@ -5343,3 +5343,5 @@ Video Disk Recorder Revision History
- cBitmap::SetXpm() now checks whether the given Xpm pointer is not NULL, to
avoid a crash with files that only contain "/* XPM */" (suggested by Andreas
Mair).
+- Added a debug error message to cReceiver::~cReceiver() in case it is still
+ attached to a device (thanks to Reinhard Nissl).
diff --git a/receiver.c b/receiver.c
index b74a18bf..4f537e23 100644
--- a/receiver.c
+++ b/receiver.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: receiver.c 1.6 2007/01/07 14:42:29 kls Exp $
+ * $Id: receiver.c 1.7 2007/08/12 12:30:00 kls Exp $
*/
#include "receiver.h"
@@ -38,7 +38,12 @@ cReceiver::cReceiver(tChannelID ChannelID, int Priority, int Pid, const int *Pid
cReceiver::~cReceiver()
{
- Detach();
+ if (device) {
+ const char *msg = "ERROR: cReceiver has not been detached yet! This is a design fault and VDR will segfault now!";
+ esyslog(msg);
+ fprintf(stderr, "%s\n", msg);
+ *(char *)0 = 0; // cause a segfault
+ }
}
bool cReceiver::WantsPid(int Pid)