bugGnash - The GNU Flash player - Bugs: bug #21729, Parsing error

 
 

bug #21729: Parsing error

Submitted by:  Benjamin Wolsey <bwy>
Submitted on:  Wed 05 Dec 2007 05:53:45 PM UTC  
 
Category: NoneSeverity: 5 - Blocker
Release: NoneStatus: Fixed
Privacy: PublicAssigned to: Sandro Santilli <strk>
Open/Closed: Closed

Add a New Comment(Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

(Jump to the original submission Jump to the original submission)

Tue 11 Dec 2007 10:07:49 AM UTC, comment #8:

I made the parser print an SWF error and tolerate the lack of 'latency' field. Ming detects the same malformation.
In order to tell if it is a malformation or a wrong expectance we should find other cases with embedded MP3 streams that work
w/out printing that message.

Btw, we still dont' use the 'latency' so it would be completely
safe to simply ignore that field

Sandro Santilli <strk>
Project MemberIn charge of this item.
Thu 06 Dec 2007 04:57:59 PM UTC, comment #7:

I can't see a reason for that read to do anything special.
there are no other reads from the stream I can see, so next
close_tag() should put the stream back in sync.

Can you tell more about the fix and the segfault ?

Sandro Santilli <strk>
Project MemberIn charge of this item.
Thu 06 Dec 2007 01:24:21 PM UTC, comment #6:

It wasn't much of a fix (gave segfaults) so I've reverted it.

Benjamin Wolsey <bwy>
Project Member
Thu 06 Dec 2007 12:51:24 PM UTC, comment #5:

Fixed for now; will need a revisit if latency is ever needed.

Benjamin Wolsey <bwy>
Project Member
Thu 06 Dec 2007 11:28:32 AM UTC, comment #4:

No, changed my mind: it is the second ensureBytes (line 1258).

Benjamin Wolsey <bwy>
Project Member
Wed 05 Dec 2007 06:28:30 PM UTC, comment #3:

line 1235 did it.

Benjamin Wolsey <bwy>
Project Member
Wed 05 Dec 2007 06:18:01 PM UTC, comment #2:

Minght be an MP3 with 0 samples, thus with no need to read those 16 bits of garbage... no idea what that garbage is btw..

Sandro Santilli <strk>
Project MemberIn charge of this item.
Wed 05 Dec 2007 06:08:35 PM UTC, comment #1:

This is the change:

http://cvs.savannah.gnu.org/viewvc/gnash/server/swf/tag_loaders.cpp?root=gnash&r1=1.158&r2=1.159

can you check which line triggers the exception ?
should be one of the ensureBytes calls... also maybe check samplesCount value ?

Sandro Santilli <strk>
Project MemberIn charge of this item.
Wed 05 Dec 2007 05:53:45 PM UTC, original submission:

This commit:

2007-12-03 Sandro Santilli <strk@keybit.net>

  • server/swf/tag_loaders.cpp (sound_stream_head_loader): ensure

needed bytes are available, fix long read for mp3 case.

  • server/stream.cpp (open_tag): don't trust a tag advertising

to go past end of it's containing tag.

broke this SWF:

http://www.unrealtournament3.com/us/videos/e3_trailer.swf

with this error:

ERROR: Parsing exception: premature end of tag: need to read 2 bytes, but only 0 left in this tag.

Benjamin Wolsey <bwy>
Project Member

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by strk (Posted a comment)
  • -unavailable- added by bwy (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 5 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Wed 12 Dec 2007 02:11:29 PM UTCstrkStatusReady For Test=>Fixed
      Open/ClosedOpen=>Closed
    Tue 11 Dec 2007 10:07:49 AM UTCstrkStatusNone=>Ready For Test
    Wed 05 Dec 2007 06:08:35 PM UTCstrkSeverity3 - Normal=>5 - Blocker
      Assigned toNone=>strk

    Back to the top


    Powered by Savane 3.1-cleanup1