From 87f4c5e280fac8e4a2bc86ea4675a76bf6b3d770 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96man?= Date: Sun, 7 Jun 2009 08:45:48 +0000 Subject: [PATCH] Scan for XMLTV grabbers in $PATH as well. --- debian/changelog | 3 +++ src/xmltv.c | 9 +++++++++ 2 files changed, 12 insertions(+) diff --git a/debian/changelog b/debian/changelog index 4ada55b1..516926d8 100644 --- a/debian/changelog +++ b/debian/changelog @@ -18,6 +18,9 @@ hts-tvheadend (2.2) hts; urgency=low * When deleting a channel any channel-bound autorecording would stay in memory and, sooner or later, cause a crash. This has now been fixed. + * Add extra scan for XMLTV grabbers in $PATH. Apart from $PATH we also + scan in /bin, /usr/bin, /usr/local/bin + -- Andreas Ă–man Wed, 03 Jun 2009 23:11:30 +0200 hts-tvheadend (2.1) hts; urgency=low diff --git a/src/xmltv.c b/src/xmltv.c index 76dd815b..864105dd 100644 --- a/src/xmltv.c +++ b/src/xmltv.c @@ -706,6 +706,7 @@ xmltv_grabbers_index(void) { xmltv_grabber_t *xg, *next; int change; + char *path, *p, *s; LIST_FOREACH(xg, &xmltv_grabbers, xg_link) xg->xg_dirty = 1; @@ -714,6 +715,14 @@ xmltv_grabbers_index(void) change |= xmltv_scan_grabbers("/usr/bin"); change |= xmltv_scan_grabbers("/usr/local/bin"); + if((path = getenv("PATH")) != NULL) { + p = path = strdup(path); + + while((s = strsep(&p, ":")) != NULL) + change |= xmltv_scan_grabbers(s); + free(path); + } + for(xg = LIST_FIRST(&xmltv_grabbers); xg != NULL; xg = next) { next = LIST_NEXT(xg, xg_link); if(xg->xg_dirty) {