diff options
| author | ghost <andreas.monzner@multimedia-labs.de> | 2010-11-07 10:36:59 +0100 |
|---|---|---|
| committer | ghost <andreas.monzner@multimedia-labs.de> | 2010-11-07 10:36:59 +0100 |
| commit | 4ed3a1ba4db2e01d717149e350e867d23cdd1b7b (patch) | |
| tree | c54a5e12bd46cef2a0a2a81cadd63acb57e73061 | |
| parent | f4fb876e88bdd4ce3672a484d16ed6991c25cbba (diff) | |
| download | enigma2-4ed3a1ba4db2e01d717149e350e867d23cdd1b7b.tar.gz enigma2-4ed3a1ba4db2e01d717149e350e867d23cdd1b7b.zip | |
use a notifier to immediate apply changed epg data file/path (it is then use on e2 shutdown to store the epg at the new position)
| -rw-r--r-- | lib/dvb/epgcache.cpp | 7 | ||||
| -rwxr-xr-x | mytest.py | 4 |
2 files changed, 6 insertions, 5 deletions
diff --git a/lib/dvb/epgcache.cpp b/lib/dvb/epgcache.cpp index 15248a6b..8ac0c718 100644 --- a/lib/dvb/epgcache.cpp +++ b/lib/dvb/epgcache.cpp @@ -234,15 +234,14 @@ eEPGCache::eEPGCache() void eEPGCache::setCacheFile(const char *path) { - if (!strlen(m_filename)) + bool inited = !!strlen(m_filename); + strncpy(m_filename, path, 1024); + if (!inited) { - strncpy(m_filename, path, 1024); eDebug("[EPGC] setCacheFile read/write epg data from/to '%s'", m_filename); if (eDVBLocalTimeHandler::getInstance()->ready()) timeUpdated(); } - else - eDebug("[EPGC] setCacheFile already called... ignore '%s'", path); } void eEPGCache::timeUpdated() @@ -58,7 +58,9 @@ config.misc.startCounter = ConfigInteger(default=0) # number of e2 starts... config.misc.standbyCounter = NoSave(ConfigInteger(default=0)) # number of standby config.misc.epgcache_filename = ConfigText(default = "/hdd/epg.dat") -eEPGCache.getInstance().setCacheFile(config.misc.epgcache_filename.value) +def setEPGCachePath(configElement): + eEPGCache.getInstance().setCacheFile(configElement.value) +config.misc.epgcache_filename.addNotifier(setEPGCachePath) #demo code for use of standby enter leave callbacks #def leaveStandby(): |
