summaryrefslogtreecommitdiff
path: root/epgsearchsvdrp.c
diff options
context:
space:
mode:
authorChristian Wieninger <cwieninger (at) gmx (dot) de>2009-01-04 12:42:52 +0100
committerChristian Wieninger <cwieninger (at) gmx (dot) de>2009-01-04 12:42:52 +0100
commit5f8d768468d71154e2bd29b667c6aa8af453fe27 (patch)
tree76bc0dd2dc38e695abfd554f78fdfb1621aa6c5b /epgsearchsvdrp.c
parent6c25a70aab63dc84ed1278195eef0a560005970d (diff)
downloadvdr-plugin-epgsearch-5f8d768468d71154e2bd29b667c6aa8af453fe27.tar.gz
vdr-plugin-epgsearch-5f8d768468d71154e2bd29b667c6aa8af453fe27.tar.bz2
use shutdown handler to prevent an interrupted search timer update
Diffstat (limited to 'epgsearchsvdrp.c')
-rw-r--r--epgsearchsvdrp.c19
1 files changed, 16 insertions, 3 deletions
diff --git a/epgsearchsvdrp.c b/epgsearchsvdrp.c
index 865e358..98e8678 100644
--- a/epgsearchsvdrp.c
+++ b/epgsearchsvdrp.c
@@ -66,7 +66,7 @@ const char **cPluginEpgsearch::SVDRPHelpPages(void)
"UPDS [ OSD ]\n"
" Update search timers.\n"
" If the optional keyword 'OSD' is passed, an OSD message\n"
- " will inform about update completion.",
+ " will inform about update completion.",
"UPDD\n"
" Reload epgsearchdone.data",
"SETS <ON|OFF>\n"
@@ -141,8 +141,21 @@ cString cPluginEpgsearch::SVDRPCommand(const char *Command, const char *Option,
{
if (strcasecmp(Command, "UPDS") == 0)
{
- updateForced = (Option && strcasecmp(Option, "OSD") == 0)?2:1;
- return cString("update triggered");
+ updateForced = 1;
+ if (Option)
+ {
+ char *pstrOptionToken, *pptr;
+ char *pstrOptions=strdup(Option);
+ pstrOptionToken=strtok_r(pstrOptions, " ", &pptr);
+ while(pstrOptionToken)
+ {
+ if (strcasecmp(Option, "OSD")==0)
+ updateForced |= UPDS_WITH_OSD;
+ pstrOptionToken=strtok_r(NULL, "|", &pptr);
+ }
+ free(pstrOptions);
+ }
+ return cString("update triggered");
}
else if (strcasecmp(Command, "UPDD") == 0)
{