Skip to content
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

Can’t load relatively big audio file #7546

Open
1 task done
M4rotte opened this issue Oct 15, 2024 · 4 comments
Open
1 task done

Can’t load relatively big audio file #7546

M4rotte opened this issue Oct 15, 2024 · 4 comments
Assignees
Labels

Comments

@M4rotte
Copy link

M4rotte commented Oct 15, 2024

System Information

Debian 12 - gcc 12.2.0

LMMS Version(s)

LMMS 1.3.0-alpha.1.713+gb8b1dae40

Most Recent Working Version

No response

Bug Summary

Hi,

I get a SIGABRT when trying to load a FLAC or WAV file if this file is too big.

No problem for most files but a big one crashes LMMS systematically (a 47MB mono 48kHz 24bit FLAC actually)

Starting program: /usr/local-debug/bin/lmms 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7ffff18006c0 (LWP 58130)]
[New Thread 0x7fffebe006c0 (LWP 58131)]
[New Thread 0x7fffeb4006c0 (LWP 58132)]
[New Thread 0x7fffe1a006c0 (LWP 58133)]
[New Thread 0x7fffe10006c0 (LWP 58134)]
[New Thread 0x7fffd4c006c0 (LWP 58135)]
[New Thread 0x7fffcfe006c0 (LWP 58136)]
[New Thread 0x7fffcf4006c0 (LWP 58137)]
[New Thread 0x7fffcea006c0 (LWP 58138)]
[New Thread 0x7fffce0006c0 (LWP 58139)]
[New Thread 0x7fffcd6006c0 (LWP 58140)]
[New Thread 0x7fffccc006c0 (LWP 58141)]
[New Thread 0x7fffc3e006c0 (LWP 58142)]
[New Thread 0x7fffc34006c0 (LWP 58143)]
[Thread 0x7fffc34006c0 (LWP 58143) exited]
[Thread 0x7fffccc006c0 (LWP 58141) exited]
[Thread 0x7fffc3e006c0 (LWP 58142) exited]
[Thread 0x7fffcd6006c0 (LWP 58140) exited]
[New Thread 0x7fffc34006c0 (LWP 58144)]
[New Thread 0x7fffc3e006c0 (LWP 58145)]
[New Thread 0x7fffccc006c0 (LWP 58146)]
[New Thread 0x7fffcd6006c0 (LWP 58147)]
[New Thread 0x7fffc2a006c0 (LWP 58148)]
[New Thread 0x7fffc20006c0 (LWP 58149)]
[New Thread 0x7fffc16006c0 (LWP 58150)]
[New Thread 0x7fffc0c006c0 (LWP 58151)]
[New Thread 0x7fffb7e006c0 (LWP 58152)]
[New Thread 0x7fffb74006c0 (LWP 58153)]
[New Thread 0x7fffb6a006c0 (LWP 58154)]
[New Thread 0x7fffb60006c0 (LWP 58155)]
[New Thread 0x7fffb56006c0 (LWP 58156)]
[New Thread 0x7fffb4c006c0 (LWP 58157)]
[New Thread 0x7fffabe006c0 (LWP 58158)]
[New Thread 0x7fffab4006c0 (LWP 58159)]
[New Thread 0x7fffaaa006c0 (LWP 58160)]
[New Thread 0x7fffaa0006c0 (LWP 58161)]
[New Thread 0x7fffa96006c0 (LWP 58162)]
[New Thread 0x7fffa8c006c0 (LWP 58163)]
[New Thread 0x7fff9fe006c0 (LWP 58164)]
[New Thread 0x7fff9f4006c0 (LWP 58165)]
[New Thread 0x7fff9ea006c0 (LWP 58166)]
Lv2 plugin SUMMARY: 231 of 426  loaded in 949 msecs.
For details about not loaded plugins, please set
  environment variable "LMMS_LV2_DEBUG" to nonempty.
Blocked Lv2 Plugins: 63 of 426 
  If you want to enable them (dangerous!), please set
  environment variable "LMMS_ENABLE_BLOCKED_PLUGINS" to nonempty.
