git.cweiske.de
/
enigma2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
raise exception when unknown setup id is searched for
[enigma2.git]
/
lib
/
dvb
/
epgcache.cpp
diff --git
a/lib/dvb/epgcache.cpp
b/lib/dvb/epgcache.cpp
index 356bd7c4502a42cbb87d29096f0b3e7e8f266963..6767c4ad4a93ed574736b797b7426428bdabc14c 100644
(file)
--- a/
lib/dvb/epgcache.cpp
+++ b/
lib/dvb/epgcache.cpp
@@
-1530,7
+1530,11
@@
RESULT eEPGCache::startTimeQuery(const eServiceReference &service, time_t begin,
}
}
}
}
- m_timemap_end = It->second.second.upper_bound(begin+minutes*60);
+ if (minutes != -1)
+ m_timemap_end = It->second.second.lower_bound(begin+minutes*60);
+ else
+ m_timemap_end = It->second.second.end();
+
currentQueryTsidOnid = (ref.getTransportStreamID().get()<<16) | ref.getOriginalNetworkID().get();
Unlock();
return 0;
currentQueryTsidOnid = (ref.getTransportStreamID().get()<<16) | ref.getOriginalNetworkID().get();
Unlock();
return 0;
@@
-1870,6
+1874,8
@@
PyObject *eEPGCache::lookupEvent(ePyObject list, ePyObject convertFunc)
}
}
}
}
}
}
+ else
+ handleEvent(0, dest_list, argstring, argcount, service, nowTime, service_name, convertFunc, convertFuncArgs);
Unlock();
}
else
Unlock();
}
else
@@
-2250,6
+2256,11
@@
PyObject *eEPGCache::search(ePyObject arg)
{
if (lookupEventId(ref, evid, ev))
eDebug("event not found !!!!!!!!!!!");
{
if (lookupEventId(ref, evid, ev))
eDebug("event not found !!!!!!!!!!!");
+ else
+ {
+ const eServiceReferenceDVB &dref = (const eServiceReferenceDVB&)ref;
+ ptr.parseFrom(ev, (dref.getTransportStreamID().get()<<16)|dref.getOriginalNetworkID().get());
+ }
}
// create service name
if (!service_name)
}
// create service name
if (!service_name)
@@
-2481,7
+2492,7
@@
void eEPGCache::privateSectionRead(const uniqueEPGKey ¤t_service, const __
int sid = data[ptr++] << 8;
sid |= data[ptr++];
int sid = data[ptr++] << 8;
sid |= data[ptr++];
-// WORKAROUND for wrong transmitted epg data (01.
08.2006
)
+// WORKAROUND for wrong transmitted epg data (01.
10.2007
)
if ( onid == 0x85 )
{
switch( (tsid << 16) | sid )
if ( onid == 0x85 )
{
switch( (tsid << 16) | sid )
@@
-2492,6
+2503,7
@@
void eEPGCache::privateSectionRead(const uniqueEPGKey ¤t_service, const __
case 0x0300f5: sid = 0xdc; break;
case 0x0400d2: sid = 0xe2; tsid = 0x11; break;
case 0x1100d3: sid = 0xe3; break;
case 0x0300f5: sid = 0xdc; break;
case 0x0400d2: sid = 0xe2; tsid = 0x11; break;
case 0x1100d3: sid = 0xe3; break;
+ case 0x0100d4: sid = 0xe4; tsid = 4; break;
}
}
////////////////////////////////////////////
}
}
////////////////////////////////////////////