Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Calling ExtAudioFileDispose() on a large MP4 audio file causes a crash



Calling ExtAudioFileDispose() on a > 2 hour large MP4 audio file causes a crash.

 * ExtAudioFileDispose() calls AudioFileClose()
  * AudioFileClose() calls MP4AudioFile::Close()
  * As part of closing the mp4 file, MP4AudioFile::FillGaplessString() is called
  * MP4AudioFile::FillGaplessString() calls UInt32ToHexString with a sufficiently large value (value >= 0x10000000; see NOTES below)
  * UInt32ToHexString() calls sprintf() with a too-small stack-allocated buffer
  * At the end of UInt32ToHexString(), __stack_chk_guard is found to have been altered, and __stack_chk_fail() is called.
  * __stack_chk_fail() logs a message and calls __abort(), which terminates the process.


0   libSystem.B.dylib             	0x92978912 __kill + 10
1   libSystem.B.dylib             	0x92978904 kill$UNIX2003 + 32
2   libSystem.B.dylib             	0x92a0bb99 raise + 26
3   libSystem.B.dylib             	0x92a21be5 __abort + 124
4   libSystem.B.dylib             	0x92a04928 release_file_streams_for_task + 0
5   ....audio.toolbox.AudioToolbox	0x96996497 UInt32ToHexString(char*, unsigned long, unsigned long) + 183
6   ....audio.toolbox.AudioToolbox	0x96996556 MP4AudioFile::FillGaplessString(char*) + 110
7   ....audio.toolbox.AudioToolbox	0x969993ed MP4AudioFile::Close() + 627
8   ....audio.toolbox.AudioToolbox	0x968f6a25 AudioFileClose + 77
9   ....audio.toolbox.AudioToolbox	0x96959ef6 ExtAudioFile::Close() + 206
10  ....audio.toolbox.AudioToolbox	0x9695a03e ExtAudioFile::~ExtAudioFile() + 40
11  ....audio.toolbox.AudioToolbox	0x9694f89c XExtAudioFile::~XExtAudioFile() + 92
12  ....audio.toolbox.AudioToolbox	0x9694f554 ExtAudioFileDispose + 37


Anyone figured out a workaround?

Best Regards,
Robin
 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/coreaudio-api/email@hidden

This email sent to email@hidden



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.