BFD: erreur: /usr/lib/debug/.build-id/cc/afe3dc4ac3456c1d7b9cbeeb21b4dea429eb4b.debug(.debug_info) est trop grand (0x15f8ad octets)
warning: Can't read data for section '.debug_info' in file '/usr/lib/debug/.build-id/cc/afe3dc4ac3456c1d7b9cbeeb21b4dea429eb4b.debug'
warning: Section .debug_aranges in /usr/lib/debug/.build-id/cc/afe3dc4ac3456c1d7b9cbeeb21b4dea429eb4b.debug entry at offset 0 debug_info_offset 0 does not exists, ignoring .debug_aranges.
[New Thread 0x7fff85c006c0 (LWP 58167)]
[New Thread 0x7fff852006c0 (LWP 58168)]
[New Thread 0x7fff7be006c0 (LWP 58169)]
malloc(): invalid size (unsorted)

Thread 1 "lmms" received signal SIGABRT, Aborted.
__pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44
44	./nptl/pthread_kill.c: Aucun fichier ou dossier de ce type.
(gdb) bt full
#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44
        tid = <optimized out>
        ret = 0
        pd = <optimized out>
        old_mask = {__val = {79235201707409409}}
        ret = <optimized out>
#1  0x00007ffff60a9e9f in __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78
#2  0x00007ffff605afb2 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
        ret = <optimized out>
#3  0x00007ffff6045472 in __GI_abort () at ./stdlib/abort.c:79
        save_stage = 1
        act = {__sigaction_handler = {sa_handler = 0x20, sa_sigaction = 0x20}, sa_mask = {__val = {79235201708130305, 79189022219829249, 79278082661744641, 79235201708326913, 79189022220025857, 79095563731730433, 79235201708523521, 79235201708589057, 79189022220288001, 79235201708720129, 79235201708785665, 79095563732123649, 79235201708916737, 4222128945627137, 65537, 2443836391427}}, sa_flags = 11, sa_restorer = 0x555556473910}
#4  0x00007ffff609e430 in __libc_message (action=action@entry=do_abort, fmt=fmt@entry=0x7ffff61b8459 "%s\n") at ../sysdeps/posix/libc_fatal.c:155
        ap = {{gp_offset = 24, fp_offset = 21845, overflow_arg_area = 0x7fffffffa000, reg_save_area = 0x7fffffff9f90}}
        fd = <optimized out>
        list = <optimized out>
        nlist = <optimized out>
        cp = <optimized out>
#5  0x00007ffff60b37ba in malloc_printerr (str=str@entry=0x7ffff61bb568 "malloc(): invalid size (unsorted)") at ./malloc/malloc.c:5660
#6  0x00007ffff60b68ac in _int_malloc (av=av@entry=0x7ffff61f1c60 <main_arena>, bytes=bytes@entry=112) at ./malloc/malloc.c:3998
        next = <optimized out>
        iters = <optimized out>
        nb = <optimized out>
        idx = <optimized out>
        bin = <optimized out>
        victim = <optimized out>
        size = <optimized out>
        victim_index = <optimized out>
        remainder = <optimized out>
        remainder_size = <optimized out>
        block = <optimized out>
        bit = <optimized out>
        map = <optimized out>
        fwd = <optimized out>
        bck = <optimized out>
        tcache_unsorted_count = 0
        tcache_nb = <optimized out>
        tc_idx = 6
        return_cached = <optimized out>
        __PRETTY_FUNCTION__ = "_int_malloc"
#7  0x00007ffff60b7909 in __GI___libc_malloc (bytes=112) at ./malloc/malloc.c:3323
        ar_ptr = 0x7ffff61f1c60 <main_arena>
        victim = <optimized out>
        tbytes = <optimized out>
        __PRETTY_FUNCTION__ = "__libc_malloc"
