gnash-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnash-commit] [SCM] Gnash branch, master, updated. release_0_8_9_start-


From: Bastiaan Jacques
Subject: [Gnash-commit] [SCM] Gnash branch, master, updated. release_0_8_9_start-95-g0c40013
Date: Sun, 20 Feb 2011 18:02:15 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Gnash".

The branch, master has been updated
       via  0c40013e6832ecdc5bfc125f1673a235c0fae2de (commit)
      from  c3f8cad26d641f510f579af42d1d7e259dabb5cb (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.savannah.gnu.org/cgit//commit/?id=0c40013e6832ecdc5bfc125f1673a235c0fae2de


commit 0c40013e6832ecdc5bfc125f1673a235c0fae2de
Author: Bastiaan Jacques <address@hidden>
Date:   Sun Feb 20 19:00:35 2011 +0100

    For ScreenVideo, skip a byte that's not part of the bitstream. Fixes bug 
#22158.

diff --git a/libcore/swf/VideoFrameTag.cpp b/libcore/swf/VideoFrameTag.cpp
index 0f10556..521b1e5 100644
--- a/libcore/swf/VideoFrameTag.cpp
+++ b/libcore/swf/VideoFrameTag.cpp
@@ -65,8 +65,18 @@ VideoFrameTag::loader(SWFStream& in, SWF::TagType tag, 
movie_definition& m,
 
     const unsigned short padding = 8;
 
-       in.ensureBytes(2);
-       unsigned int frameNum = in.read_u16(); 
+    in.ensureBytes(3);
+    unsigned int frameNum = in.read_u16();
+
+    const media::VideoInfo* info = vs->getVideoInfo();
+
+    if (info && info->codec == media::VIDEO_CODEC_SCREENVIDEO) {
+        // According to swfdec, every SV frame comes with keyframe
+        // and format identifiers (4 bits each), but these are not
+        // part of the codec bitstream and break the decoder.
+        (void) in.read_u8();
+    }
+
        
        const unsigned int dataLength = in.get_tag_end_position() - in.tell();
 

-----------------------------------------------------------------------

Summary of changes:
 libcore/swf/VideoFrameTag.cpp |   14 ++++++++++++--
 1 files changed, 12 insertions(+), 2 deletions(-)


hooks/post-receive
-- 
Gnash



reply via email to

[Prev in Thread] Current Thread [Next in Thread]