diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2013-08-22 10:36:07 +0200 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2013-08-22 10:36:07 +0200 |
commit | 1f0a55ca7d0f681999f9f1eb4c05be956e195e63 (patch) | |
tree | 85567f7f6d91217ebc719199b7bbed8f4560b2a5 | |
parent | 917331767b5fed77bdd300c5c9347e9ca887fc4f (diff) | |
download | vdr-1f0a55ca7d0f681999f9f1eb4c05be956e195e63.tar.gz vdr-1f0a55ca7d0f681999f9f1eb4c05be956e195e63.tar.bz2 |
Fixed a possible crash when shutting down VDR while subtitles are being displayed
-rw-r--r-- | CONTRIBUTORS | 2 | ||||
-rw-r--r-- | HISTORY | 2 | ||||
-rw-r--r-- | device.c | 5 |
3 files changed, 7 insertions, 2 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 72030010..ce52078b 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -2017,6 +2017,8 @@ Ville Skyttä <ville.skytta@iki.fi> be escaped for changing the template for PLGCFG to $(CONFDIR)/plugins.mk for updating the help and man page entry about the location of the epg.data file + for reporting a possible crash when shutting down VDR while subtitles are being + displayed Steffen Beyer <cpunk@reactor.de> for fixing setting the colored button help after deleting a recording in case the next @@ -7819,3 +7819,5 @@ Video Disk Recorder Revision History - No longer trying to delete old recordings in AssertFreeDiskSpace() if the given Priority is less than 1. - Fixed handling LIRC events in case repeated events are lost. +- Fixed a possible crash when shutting down VDR while subtitles are being displayed + (reported by Ville Skyttä). @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: device.c 2.74.1.1 2013/04/05 10:47:38 kls Exp $ + * $Id: device.c 2.74.1.2 2013/08/22 10:35:30 kls Exp $ */ #include "device.h" @@ -118,6 +118,8 @@ cDevice::~cDevice() DetachAllReceivers(); delete liveSubtitle; delete dvbSubtitleConverter; + if (this == primaryDevice) + primaryDevice = NULL; } bool cDevice::WaitForAllDevicesReady(int Timeout) @@ -362,7 +364,6 @@ void cDevice::SetCamSlot(cCamSlot *CamSlot) void cDevice::Shutdown(void) { deviceHooks.Clear(); - primaryDevice = NULL; for (int i = 0; i < numDevices; i++) { delete device[i]; device[i] = NULL; |