summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2012-01-18 10:51:01 +0100
committerKlaus Schmidinger <vdr@tvdr.de>2012-01-18 10:51:01 +0100
commitd3bf039f3f6b407dbeda9f9b2a5a78c8b8f4bc73 (patch)
tree8b10475f490ae043564f18cfe1a61a0247bb675f
parent33342fb17bcfea3cb91207c9042c4b5f28d3ca46 (diff)
downloadvdr-d3bf039f3f6b407dbeda9f9b2a5a78c8b8f4bc73.tar.gz
vdr-d3bf039f3f6b407dbeda9f9b2a5a78c8b8f4bc73.tar.bz2
Fixed a crash in a plugin using cDeviceHook when VDR ends
-rw-r--r--CONTRIBUTORS1
-rw-r--r--HISTORY1
-rw-r--r--device.c3
3 files changed, 4 insertions, 1 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 2a3d8588..cabaa825 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -680,6 +680,7 @@ Oliver Endriss <o.endriss@gmx.de>
for his input on calculating the Aspect factor in GetOsdSize()
for suggesting a better way of handling calls to realloc()
for making the cutter set the 'broken link' flag for MPEG2 TS recordings
+ for reporting a crash in a plugin using cDeviceHook when VDR ends
Reinhard Walter Buchner <rw.buchner@freenet.de>
for adding some satellites to 'sources.conf'
diff --git a/HISTORY b/HISTORY
index 91090e93..b7762673 100644
--- a/HISTORY
+++ b/HISTORY
@@ -6848,3 +6848,4 @@ Video Disk Recorder Revision History
- Fixed asserting there is a live programme if the primary device is bonded with
a device that starts a recording on a different band.
- Fixed the return type of cMyDeviceHook::DeviceProvidesTransponder() in PLUGINS.html.
+- Fixed a crash in a plugin using cDeviceHook when VDR ends (reported by Oliver Endriss).
diff --git a/device.c b/device.c
index be59ed5f..714668db 100644
--- a/device.c
+++ b/device.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: device.c 2.45 2012/01/17 15:28:57 kls Exp $
+ * $Id: device.c 2.46 2012/01/18 10:43:00 kls Exp $
*/
#include "device.h"
@@ -335,6 +335,7 @@ void cDevice::SetCamSlot(cCamSlot *CamSlot)
void cDevice::Shutdown(void)
{
+ deviceHooks.Clear();
primaryDevice = NULL;
for (int i = 0; i < numDevices; i++) {
delete device[i];