[ANNOUNCE] VDR developer version 1.7.3

Message ID 49652DDE.70501@gmx.de
State New
Headers

Commit Message

Reinhard Nissl Jan. 7, 2009, 10:34 p.m. UTC
  Hi,

according to documentation, cTsToPes::GetPes() shall return a
complete PES packet. The attached diff fixes this.

cDevice::PlayTsAudio() and cDevice::PlayTsSubtitle() have to
return the Length passed as parameter. But cTsToPes::GetPes()
modified this parameter. The attached diff fixes this like for
cDevice::PlayTsVideo().

Bye.
  

Patch

--- ../vdr-1.7.3-orig/remux.c	2009-01-06 15:46:21.000000000 +0100
+++ remux.c	2009-01-07 23:16:54.000000000 +0100
@@ -559,8 +559,10 @@  const uchar *cTsToPes::GetPes(int &Lengt
         }
      else {
         Length = PesLength(data);
-        offset = Length; // to make sure we break out in case of garbage data
-        return data;
+        if (Length <= length) {
+           offset = Length; // to make sure we break out in case of garbage data
+           return data;
+           }
         }
      }
   return NULL;