EIT: Fix possible wrong memory access in _eit_process_event()

This commit is contained in:
Jaroslav Kysela 2015-04-22 14:42:23 +02:00
parent 7749976fed
commit bfec4e7f9c

View file

@ -446,13 +446,14 @@ static int _eit_process_event
int r;
dtag = ptr[0];
dlen = ptr[1];
tvhtrace(mod->id, " dtag %02X dlen %d", dtag, dlen);
tvhlog_hexdump(mod->id, ptr+2, dlen);
dllen -= 2;
ptr += 2;
if (dllen < dlen) break;
tvhtrace(mod->id, " dtag %02X dlen %d", dtag, dlen);
tvhlog_hexdump(mod->id, ptr, dlen);
switch (dtag) {
case DVB_DESC_SHORT_EVENT:
r = _eit_desc_short_event(mod, ptr, dlen, &ev);