aboutsummaryrefslogtreecommitdiff
path: root/lib/dvb/epgcache.cpp
diff options
context:
space:
mode:
authorAndreas Monzner <andreas.monzner@multimedia-labs.de>2005-11-26 19:01:11 +0000
committerAndreas Monzner <andreas.monzner@multimedia-labs.de>2005-11-26 19:01:11 +0000
commitf94e2c9821eb8784ca03b7122485d4720ec6d6e6 (patch)
tree6da2323d2220093ea1c3756dbddb8e02fded2969 /lib/dvb/epgcache.cpp
parent68271eeaf83872270f13cc01e98960367d7d553f (diff)
downloadenigma2-f94e2c9821eb8784ca03b7122485d4720ec6d6e6.tar.gz
enigma2-f94e2c9821eb8784ca03b7122485d4720ec6d6e6.zip
add ability to select default encoding for dvb texts in many ways.. ( take a look in data/encodings.conf )
Diffstat (limited to 'lib/dvb/epgcache.cpp')
-rw-r--r--lib/dvb/epgcache.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/dvb/epgcache.cpp b/lib/dvb/epgcache.cpp
index 587d680c..6dea73bc 100644
--- a/lib/dvb/epgcache.cpp
+++ b/lib/dvb/epgcache.cpp
@@ -1066,7 +1066,8 @@ RESULT eEPGCache::lookupEventTime(const eServiceReference &service, time_t t, eP
{
Event ev((uint8_t*)data->get());
result = new eServiceEvent();
- ret = result->parseFrom(&ev);
+ const eServiceReferenceDVB &ref = (const eServiceReferenceDVB&)service;
+ ret = result->parseFrom(&ev, (ref.getTransportStreamID().get()<<16)|ref.getOriginalNetworkID().get());
}
return ret;
}
@@ -1123,7 +1124,8 @@ RESULT eEPGCache::lookupEventId(const eServiceReference &service, int event_id,
{
Event ev((uint8_t*)data->get());
result = new eServiceEvent();
- ret = result->parseFrom(&ev);
+ const eServiceReferenceDVB &ref = (const eServiceReferenceDVB&)service;
+ ret = result->parseFrom(&ev, (ref.getTransportStreamID().get()<<16)|ref.getOriginalNetworkID().get());
}
return ret;
}
@@ -1147,6 +1149,8 @@ RESULT eEPGCache::startTimeQuery(const eServiceReference &service, time_t begin,
}
else
m_timemap_cursor = It->second.second.begin();
+ const eServiceReferenceDVB &ref = (const eServiceReferenceDVB&)service;
+ currentQueryTsidOnid = (ref.getTransportStreamID().get()<<16) | ref.getOriginalNetworkID().get();
return 0;
}
return -1;
@@ -1188,7 +1192,7 @@ RESULT eEPGCache::getNextTimeEntry(ePtr<eServiceEvent> &result)
{
Event ev((uint8_t*)m_timemap_cursor++->second->get());
result = new eServiceEvent();
- return result->parseFrom(&ev);
+ return result->parseFrom(&ev, currentQueryTsidOnid);
}
return -1;
}