#8  0x00007ffff62a958c in operator new(unsigned long) () at /lib/x86_64-linux-gnu/libstdc++.so.6
#9  0x00007ffff731d432 in QBrush::init(QColor const&, Qt::BrushStyle) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#10 0x00007ffff74466b0 in QPen::QPen(QColor const&) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#11 0x00007ffff7407c0c in QPainter::setPen(QColor const&) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#12 0x0000555555986e30 in lmms::gui::SampleWaveform::visualize(lmms::gui::SampleWaveform::Parameters, QPainter&, QRect const&) (parameters=..., painter=..., rect=...) at /usr/local/src/lmms/src/gui/SampleWaveform.cpp:89
        lineY1 = 14
        maxRMS = 0
        minRMS = -0
        rmsLineY2 = 14
        lineY2 = 14
        lineX = 0
        rms = 0
        rmsLineY1 = 14
--Type <RET> for more, q to quit, c to continue without paging--
        i = 0
        x = 0
        height = 24
        width = 66266
        centerY = 14
        halfHeight = 12
        color = {cspec = QColor::Rgb, ct = {argb = {alpha = 65535, red = 65535, green = 36751, blue = 1285, pad = 0}, ahsv = {alpha = 65535, hue = 65535, saturation = 36751, value = 1285, pad = 0}, acmyk = {alpha = 65535, cyan = 65535, magenta = 36751, yellow = 1285, black = 0}, ahsl = {alpha = 65535, hue = 65535, saturation = 36751, lightness = 1285, pad = 0}, argbExtended = {alphaF16 = 65535, redF16 = 65535, greenF16 = 36751, blueF16 = 1285, pad = 0}, array = {65535, 65535, 36751, 1285, 0}}}
        rmsColor = {cspec = QColor::Rgb, ct = {argb = {alpha = 65535, red = 65535, green = 43504, blue = 16358, pad = 0}, ahsv = {alpha = 65535, hue = 65535, saturation = 43504, value = 16358, pad = 0}, acmyk = {alpha = 65535, cyan = 65535, magenta = 43504, yellow = 16358, black = 0}, ahsl = {alpha = 65535, hue = 65535, saturation = 43504, lightness = 16358, pad = 0}, argbExtended = {alphaF16 = 65535, redF16 = 65535, greenF16 = 43504, blueF16 = 16358, pad = 0}, array = {65535, 65535, 43504, 16358, 0}}}
        framesPerPixel = 1265.95471
        maxFramesPerPixel = 512
        resolution = 2.4725678
        framesPerResolution = 512
        numPixels = 66266
        min = std::vector of length 66266, capacity 66266 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0...}
        max = std::vector of length 66266, capacity 66266 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0...}
        squared = std::vector of length 66266, capacity 66266 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0...}
        maxFrames = 83889752
        pixelIndex = 66266
#13 0x00005555559a4f5d in lmms::gui::SampleClipView::paintEvent(QPaintEvent*) (this=0x7fffec018bd0, pe=0x7fffffffa770) at /usr/local/src/lmms/src/gui/clips/SampleClipView.cpp:277
        painter = {d_ptr = {d = 0x55555d23fc50}}
        p = {d_ptr = {d = 0x55555d234af0}}
        muted = false
        selected = false
        lingrad = {<QGradient> = {m_type = QGradient::LinearGradient, m_spread = QGradient::PadSpread, m_stops = {d = 0x55555d23fb10}, m_data = {linear = {x1 = 0, y1 = 0, x2 = 0, y2 = 31}, radial = {cx = 0, cy = 0, fx = 0, fy = 31, cradius = 6.9533558066966771e-310}, conical = {cx = 0, cy = 0, angle = 0}}, dummy = 0x0}, <No data fields>}
        c = {cspec = QColor::Rgb, ct = {argb = {alpha = 65535, red = 10794, green = 13107, blue = 15163, pad = 0}, ahsv = {alpha = 65535, hue = 10794, saturation = 13107, value = 15163, pad = 0}, acmyk = {alpha = 65535, cyan = 10794, magenta = 13107, yellow = 15163, black = 0}, ahsl = {alpha = 65535, hue = 10794, saturation = 13107, lightness = 15163, pad = 0}, argbExtended = {alphaF16 = 65535, redF16 = 10794, greenF16 = 13107, blueF16 = 15163, pad = 0}, array = {65535, 10794, 13107, 15163, 0}}}
        clipColor = {cspec = QColor::Rgb, ct = {argb = {alpha = 65535, red = 65535, green = 36751, blue = 1285, pad = 0}, ahsv = {alpha = 65535, hue = 65535, saturation = 36751, value = 1285, pad = 0}, acmyk = {alpha = 65535, cyan = 65535, magenta = 36751, yellow = 1285, black = 0}, ahsl = {alpha = 65535, hue = 65535, saturation = 36751, lightness = 1285, pad = 0}, argbExtended = {alphaF16 = 65535, redF16 = 65535, greenF16 = 36751, blueF16 = 1285, pad = 0}, array = {65535, 65535, 36751, 1285, 0}}}
        spacing = 3
        ppb = 65
        nom = 4
        den = 4
        ticksPerBar = 192
        offset = 0
        r = {x1 = 0, y1 = 3, x2 = 66265, y2 = 26}
        sample = Python Exception <class 'gdb.error'>: There is no member or method named _M_fp.
