summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorManuel Reimer <manuel.reimer@gmx.de>2021-02-17 07:45:45 +0100
committerGitHub <noreply@github.com>2021-02-17 07:45:45 +0100
commit3d4027762c6560af2fd126805bc0392a570cf577 (patch)
treed1dc7305fff6ec5fa118cab5c2afeadf49bb69c2
parent36141d58b45db8dafb1e6c0a0987016151e0cd6e (diff)
parent56960c9091aeb1c1adce2aa7394291d9a1b51e6a (diff)
downloadvdr-plugin-graphlcd-3d4027762c6560af2fd126805bc0392a570cf577.tar.gz
vdr-plugin-graphlcd-3d4027762c6560af2fd126805bc0392a570cf577.tar.bz2
Merge pull request #6 from pbiering/fix-thread-stop1.0.5
Fix thread stop
-rw-r--r--HISTORY2
-rw-r--r--display.c2
-rw-r--r--plugin.c12
3 files changed, 13 insertions, 3 deletions
diff --git a/HISTORY b/HISTORY
index 364abc4..0592847 100644
--- a/HISTORY
+++ b/HISTORY
@@ -1,5 +1,7 @@
VDR Plugin 'graphlcd' Revision History
-------------------------------------
+2021-02-15: Version 1.0.5
+- [pbiering] move thread cancel in new introduced Stop() function (hint by VDR maintainer)
2021-02-08: Version 1.0.4
- [pbiering] add support for new feature: NumRecordings and ListRecordings
diff --git a/display.c b/display.c
index 0158366..aa16244 100644
--- a/display.c
+++ b/display.c
@@ -31,7 +31,7 @@
#include <vdr/remote.h>
cGraphLCDDisplay::cGraphLCDDisplay()
-: cThread("glcd_display"),
+: cThread("graphlcd_display"),
mLcd(NULL),
mScreen(NULL),
mSkin(NULL),
diff --git a/plugin.c b/plugin.c
index 65a59f8..97a8609 100644
--- a/plugin.c
+++ b/plugin.c
@@ -39,7 +39,7 @@
static const char * kPluginName = "graphlcd";
-static const char *VERSION = "1.0.4";
+static const char *VERSION = "1.0.5";
static const char *DESCRIPTION = trNOOP("Output to graphic LCD");
static const char *MAINMENUENTRY = NULL;
@@ -93,6 +93,7 @@ public:
virtual bool ProcessArgs(int argc, char * argv[]);
virtual bool Initialize();
virtual bool Start();
+ virtual void Stop(void);
virtual void Housekeeping();
virtual const char **SVDRPHelpPages(void);
virtual cString SVDRPCommand(const char *Command, const char *Option, int &ReplyCode);
@@ -120,8 +121,15 @@ cPluginGraphLCD::cPluginGraphLCD()
cPluginGraphLCD::~cPluginGraphLCD()
{
- for (unsigned int index = 0; index < GRAPHLCD_MAX_DISPLAYS; index++)
+}
+
+void cPluginGraphLCD::Stop(void)
+{
+ for (unsigned int index = 0; index < GRAPHLCD_MAX_DISPLAYS; index++) {
+ dsyslog("graphlcd plugin: DisconnectDisplay %d", index);
DisconnectDisplay(index);
+ };
+
mExtData->ReleaseExtData();
mExtData = NULL;
}