diff options
author | Klaus Schmidinger <kls (at) cadsoft (dot) de> | 2006-08-13 18:00:00 +0200 |
---|---|---|
committer | Klaus Schmidinger <kls (at) cadsoft (dot) de> | 2006-08-13 18:00:00 +0200 |
commit | f5ad8fc5d7679433faf6a7465b5cfd54a7c10f8b (patch) | |
tree | 3a96e6b94455356b9844f25a6d091832ef501546 /plugin.c | |
parent | 33f1491b18c201ecda4ff2c34f606d9f5f041489 (diff) | |
download | vdr-patch-lnbsharing-f5ad8fc5d7679433faf6a7465b5cfd54a7c10f8b.tar.gz vdr-patch-lnbsharing-f5ad8fc5d7679433faf6a7465b5cfd54a7c10f8b.tar.bz2 |
Version 1.4.1-4vdr-1.4.1-4
- Fixed converting the port number in the "connect from..." log message of SVDRP
(thanks to Ville Skyttä).
- Made the cCiSession members sessionId and resourceId uint16_t and uint32_t,
respectively, to match their types in the CI session data (thanks to Ville Skyttä
for reporting that there are places where ntohs() is assigned to different types).
- Changed the way a device is selected for receiving in order to keep devices with
CAMs better available, even if this means recording on the primary device (reported
by Jörn Reder; thanks to Anssi Hannula for improving handling Transfer Mode devices
in this).
- No longer stopping removing empty directories if an error occurs (thanks to
Oliver Endriss).
- Added a log error message to cPlugin::ConfigDirectory() in case a plugin calls it
from a separate thread (reported by Udo Richter).
Diffstat (limited to 'plugin.c')
-rw-r--r-- | plugin.c | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: plugin.c 1.22 2006/04/17 09:20:05 kls Exp $ + * $Id: plugin.c 1.23 2006/08/13 08:51:44 kls Exp $ */ #include "plugin.h" @@ -15,6 +15,7 @@ #include <time.h> #include "config.h" #include "interface.h" +#include "thread.h" #define LIBVDR_PREFIX "libvdr-" #define SO_INDICATOR ".so." @@ -137,6 +138,8 @@ void cPlugin::SetConfigDirectory(const char *Dir) const char *cPlugin::ConfigDirectory(const char *PluginName) { static char *buffer = NULL; + if (!cThread::IsMainThread()) + esyslog("ERROR: plugin '%s' called cPlugin::ConfigDirectory(), which is not thread safe!", PluginName ? PluginName : "<no name given>"); free(buffer); asprintf(&buffer, "%s/plugins%s%s", configDirectory, PluginName ? "/" : "", PluginName ? PluginName : ""); return MakeDirs(buffer, true) ? buffer : NULL; |