Python Exception <class 'gdb.error'>: There is no member or method named _M_fp.
@0x55555cbecee8: {static s_interpolationMargins = {_M_elems = {64, 64, 64, 4, 4}}, m_buffer = std::shared_ptr<const class lmms::SampleBuffer> (use count 1, weak count 0) = {get() = 0x55555d239910}, m_startFrame = std::atomic<int> = { 0 }, m_endFrame = std::atomic<int> = { 83889755 }, m_loopStartFrame = std::atomic<int> = { 0 }, m_loopEndFrame = std::atomic<int> = { 83889755 }, m_amplification = , m_frequency = , m_reversed = std::atomic<bool> = { false }}
        waveform = {buffer = 0x7ffed3c00010, size = 83889755, amplification = 1, reversed = false}
        name = {d = 0x30f0a6edb6594f00}
#14 0x00007ffff79a4db8 in QWidget::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#15 0x00007ffff7962fae in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#16 0x00007ffff6cb1738 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#17 0x00007ffff799d0d5 in QWidgetPrivate::sendPaintEvent(QRegion const&) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#18 0x00007ffff799d9d1 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#19 0x00007ffff799ecd6 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) ()
--Type <RET> for more, q to quit, c to continue without paging--
    at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#20 0x00007ffff799d64c in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#21 0x00007ffff799ecd6 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) ()
    at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#22 0x00007ffff799d64c in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#23 0x00007ffff799ecd6 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) ()
    at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#24 0x00007ffff799d64c in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#25 0x00007ffff799ecd6 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) ()
    at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#26 0x00007ffff799d64c in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#27 0x00007ffff799ecd6 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) ()
    at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#28 0x00007ffff799d64c in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#29 0x00007ffff799ecd6 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) ()
    at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#30 0x00007ffff799eb39 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) ()
    at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#31 0x00007ffff799eb39 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) ()
    at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#32 0x00007ffff799d64c in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#33 0x00007ffff799ecd6 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) ()
    at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#34 0x00007ffff799d64c in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#35 0x00007ffff799ecd6 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) ()
    at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#36 0x00007ffff799d64c in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#37 0x00007ffff799ecd6 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) ()
    at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#38 0x00007ffff799d64c in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#39 0x00007ffff799ecd6 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) ()
    at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#40 0x00007ffff799d64c in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#41 0x00007ffff799ecd6 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) ()
    at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#42 0x00007ffff799d64c in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#43 0x00007ffff799ecd6 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) ()
    at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#44 0x00007ffff799d64c in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#45 0x00007ffff799ecd6 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) ()
    at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#46 0x00007ffff799d64c in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#47 0x00007ffff799ecd6 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) ()
    at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#48 0x00007ffff799d64c in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#49 0x00007ffff7974305 in  () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#50 0x00007ffff79a5078 in QWidget::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#51 0x00007ffff7962fae in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#52 0x00007ffff6cb1738 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#53 0x00007ffff6cb46c1 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#54 0x00007ffff6d0a193 in  () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#55 0x00007ffff571e7a9 in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#56 0x00007ffff571ea38 in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#57 0x00007ffff571eacc in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#58 0x00007ffff6d09876 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#59 0x00007ffff6cb01bb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#60 0x00007ffff6cb8316 in QCoreApplication::exec() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#61 0x00005555557de7f5 in main(int, char**) (argc=1, argv=0x7fffffffe078) at /usr/local/src/lmms/src/core/main.cpp:963
        coreOnly = false
