diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2009-08-16 10:54:36 +0200 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2009-08-16 10:54:36 +0200 |
commit | 99468a776ddd1870ac9aa0e306256c0b3080ff0f (patch) | |
tree | fd1733761f140aec612a60c89af23a53a374bd36 | |
parent | fbc3a77d60a61d9c3533cd001b874c635e2a154c (diff) | |
download | vdr-99468a776ddd1870ac9aa0e306256c0b3080ff0f.tar.gz vdr-99468a776ddd1870ac9aa0e306256c0b3080ff0f.tar.bz2 |
Fixed cDevice::PlayTsVideo() and cDevice::PlayTsAudio() in case only part of the buffer has been accepted by the device (cont'd)
-rw-r--r-- | device.c | 10 |
1 files changed, 5 insertions, 5 deletions
@@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: device.c 2.24 2009/06/21 13:26:06 kls Exp $ + * $Id: device.c 2.25 2009/08/16 10:54:36 kls Exp $ */ #include "device.h" @@ -1293,10 +1293,10 @@ int cDevice::PlayTsVideo(const uchar *Data, int Length) int l; while (const uchar *p = tsToPesVideo.GetPes(l)) { int w = PlayVideo(p, l); - if (w == 0) + if (w <= 0) { tsToPesVideo.SetRepeatLast(); - if (w <= 0) return w; + } } tsToPesVideo.Reset(); } @@ -1310,10 +1310,10 @@ int cDevice::PlayTsAudio(const uchar *Data, int Length) int l; if (const uchar *p = tsToPesAudio.GetPes(l)) { int w = PlayAudio(p, l, 0); - if (w == 0) + if (w <= 0) { tsToPesAudio.SetRepeatLast(); - if (w <= 0) return w; + } tsToPesAudio.Reset(); } tsToPesAudio.PutTs(Data, Length); |