diff options
author | A. Wilcox <AWilcox@Wilcox-Tech.com> | 2019-08-09 07:21:00 +0000 |
---|---|---|
committer | A. Wilcox <AWilcox@Wilcox-Tech.com> | 2019-08-09 07:21:00 +0000 |
commit | fbef86fd7c6f53ccc77e59d2d076aa3015e83472 (patch) | |
tree | 89518ccbabb854f45221f7cb063a5e05ba1533ed /user/libnfs | |
parent | dfb5918749f143a5d318e5018a1bac254c07abd8 (diff) | |
download | packages-fbef86fd7c6f53ccc77e59d2d076aa3015e83472.tar.gz packages-fbef86fd7c6f53ccc77e59d2d076aa3015e83472.tar.bz2 packages-fbef86fd7c6f53ccc77e59d2d076aa3015e83472.tar.xz packages-fbef86fd7c6f53ccc77e59d2d076aa3015e83472.zip |
user/gwenview: fix stack size overflow
When opening a .CR2 Canon RAW image, attempting to load the embedded
preview for the thumbnail bar would result in a segmentation fault on
at least x86_64, with the backtrace:
Thread 4 "Thread (pooled)" received signal SIGSEGV, Segmentation fault.
[Switching to LWP 10859]
KDcrawIface::KDcraw::loadEmbeddedPreview (imgData=..., buffer=...) at /usr/src/packages/user/libkdcraw/src/libkdcraw-19.04.3/src/kdcraw.cpp:134
134 /usr/src/packages/user/libkdcraw/src/libkdcraw-19.04.3/src/kdcraw.cpp: No such file or directory.
(gdb) bt
#0 KDcrawIface::KDcraw::loadEmbeddedPreview (imgData=..., buffer=...) at /usr/src/packages/user/libkdcraw/src/libkdcraw-19.04.3/src/kdcraw.cpp:134
#1 0x00007ffff75c86af in Gwenview::LoadingDocumentImplPrivate::loadMetaInfo (this=0x555555f74a60)
at /usr/src/packages/user/gwenview/src/gwenview-19.04.3/lib/document/loadingdocumentimpl.cpp:208
#2 0x00007ffff75c6fca in non-virtual thunk to QtConcurrent::RunFunctionTask<bool>::run() () at /usr/include/c++/8.3.0/bits/exception.h:63
#3 0x00007ffff348905c in QThreadPoolThread::run (this=0x555555c6cd40) at thread/qthreadpool.cpp:99
#4 0x00007ffff348e18f in QThreadPrivate::start (arg=0x555555c6cd40) at thread/qthread_unix.cpp:368
#5 0x00007ffff7db7779 in start (p=<optimized out>) at src/thread/pthread_create.c:195
#6 0x00007ffff7dc5957 in __clone () at src/thread/x86_64/clone.s:22
(gdb) x/i $pc
=> 0x7ffff11e50f9 <KDcrawIface::KDcraw::loadEmbeddedPreview(QByteArray&, QBuffer const&)+41>: callq 0x7ffff11e3030 <_ZN11KDcrawIface6KDcraw8rawFilesEv@plt>
This is because the thumbnail was being loaded onto the thread's stack.
Bumping the per-thread stack size to 1 MiB fixes this for all .CR2 files
I have access to.
Diffstat (limited to 'user/libnfs')
0 files changed, 0 insertions, 0 deletions