# HG changeset patch # User diego # Date 1176123307 0 # Node ID 58f1856608f6d14572f63565777098218e6bae4a # Parent b3ee9a1526b08b9d357d0169939bfd1a6b6f2a58 scenario: A properly coded frame is followed by an end of sequence NAL unit, i.e. the four bytes 00 00 01 0a. When decode_nal() decodes the end of sequence NAL unit, it returns with dst_length == 0. The original code leads to a return -1 which discards the current properly decoded frame. patch by Reinhard Nissl, rnissl gmx de diff -r b3ee9a1526b0 -r 58f1856608f6 h264.c --- a/h264.c Sun Apr 08 20:24:16 2007 +0000 +++ b/h264.c Mon Apr 09 12:55:07 2007 +0000 @@ -8144,7 +8144,7 @@ } ptr= decode_nal(h, buf + buf_index, &dst_length, &consumed, h->is_avc ? nalsize : buf_size - buf_index); - if (ptr==NULL || dst_length <= 0){ + if (ptr==NULL || dst_length < 0){ return -1; } while(ptr[dst_length - 1] == 0 && dst_length > 1)