--Type <RET> for more, q to quit, c to continue without paging--
        fullscreen = true
        exitAfterImport = false
        allowRoot = false
        renderLoop = false
        renderTracks = false
        fileToLoad = {d = 0x7ffff6d97b20 <QArrayData::shared_null>}
        fileToImport = {d = 0x7ffff6d97b20 <QArrayData::shared_null>}
        renderOut = {d = 0x7ffff6d97b20 <QArrayData::shared_null>}
        profilerOutputFile = {d = 0x7ffff6d97b20 <QArrayData::shared_null>}
        configFile = {d = 0x7ffff6d97b20 <QArrayData::shared_null>}
        app = 0x5555562c9580
        qs = {interpolation = lmms::AudioEngine::qualitySettings::Interpolation::Linear}
        os = {m_sampleRate = 44100, m_bitRateSettings = {m_bitRate = 160, m_isVariableBitRate = false}, m_bitDepth = lmms::OutputSettings::BitDepth::Depth16Bit, m_stereoMode = lmms::OutputSettings::StereoMode::JointStereo, m_compressionLevel = 0.625}
        eff = lmms::ProjectRenderer::ExportFileFormat::Wave
        pos = {d = 0x55555653c060}
        sa = {__sigaction_handler = {sa_handler = 0x1, sa_sigaction = 0x1}, sa_mask = {__val = {0, 43, 93824997937072, 45, 93824997937120, 47, 93824997937168, 49, 93824997937216, 53, 93824997937272, 41, 93824997937328, 38, 93824997937376, 41}}, sa_flags = 4, sa_restorer = 0x27}
        destroyEngine = false
        ret = 0

I used to load such “big” file in the past, but I can’t tell since when the bug exists as I haven’t use LMMS for a while.

Let me know if I can make any test. So far I just tried converting the FLAC to WAV (it’s then 239MB), same error.

Expected Behaviour

File loads

Steps To Reproduce

Add an audio track, drag’n’drop a >50MB audio file in it.

Logs

Click to expand
  

Screenshots / Minimum Reproducible Project

No response

Please search the issue tracker for existing bug reports before submitting your own.

  • I have searched all existing issues and confirmed that this is not a duplicate.
@M4rotte M4rotte added the bug label Oct 15, 2024
@michaelgregorius
Copy link
Contributor

michaelgregorius commented Oct 18, 2024

@M4rotte, to what number of samples does the FLAC decompress? I can load a stereo MP3 with 106598400 samples (around 40 minutes of audio) into a sample clip without any crashes (using b8b1dae).

Judging by the stack trace it looks like a problem with the painting code of the sample clip.

@M4rotte
Copy link
Author

M4rotte commented Oct 19, 2024

I don’t have this file anymore. But I just tried with another one, a 7 minutes only FLAC and got the same issue. I tried with it resampled to 16bit/44.1k but still the same.

The file has 18424197 samples.

I’ll make more tests and let you know.

@M4rotte
Copy link
Author

M4rotte commented Oct 20, 2024

it looks like a problem with the painting code of the sample clip.

Probably, because I’ve been able to load the same file in a “Audio file processor” and play it using a very long note (246 bars ^^) with no problem.

@sakertooth
Copy link
Contributor

I have the same problem as well. I'll look into this shortly.

@sakertooth sakertooth self-assigned this Nov 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants