New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Segfault During FLAC Moodbar Generation #6133

Open
TheYokai opened this Issue Sep 6, 2018 · 0 comments

Comments

Projects
None yet
1 participant
@TheYokai
Contributor

TheYokai commented Sep 6, 2018

  • I checked the issue tracker for similar issues
  • I checked the changelog if the issue is already resolved
  • I tried the latest Clementine build from here

System information

Please provide information about your system and the version of Clementine used.

  • Operating System: Ubuntu 18.04 bionic
  • Clementine version: Master

Behaviour

Playing a specific FLAC file/song caused clementine to crash during moodbar generation.

Steps to reproduce the problem (only for bugs)

I can provide the file necessary, if others have an issue reproducing.
Here is a GDB output log.

GNU gdb (Ubuntu 8.1-0ubuntu3) 8.1.0.20180409-git
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Registered pretty printers for UE4 classes
Reading symbols from clementine...(no debugging symbols found)...done.
(gdb) run
Starting program: /usr/local/bin/clementine 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffda2a6700 (LWP 7503)]
[New Thread 0x7fffd9aa5700 (LWP 7504)]
[New Thread 0x7fffd92a4700 (LWP 7505)]
[New Thread 0x7fffd8aa3700 (LWP 7506)]
[New Thread 0x7fffcb954700 (LWP 7508)]
[New Thread 0x7fffcb153700 (LWP 7509)]
[New Thread 0x7fffca952700 (LWP 7510)]
[New Thread 0x7fffca151700 (LWP 7511)]
[New Thread 0x7fffc94ed700 (LWP 7512)]
[New Thread 0x7fffc8cec700 (LWP 7513)]
[New Thread 0x7fffaffff700 (LWP 7514)]
[New Thread 0x7fffaf7fe700 (LWP 7520)]
[New Thread 0x7fffa3fff700 (LWP 7527)]
[New Thread 0x7fffa35cc700 (LWP 7528)]
[New Thread 0x7fffa2dcb700 (LWP 7529)]
[New Thread 0x7fffa1fae700 (LWP 7530)]
[New Thread 0x7fffa17ad700 (LWP 7531)]
[New Thread 0x7fffa0fac700 (LWP 7532)]
[New Thread 0x7fff77fff700 (LWP 7533)]
[New Thread 0x7fff777fe700 (LWP 7534)]
21:13:56.331 WARN  unknown                          Object::connect: No such signal Core::Internal::FancyTabWidget::CurrentChanged(int) 
21:13:56.331 WARN  unknown                          Object::connect:  (sender name:   'tabs') 
21:13:56.331 WARN  unknown                          Object::connect:  (receiver name: 'MainWindow') 
21:13:56.375 WARN  unknown                          No systemtrayicon available 
[Thread 0x7fffd92a4700 (LWP 7505) exited]
[Thread 0x7fffa35cc700 (LWP 7528) exited]
[New Thread 0x7fffa35cc700 (LWP 7537)]
[New Thread 0x7fffd92a4700 (LWP 7538)]
[New Thread 0x7fff6bbe4700 (LWP 7539)]
[New Thread 0x7fff6b1c6700 (LWP 7540)]
[Thread 0x7fff6b1c6700 (LWP 7540) exited]
[New Thread 0x7fff6b1c6700 (LWP 7541)]
[New Thread 0x7fff6a9c5700 (LWP 7542)]
[New Thread 0x7fff6a1c4700 (LWP 7543)]
[New Thread 0x7fff699c3700 (LWP 7544)]
[New Thread 0x7fff691c2700 (LWP 7545)]
[New Thread 0x7fff689c1700 (LWP 7546)]

Thread 23 "flacparse0:sink" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffd92a4700 (LWP 7538)]
0x0000555555c96704 in MoodbarBuilder::Init(int, int) ()
(gdb) bt
#0  0x0000555555c96704 in MoodbarBuilder::Init(int, int) ()
#1  0x0000555555a97523 in MoodbarPipeline::NewPadCallback(_GstElement*, _GstPad*, void*) ()
#2  0x00007fffecfacdae in ffi_call_unix64 ()
    at /usr/lib/x86_64-linux-gnu/libffi.so.6
#3  0x00007fffecfac71f in ffi_call () at /usr/lib/x86_64-linux-gnu/libffi.so.6
#4  0x00007ffff50f6761 in g_cclosure_marshal_generic ()
    at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#5  0x00007ffff50f5f6d in g_closure_invoke ()
    at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#6  0x00007ffff5108d3e in  () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#7  0x00007ffff51113f5 in g_signal_emit_valist ()
    at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#8  0x00007ffff5111e0f in g_signal_emit ()
    at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#9  0x00007ffff487a8b8 in gst_element_add_pad ()
    at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#10 0x00007fffecfacdae in ffi_call_unix64 ()
    at /usr/lib/x86_64-linux-gnu/libffi.so.6
#11 0x00007fffecfac71f in ffi_call () at /usr/lib/x86_64-linux-gnu/libffi.so.6
#12 0x00007ffff50f6761 in g_cclosure_marshal_generic ()
    at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#13 0x00007ffff50f5f6d in g_closure_invoke ()
---Type <return> to continue, or q <return> to quit---
    at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#14 0x00007ffff5108d3e in  () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#15 0x00007ffff51113f5 in g_signal_emit_valist ()
    at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#16 0x00007ffff5111e0f in g_signal_emit ()
    at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#17 0x00007ffff487a8b8 in gst_element_add_pad ()
    at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#18 0x00007fff755ab171 in gst_decode_bin_expose (dbin=dbin@entry=0x7fff90010020) at gstdecodebin2.c:4738
#19 0x00007fff755abee0 in source_pad_blocked_cb (pad=<optimized out>, info=<optimized out>, user_data=<optimized out>) at gstdecodebin2.c:4935
#20 0x00007ffff4894093 in  ()
    at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#21 0x00007ffff4e0c6b4 in g_hook_list_marshal ()
    at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#22 0x00007ffff4892635 in  ()
    at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#23 0x00007ffff4895553 in  ()
    at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#24 0x00007ffff4895a49 in  ()
    at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#25 0x00007ffff48934c0 in  ()
---Type <return> to continue, or q <return> to quit---
    at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#26 0x00007ffff489f97f in gst_pad_push_event ()
    at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#27 0x00007ffff536e183 in gst_pad_set_caps (caps=0x7fffc00fdd40, pad=0x555557b497e0) at /usr/include/gstreamer-1.0/gst/gstcompat.h:59
#28 0x00007ffff536e183 in gst_audio_decoder_negotiate_default (dec=0x7fffd02f2bc0) at gstaudiodecoder.c:650
#29 0x00007ffff536a33a in gst_audio_decoder_negotiate_unlocked (dec=0x7fffd02f2bc0) at gstaudiodecoder.c:709
#30 0x00007ffff536a33a in check_pending_reconfigure (dec=0x7fffd02f2bc0)
    at gstaudiodecoder.c:1112
#31 0x00007ffff536e72e in gst_audio_decoder_finish_frame (dec=dec@entry=0x7fffd02f2bc0, buf=buf@entry=0x7fffc402a930, frames=frames@entry=1)
    at gstaudiodecoder.c:1233
#32 0x00007fff6bbeccc8 in gst_flac_dec_write (frame=<optimized out>, frame=<optimized out>, frame=<optimized out>, frame=<optimized out>, buffer=0x7fffd02f6508, flacdec=0x7fffd02f2bc0) at gstflacdec.c:706
#33 0x00007fff6bbeccc8 in gst_flac_dec_write_stream (decoder=<optimized out>, frame=<optimized out>, buffer=0x7fffd02f6508, client_data=0x7fffd02f2bc0)
    at gstflacdec.c:728
#34 0x00007fffdeb1580f in  () at /usr/lib/x86_64-linux-gnu/libFLAC.so.8
#35 0x00007fffdeb18d1d in FLAC__stream_decoder_process_single ()
    at /usr/lib/x86_64-linux-gnu/libFLAC.so.8
---Type <return> to continue, or q <return> to quit---
#36 0x00007fff6bbec2a6 in gst_flac_dec_handle_frame (audio_dec=0x7fffd02f2bc0, buf=0x0) at gstflacdec.c:803
#37 0x00007ffff536ae99 in gst_audio_decoder_push_buffers (dec=dec@entry=0x7fffd02f2bc0, force=force@entry=0) at gstaudiodecoder.c:1540
#38 0x00007ffff536b28b in gst_audio_decoder_chain_forward (dec=dec@entry=0x7fffd02f2bc0, buffer=0x0, buffer@entry=0x7fffc402a4f0) at gstaudiodecoder.c:1654
#39 0x00007ffff536c4e7 in gst_audio_decoder_chain (pad=<optimized out>, parent=0x7fffd02f2bc0, buffer=0x7fffc402a4f0) at gstaudiodecoder.c:1914
#40 0x00007ffff48965fb in  ()
    at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#41 0x00007ffff489e933 in gst_pad_push ()
    at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#42 0x00007ffff4b81618 in gst_base_parse_push_frame ()
    at /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0
#43 0x00007ffff4b8417b in gst_base_parse_finish_frame ()
    at /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0
#44 0x00007fff742befe8 in gst_flac_parse_handle_frame (parse=0x7fffc406e970, frame=0x7fffc010e5e0, skipsize=<optimized out>) at gstflacparse.c:876
#45 0x00007ffff4b7c492 in  () at /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0
#46 0x00007ffff4b7cc2a in  () at /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0
#47 0x00007ffff4b7ffc3 in  () at /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0
#48 0x00007ffff48caf79 in  ()
    at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
---Type <return> to continue, or q <return> to quit---
#49 0x00007ffff4e447d0 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#50 0x00007ffff4e43e05 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#51 0x00007ffff57dd6db in start_thread (arg=0x7fffd92a4700)
    at pthread_create.c:463
#52 0x00007ffff0f7b88f in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
(gdb) ```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment