diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2012-01-12 12:25:54 +0100 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2012-01-12 12:25:54 +0100 |
commit | 70d4e5105bddded33457342f9d6f1c7502d87b69 (patch) | |
tree | 7cf8bfbef57b73b7b656406e12bc30b3f40c3830 /remux.c | |
parent | 44da06f3848d84961f9ae829adc32b088f167ab6 (diff) | |
download | vdr-70d4e5105bddded33457342f9d6f1c7502d87b69.tar.gz vdr-70d4e5105bddded33457342f9d6f1c7502d87b69.tar.bz2 |
Fixed a possible memory corruption in cTsToPes::GetPes()
Diffstat (limited to 'remux.c')
-rw-r--r-- | remux.c | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: remux.c 2.62 2011/09/04 13:09:06 kls Exp $ + * $Id: remux.c 2.63 2012/01/12 12:07:58 kls Exp $ */ #include "remux.h" @@ -701,6 +701,10 @@ const uchar *cTsToPes::GetPes(int &Length) uchar *p = data + offset - 6; if (p != data) { p -= 3; + if (p < data) { + Reset(); + return NULL; + } memmove(p, data, 4); } int l = min(length - offset, MAXPESLENGTH); |