AtomicParsley crashes reading fragmented .ismv MP4s

Bug #342541 reported by Alex Converse
16
This bug affects 2 people
Affects Status Importance Assigned to Milestone
atomicparsley (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

Binary package hint: atomicparsley

Command:
$ AtomicParsley "Big Buck Bunny_300000.ismv" -T
(Files are available from: http://www.microsoft.com/downloads/details.aspx?FamilyID=e44b0a2d-2e0c-48ff-bf57-3d05a20e2f6a&displayLang=en )

Expected Behavior:
MP4 atom tree to be printed

Actual Behavior:
Segmentation fault

System Info:
$ lsb_release -rd
Description: Ubuntu 8.10
Release: 8.10
$ uname -a
Linux Barcelona 2.6.27-11-generic #1 SMP Thu Jan 29 19:28:32 UTC 2009 x86_64 GNU/Linux
$ apt-cache policy atomicparsley
atomicparsley:
  Installed: 0.9.0-0ubuntu2
  Candidate: 0.9.0-0ubuntu2
  Version table:
 *** 0.9.0-0ubuntu2 0
        500 http://us.archive.ubuntu.com intrepid/universe Packages
        100 /var/lib/dpkg/status

Revision history for this message
Mike Morony (michael-morony) wrote :

I've reproduced the bug on a personal test file (not attached, its a generic bug).

Basically the fault lies in the openSomeFile method which mistakenly keeps closing files, which means fseeko() was ultimately segfaulting because it was using a mish-mash of old and newly allocated FILE data (deep inside glibc).

Patch attached fixes that problem, and also two memory leaks as reported by valgrind.

Revision history for this message
Alex Converse (ajc30) wrote :

Hmm... that didn't quite do it for my fragmented files. Because the files are fragmented there are lots and lots of atoms and it appears we had a buffer overflow. This patch fixed it for me.

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in atomicparsley (Ubuntu):
status: New → Confirmed
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.