1
0
mirror of https://github.com/VDR4Arch/vdr.git synced 2023-10-10 13:36:52 +02:00

Fixed a race condition with signal handlers at program exit

This commit is contained in:
Klaus Schmidinger 2007-04-30 09:24:30 +02:00
parent 853f6064bf
commit f935c03c79
3 changed files with 12 additions and 2 deletions

View File

@ -1492,6 +1492,7 @@ Udo Richter <udo_richter@gmx.de>
for implementing cPlugin::WakeupTime() to allow plugins to request VDR to wake for implementing cPlugin::WakeupTime() to allow plugins to request VDR to wake
up at a particular time up at a particular time
for making the HUP signal force a restart of VDR for making the HUP signal force a restart of VDR
for fixing a race condition with signal handlers at program exit
Sven Kreiensen <svenk@kammer.uni-hannover.de> Sven Kreiensen <svenk@kammer.uni-hannover.de>
for his help in keeping 'channels.conf.terr' up to date for his help in keeping 'channels.conf.terr' up to date

View File

@ -5172,9 +5172,11 @@ Video Disk Recorder Revision History
(thanks to Reinhard Nissl). (thanks to Reinhard Nissl).
- Fixed handling frequencies in NitFilter::Process() (thanks to Anssi Hannula). - Fixed handling frequencies in NitFilter::Process() (thanks to Anssi Hannula).
2007-04-28: Version 1.5.3 2007-04-30: Version 1.5.3
- Fixed some spelling errors in 'newplugin' (thanks to Ville Skyttä). - Fixed some spelling errors in 'newplugin' (thanks to Ville Skyttä).
- Fixed a busy loop in fast forward if the next video data file is missing - Fixed a busy loop in fast forward if the next video data file is missing
(thanks to Reinhard Nissl). (thanks to Reinhard Nissl).
- Fixed handling frequencies in NitFilter::Process() (thanks to Anssi Hannula). - Fixed handling frequencies in NitFilter::Process() (thanks to Anssi Hannula).
- Fixed a race condition with signal handlers at program exit (thanks to Udo
Richter).

9
vdr.c
View File

@ -22,7 +22,7 @@
* *
* The project's page is at http://www.cadsoft.de/vdr * The project's page is at http://www.cadsoft.de/vdr
* *
* $Id: vdr.c 1.287 2007/04/22 13:28:32 kls Exp $ * $Id: vdr.c 1.288 2007/04/30 09:22:27 kls Exp $
*/ */
#include <getopt.h> #include <getopt.h>
@ -1203,6 +1203,13 @@ int main(int argc, char *argv[])
Exit: Exit:
// Reset all signal handlers to default before Interface gets deleted:
signal(SIGHUP, SIG_DFL);
signal(SIGINT, SIG_DFL);
signal(SIGTERM, SIG_DFL);
signal(SIGPIPE, SIG_DFL);
signal(SIGALRM, SIG_DFL);
PluginManager.StopPlugins(); PluginManager.StopPlugins();
cRecordControls::Shutdown(); cRecordControls::Shutdown();
cCutter::Stop(); cCutter::Stop();