[Flac-dev] [don@donarmstrong.com: Bug#274301: libflac4 segfaults on
corrupt flac files]
Matt Zimmerman
mdz at debian.org
Thu Sep 30 17:44:15 PDT 2004
----- Forwarded message from Don Armstrong <don at donarmstrong.com> -----
Date: Thu, 30 Sep 2004 16:19:41 -0700
From: Don Armstrong <don at donarmstrong.com>
Resent-From: Don Armstrong <don at donarmstrong.com>
To: submit at bugs.debian.org
Subject: Bug#274301: libflac4 segfaults on corrupt flac files
Severity: normal
Package: libflac4
Version: 1.1.0-11
Running ogg123 on http://rzlab.ucr.edu/debian/libflac/crash.flac
results in a segfault in libFLAC:
(gdb) bt full
#0 0x40205422 in FLAC__bitbuffer_read_rice_signed_block (bb=0x80601b8, vals=0x807dd80, nvals=4294967293, parameter=9,
read_callback=0x40220080 <read_callback_>, client_data=0x805ba58) at bitbuffer.c:2254
available_bits = 134733184
buffer = (
const FLAC__blurb *) 0x8060228 "oÐz\023\017\a÷ã»\216ãìßcðþ®Éåívcµ\201q\030NE+\030\213¾5*Õk?°R2·\035Ù\207iP!Ó\237¼óoQ»Ù\207°\202\"¯\235\220º\212UsÏÉv¹çf¼Û\231%\233¨¯qJôÎoLF\024Ъë>ôj%\237¿«"
i = 44552
j = 8
val_i = 70816
cbits = 1
uval = 631
msbs = 1
lsbs_left = 1
blurb = 158 '\236'
save_blurb = 196 'Ä'
state = 1
#1 0x4021f88d in read_residual_partitioned_rice_ (decoder=0x805ba58, predictor_order=3, partition_order=14, partitioned_rice_contents=0x805f478,
residual=0x807dd80) at stream_decoder.c:1975
rice_parameter = 9
i = 2
partition = 0
sample = 0
u = 4294967293
partitions = 16384
partition_samples = 0
#2 0x4021f01f in read_subframe_fixed_ (decoder=0x805ba58, channel=1, bps=16, order=3) at stream_decoder.c:1832
subframe = (FLAC__Subframe_Fixed *) 0x805f988
i32 = -31667
u32 = 14
u = 14
#3 0x4021ecd7 in read_subframe_ (decoder=0x805ba58, channel=1, bps=1) at stream_decoder.c:1751
x = 22
wasted_bits = 0
#4 0x4021e190 in read_frame_ (decoder=0x805ba58, got_a_frame=0xbffff360) at stream_decoder.c:1353
bps = 4294966980
channel = 1
i = 4294966980
mid = 1
side = 4608
left = 8
frame_crc = 4608
x = 248
#5 0x4021c6e0 in FLAC__stream_decoder_process_single (decoder=0x805ba58) at stream_decoder.c:596
got_a_frame = 0
#6 0x08053774 in EasyFLAC__process_single (decoder=0x805ba30) at ../../ogg123/easyflac.c:356
No locals.
#7 0x08052690 in flac_init (source=0x805aa60, ogg123_opts=0x8059d60, audio_fmt=0xbffff3e0, callbacks=0xbffff408, callback_arg=0x407ed008)
at ../../ogg123/flac_format.c:181
decoder = (decoder_t *) 0x805b990
private = (flac_private_t *) 0x805b9d0
ret = -1073745000
#8 0x0804fec0 in play (source_string=0x805b8d0 "crash.flac") at ../../ogg123/ogg123.c:464
transport = (transport_t *) 0x80586c0
format = (format_t *) 0x8058820
source = (data_source_t *) 0x805aa60
decoder = (decoder_t *) 0x10000000
decoder_callbacks = {printf_error = 0x804d0d8 <decoder_buffered_error_callback>,
printf_metadata = 0x804d255 <decoder_buffered_metadata_callback>}
decoder_callbacks_arg = (void *) 0x407ed008
old_audio_fmt = {big_endian = 0, word_size = 0, signed_sample = 0, rate = 0, channels = 0}
new_audio_fmt = {big_endian = 0, word_size = 2, signed_sample = 1, rate = 0, channels = 0}
reopen_arg = (audio_reopen_arg_t *) 0x0
eof = 0
eos = 0
ret = 0
nthc = 0
ntimesc = 0
next_status = 0
status_interval = 0
#9 0x0804fd23 in main (argc=2, argv=0xbffff584) at ../../ogg123/ogg123.c:393
optind = 1
playlist_array = (char **) 0x805b8c0
items = 1
stat_buf = {st_dev = 2073, __pad1 = 0, st_ino = 3041522, st_mode = 33188, st_nlink = 1, st_uid = 1000, st_gid = 1000, st_rdev = 0, __pad2 = 0,
st_size = 110592, st_blksize = 4096, st_blocks = 224, st_atim = {tv_sec = 1096585478, tv_nsec = 271352832}, st_mtim = {tv_sec = 1096585268,
tv_nsec = 0}, st_ctim = {tv_sec = 1096585340, tv_nsec = 284815843}, __unused4 = 0, __unused5 = 0}
i = 0
(gdb) info threads
* 1 process 8083 0x40205422 in FLAC__bitbuffer_read_rice_signed_block (bb=0x80601b8, vals=0x807dd80, nvals=4294967293, parameter=9,
read_callback=0x40220080 <read_callback_>, client_data=0x805ba58) at bitbuffer.c:2254
(gdb)
See http://rzlab.ucr.edu/debian/libflac/core and
http://rzlab.ucr.edu/debian/libflac/ for debugging versions of the
packages used to create the corefile and backtrace.
Don Armstrong
--
More than any other time in history, mankind faces a crossroads.
One path leads to despair and utter hopelessness.
The other, to total extinction.
Let us pray we have the wisdom to choose correctly.
-- Woody Allen
http://www.donarmstrong.com http://rzlab.ucr.edu
----- End forwarded message -----
--
- mdz
More information about the Flac-dev
mailing list