diff options
author | Christian Wieninger <cwieninger (at) gmx (dot) de> | 2008-10-21 20:41:27 +0200 |
---|---|---|
committer | Christian Wieninger <cwieninger (at) gmx (dot) de> | 2008-10-21 20:41:27 +0200 |
commit | 1444bd7795170d841f919daea998ea496a5d77c6 (patch) | |
tree | 9ead0b2d44acbfe2ea4734f6fdf66343a8f8cd82 /menu_dirselect.c | |
parent | d04428ee6ea2ab584eb3b1dd9c8bd1d051137f42 (diff) | |
download | vdr-plugin-epgsearch-1444bd7795170d841f919daea998ea496a5d77c6.tar.gz vdr-plugin-epgsearch-1444bd7795170d841f919daea998ea496a5d77c6.tar.bz2 |
service interface 1.2 and patches by Rolf Ahrenberg
Diffstat (limited to 'menu_dirselect.c')
-rw-r--r-- | menu_dirselect.c | 54 |
1 files changed, 29 insertions, 25 deletions
diff --git a/menu_dirselect.c b/menu_dirselect.c index 3da5d65..8a590f9 100644 --- a/menu_dirselect.c +++ b/menu_dirselect.c @@ -123,7 +123,7 @@ void cMenuDirSelect::AddDistinct(const char* szText) Add(new cMenuDirItem(hk(szText))); } -void cMenuDirSelect::CreateDirSet() +void cMenuDirSelect::CreateDirSet(bool extraDirs) { directorySet.clear(); @@ -172,30 +172,34 @@ void cMenuDirSelect::CreateDirSet() } free(dir); } - cMutexLock SearchExtsLock(&SearchExts); - cSearchExt *searchExt = SearchExts.First(); - // add distinct directories from existing search timers - while (searchExt) - { - if (strlen(searchExt->directory) > 0) - directorySet.insert(searchExt->directory); - searchExt = SearchExts.Next(searchExt); - } - // add distinct directories from epgsearchdirs.conf - DirExts.Load(AddDirectory(CONFIGDIR, "epgsearchdirs.conf"), true); - cDirExt* DirExt = DirExts.First(); - while (DirExt) - { - directorySet.insert(DirExt->Name()); - DirExt = DirExts.Next(DirExt); - } - // add distinct directories from conf.d files - DirExt = ConfDDirExts.First(); - while (DirExt) - { - directorySet.insert(DirExt->Name()); - DirExt = ConfDDirExts.Next(DirExt); - } + + if (extraDirs) + { + cMutexLock SearchExtsLock(&SearchExts); + cSearchExt *searchExt = SearchExts.First(); + // add distinct directories from existing search timers + while (searchExt) + { + if (strlen(searchExt->directory) > 0) + directorySet.insert(searchExt->directory); + searchExt = SearchExts.Next(searchExt); + } + // add distinct directories from epgsearchdirs.conf + DirExts.Load(AddDirectory(CONFIGDIR, "epgsearchdirs.conf"), true); + cDirExt* DirExt = DirExts.First(); + while (DirExt) + { + directorySet.insert(DirExt->Name()); + DirExt = DirExts.Next(DirExt); + } + // add distinct directories from conf.d files + DirExt = ConfDDirExts.First(); + while (DirExt) + { + directorySet.insert(DirExt->Name()); + DirExt = ConfDDirExts.Next(DirExt); + } + } } |