I have some m4b files that crash gtkpod when imported. They play normally with all other players that I tried. Checking the stack trace, the crash happens when it's reading the BPM value. If I clear the value with mp3tag, the files import normally.
Console Output:
Movie duration: 4521.064 seconds (01:15:21.06) - 0.00* kbp/sec bitrate (*=approximate)
Low-level details. Total tracks: 1
Trk Type Handler Kind Lang Bytes
1 soun Apple Sound Media Handler mp4a eng 35264824 Encoder: ily_038-e1500.jpg
62.40 kbp/s 4521.064 sec MPEG-4 AAC Low Complexity Profile channels: [2]
*** buffer overflow detected ***: /usr/bin/gtkpod terminated
======= Backtrace: =========
/lib64/libc.so.6(__fortify_fail+0x37)[0x7ffff5363b97]
/lib64/libc.so.6(+0x101ca0)[0x7ffff5361ca0]
/lib64/libc.so.6(+0x101129)[0x7ffff5361129]
/lib64/libc.so.6(_IO_default_xsputn+0x89)[0x7ffff52d6609]
/lib64/libc.so.6(_IO_vfprintf+0x17ea)[0x7ffff52a63fa]
/lib64/libc.so.6(__vsprintf_chk+0x97)[0x7ffff53611c7]
/lib64/libc.so.6(__sprintf_chk+0x7d)[0x7ffff536110d]
/lib64/libatomicparsley.so.0(_Z20APar_ExtractDataAtomi+0x1a4)[0x7fffb7d26144]
/lib64/libatomicparsley.so.0(AP_read_metadata+0x373)[0x7fffb7d2ea83]
/usr/lib64/gtkpod/libfiletype_m4a.so(m4a_get_file_info+0xec)[0x7fffb7f7b65c]
/lib64/libgtkpod.so.1(get_track_info_from_file+0x9e)[0x7ffff7ba921e]
/lib64/libgtkpod.so.1(add_track_by_filename+0x4bf)[0x7ffff7bab2ff]
/usr/lib64/gtkpod/libplaylist_display.so(+0xffb8)[0x7fffdd09dfb8]
/lib64/libgdk-3.so.0(+0x1eb80)[0x7ffff62fcb80]
/lib64/libglib-2.0.so.0(g_main_context_dispatch+0x135)[0x7ffff586f865]
/lib64/libglib-2.0.so.0(+0x47b98)[0x7ffff586fb98]
/lib64/libglib-2.0.so.0(g_main_loop_run+0x72)[0x7ffff586ff92]
/lib64/libgtk-3.so.0(gtk_main+0x8d)[0x7ffff672263d]
/usr/bin/gtkpod(main+0x11a)[0x407f6a]
/lib64/libc.so.6(__libc_start_main+0xf5)[0x7ffff5281975]
/usr/bin/gtkpod[0x407fc9]
======= Memory map: ========
[...]
Program received signal SIGABRT, Aborted.
0x00007ffff5294815 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:63
63 return INLINE_SYSCALL (tgkill, 3, pid, selftid, sig);
Missing debug package(s), you should install:
[....]
(gdb) where
#0 0x00007ffff5294815 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:63
#1 0x00007ffff5295e78 in __GI_abort () at abort.c:90
#2 0x00007ffff52d304b in __libc_message (do_abort=do_abort@entry=2, fmt=fmt@entry=0x7ffff53ceb16 "*** %s ***: %s terminated\n") at ../sysdeps/unix/sysv/linux/libc_fatal.c:197
#3 0x00007ffff5363b97 in __GI___fortify_fail (msg=msg@entry=0x7ffff53ceabc "buffer overflow detected") at fortify_fail.c:31
#4 0x00007ffff5361ca0 in __GI___chk_fail () at chk_fail.c:28
#5 0x00007ffff5361129 in _IO_str_chk_overflow (fp=<optimized out>, c=<optimized out>) at vsprintf_chk.c:33
#6 0x00007ffff52d6609 in __GI__IO_default_xsputn (f=0x7fffffffc3c0, data=<optimized out>, n=1) at genops.c:481
#7 0x00007ffff52a63fa in _IO_vfprintf_internal (s=s@entry=0x7fffffffc3c0, format=<optimized out>, format@entry=0x7fffb7d31743 "%hu\n", ap=ap@entry=0x7fffffffc4e8) at vfprintf.c:2041
#8 0x00007ffff53611c7 in ___vsprintf_chk (s=0x3345660 "120\365\377\177", flags=1, slen=4, format=0x7fffb7d31743 "%hu\n", args=args@entry=0x7fffffffc4e8) at vsprintf_chk.c:85
#9 0x00007ffff536110d in ___sprintf_chk (s=s@entry=0x3345660 "120\365\377\177", flags=flags@entry=1, slen=<optimized out>, format=<optimized out>) at sprintf_chk.c:32
#10 0x00007fffb7d26144 in sprintf (__fmt=<optimized out>, __s=<optimized out>) at /usr/include/bits/stdio2.h:34
#11 APar_ExtractDataAtom (this_atom_number=<optimized out>) at AtomicParsley.cpp:1750
#12 0x00007fffb7d2ea83 in AP_read_metadata (filePath=<optimized out>, track=0x3610b50) at AtomicParsleyBridge.cpp:290
#13 0x00007fffb7f7b65c in m4a_get_file_info (m4aFileName=0x35601d0 "/home/curtis/Music/mp3/Skip Moen/Genesis/Skip Moen - Genesis - 01 Genesis, Disc 1.m4b", error=<optimized out>)
at m4afile.c:76
#14 0x00007ffff7ba921e in get_track_info_from_file (name=name@entry=0x35601d0 "/home/curtis/Music/mp3/Skip Moen/Genesis/Skip Moen - Genesis - 01 Genesis, Disc 1.m4b",
orig_track=orig_track@entry=0x0, error=error@entry=0x7fffffffd8d8) at file.c:1185
#15 0x00007ffff7bab2ff in add_track_by_filename (itdb=0x1064e00, fname=0x35601d0 "/home/curtis/Music/mp3/Skip Moen/Genesis/Skip Moen - Genesis - 01 Genesis, Disc 1.m4b",
plitem=plitem@entry=0x2080800, descend=<optimized out>, addtrackfunc=addtrackfunc@entry=0x0, data=data@entry=0x0, error=error@entry=0x7fffffffd8d8) at file.c:1698
#16 0x00007fffdd09dfb8 in fileselection_add_files (playlist=0x2080800, names=<optimized out>) at playlist_display_actions.c:319
#17 fileselection_add_files_cb (data=0x3083300) at playlist_display_actions.c:374
#18 0x00007ffff62fcb80 in gdk_threads_dispatch () from /lib64/libgdk-3.so.0
#19 0x00007ffff586f865 in g_main_dispatch (context=0x657d40) at gmain.c:2715
#20 g_main_context_dispatch (context=context@entry=0x657d40) at gmain.c:3219
#21 0x00007ffff586fb98 in g_main_context_iterate (context=0x657d40, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3290
#22 0x00007ffff586ff92 in g_main_loop_run (loop=0x2bae6d0) at gmain.c:3484
#23 0x00007ffff672263d in gtk_main () from /lib64/libgtk-3.so.0
#24 0x0000000000407f6a in main (argc=1, argv=0x7fffffffdb48) at main.c:111
(gdb)
Hi Curtis,
Are you able to provide me a copy of the track so I can reproduce and debug please?
Cheers
phantomjinx