diff options
| -rw-r--r-- | lib/dvb/db.cpp | 11 | ||||
| -rw-r--r-- | lib/dvb/db.h | 3 |
2 files changed, 10 insertions, 4 deletions
diff --git a/lib/dvb/db.cpp b/lib/dvb/db.cpp index b9d1108f..e1b19175 100644 --- a/lib/dvb/db.cpp +++ b/lib/dvb/db.cpp @@ -260,12 +260,17 @@ void eDVBService::setCacheEntry(cacheID id, int pid) DEFINE_REF(eDVBDB); - /* THIS CODE IS BAD. it should be replaced by somethine better. */ void eDVBDB::reloadServicelist() { + loadServicelist(CONFIGDIR"/enigma2/lamedb"); +} + + /* THIS CODE IS BAD. it should be replaced by somethine better. */ +void eDVBDB::loadServicelist(const char *file) +{ eDebug("---- opening lame channel db"); - FILE *f=fopen(CONFIGDIR"/enigma2/lamedb", "rt"); - if (!f) + FILE *f=fopen(file, "rt"); + if (!f && strcmp(file, CONFIGDIR"/enigma2/lamedb") == 0) { struct stat s; if ( !stat("lamedb", &s) ) diff --git a/lib/dvb/db.h b/lib/dvb/db.h index 44393afd..27ac368c 100644 --- a/lib/dvb/db.h +++ b/lib/dvb/db.h @@ -58,14 +58,15 @@ public: RESULT getBouquet(const eServiceReference &ref, eBouquet* &bouquet); ////// - void saveServicelist(); void loadBouquet(const char *path); eServiceReference searchReference(int tsid, int onid, int sid); eDVBDB(); virtual ~eDVBDB(); #endif + void loadServicelist(const char *filename); static eDVBDB *getInstance() { return instance; } void reloadServicelist(); + void saveServicelist(); void reloadBouquets(); }; |
