Bug 327333

Summary: Krita 2.8 (alpha): crash on Layer > Histogram
Product: [Applications] krita Reporter: Silvio Grosso <grossosilvio>
Component: Color modelsAssignee: Krita Bugs <krita-bugs-null>
Status: RESOLVED FIXED    
Severity: normal CC: halla
Priority: NOR    
Version: git master (please specify the git hash!)   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Silvio Grosso 2013-11-08 22:46:35 UTC
Krita 2.8 alpha (updated today through Dmitry's Lime ppa)
Ubuntu 13.10 - Unity
Vbox (Windows 7 is the host)

Reproducible: Always

Steps to Reproduce:
1. Fire up Krita
2. Open no matter what image (png, tiff etc)
3. Click on Layer > histogram (the crash always occurs here)

This same crash occurs on Windows 7 - 64 bit (krita installed today)
Actual Results:  
Krita always crashes when you try to get an Histogram

Expected Results:  
Krita should display the histogram no matter what image you choose

BACKTRACE FOR THIS CRASH:
Program received signal SIGABRT, Aborted.
0x00007ffff73a5f77 in __GI_raise (sig=sig@entry=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
56	../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) thread apply all bt

Thread 20 (Thread 0x7fffde523700 (LWP 4317)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007fffec9f006b in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#2  0x00007fffec9f00a9 in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#3  0x00007fffee59ef6e in start_thread (arg=0x7fffde523700)
    at pthread_create.c:311
#4  0x00007ffff74699cd in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 18 (Thread 0x7fffbbfff700 (LWP 4315)):
#0  0x00007ffff7461de3 in select () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007ffff4d4e37b in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timeval const*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2  0x00007ffff4d53904 in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timeval*) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#3  0x00007ffff4d53d02 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#4  0x00007ffff4d225ef in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#5  0x00007ffff4d228e5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>---Type <return> to continue, or q <return> to quit---
) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#6  0x00007ffff4c2188f in QThread::exec() ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#7  0x00007ffff4d03d13 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#8  0x00007ffff4c23f2f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#9  0x00007fffee59ef6e in start_thread (arg=0x7fffbbfff700)
    at pthread_create.c:311
#10 0x00007ffff74699cd in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 16 (Thread 0x7fffbb7fe700 (LWP 4313)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007ffff4c24406 in QWaitCondition::wait(QMutex*, unsigned long) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2  0x00007ffff5bf1086 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#3  0x00007ffff4c23f2f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#4  0x00007fffee59ef6e in start_thread (arg=0x7fffbb7fe700)
    at pthread_create.c:311
#5  0x00007ffff74699cd in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 7 (Thread 0x7fffc16c0700 (LWP 4300)):
---Type <return> to continue, or q <return> to quit---
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007ffff4c24406 in QWaitCondition::wait(QMutex*, unsigned long) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2  0x00007ffff4c209f3 in QSemaphore::tryAcquire(int, int) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#3  0x00007ffff35b61f3 in KisTileDataSwapper::waitForWork (
    this=<optimized out>)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/krita/image/tiles3/swap/kis_tile_data_swapper.cpp:86
#4  0x00007ffff35b641a in KisTileDataSwapper::run (this=0x1034a28)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/krita/image/tiles3/swap/kis_tile_data_swapper.cpp:92
#5  0x00007ffff4c23f2f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#6  0x00007fffee59ef6e in start_thread (arg=0x7fffc16c0700)
    at pthread_create.c:311
#7  0x00007ffff74699cd in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 6 (Thread 0x7fffded24700 (LWP 4299)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007ffff4c24406 in QWaitCondition::wait(QMutex*, unsigned long) ()
---Type <return> to continue, or q <return> to quit---
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2  0x00007ffff4c205eb in QSemaphore::acquire(int) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#3  0x00007ffff3588c3c in waitForWork (this=0x10349f0)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/krita/image/tiles3/kis_tile_data_pooler.cc:162
#4  KisTileDataPooler::run (this=0x10349f0)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/krita/image/tiles3/kis_tile_data_pooler.cc:184
#5  0x00007ffff4c23f2f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#6  0x00007fffee59ef6e in start_thread (arg=0x7fffded24700)
    at pthread_create.c:311
#7  0x00007ffff74699cd in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 3 (Thread 0x7fffdf525700 (LWP 4295)):
#0  0x00007ffff745cf7d in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fffee0c66a4 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fffee0c67ac in g_main_context_iteration ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fffee0c67f9 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007fffee0eb0f5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007fffee59ef6e in start_thread (arg=0x7fffdf525700)
---Type <return> to continue, or q <return> to quit---
    at pthread_create.c:311
#6  0x00007ffff74699cd in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 2 (Thread 0x7fffe05ef700 (LWP 4294)):
#0  0x00007ffff745cf7d in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fffee0c66a4 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fffee0c6b0a in g_main_loop_run ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fffe4ba1b66 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#4  0x00007fffee0eb0f5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007fffee59ef6e in start_thread (arg=0x7fffe05ef700)
    at pthread_create.c:311
#6  0x00007ffff74699cd in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 1 (Thread 0x7ffff7fb87c0 (LWP 4290)):
#0  0x00007ffff73a5f77 in __GI_raise (sig=sig@entry=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1  0x00007ffff73a95e8 in __GI_abort () at abort.c:90
#2  0x00007ffff4c19912 in qt_message_output(QtMsgType, char const*) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#3  0x00007ffff4c19c79 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
---Type <return> to continue, or q <return> to quit---
#4  0x00007ffff4c1a484 in qFatal(char const*, ...) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#5  0x00007fffc1ff319e in LcmsColorSpace (p=0x1695000, 
    colorSpaceSignature=cmsSigXYZData, cmType=458905, name=..., id=..., 
    this=0x44a29e0)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/plugins/colorengines/lcms2/LcmsColorSpace.h:171
#6  YCbCrU8ColorSpace::YCbCrU8ColorSpace (this=0x44a29e0, name=..., 
    p=0x1695000)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/plugins/colorengines/lcms2/colorspaces/ycbcr_u8/YCbCrU8ColorSpace.cpp:29
#7  0x00007fffc20b0f3e in YCbCrU8ColorSpaceFactory::createColorSpace (
    this=<optimized out>, p=<optimized out>)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/plugins/colorengines/lcms2/colorspaces/ycbcr_u8/YCbCrU8ColorSpace.h:92
#8  0x00007ffff187b915 in KoColorSpaceFactory::grabColorSpace (
    this=this@entry=0xf58e00, profile=0xe16920)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/libs/pigment/KoColorSpaceFactory.cpp:94
#9  0x00007ffff18825b8 in KoColorSpaceRegistry::colorSpace (
    this=this@entry=0xde3b00, csID=..., pName=...)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/libs/pigment/KoColorSpaceRegistry.cpp:340
---Type <return> to continue, or q <return> to quit---
#10 0x00007ffff1883b26 in KoColorSpaceRegistry::colorSpace (
    this=this@entry=0xde3b00, csID=..., profile=profile@entry=0x0)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/libs/pigment/KoColorSpaceRegistry.cpp:413
#11 0x00007ffff1884212 in KoColorSpaceRegistry::colorSpace (this=0xde3b00, 
    colorModelId=..., colorDepthId=..., profile=profile@entry=0x0)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/libs/pigment/KoColorSpaceRegistry.cpp:209
#12 0x00007fffc20b1afe in KoBasicHistogramProducerFactory<KoBasicU8HistogramProducer>::generate (this=0xf5a530)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/libs/pigment/KoBasicHistogramProducers.h:162
#13 0x00007ffff6e3b702 in KisHistogramView::setChannels (
    this=this@entry=0x1354760)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/krita/ui/kis_histogram_view.cc:244
#14 0x00007ffff6e3f3c7 in KisHistogramView::setPaintDevice (this=0x1354760, 
    dev=..., bounds=...)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/krita/ui/kis_histogram_view.cc:66
#15 0x00007fffac47bc5a in KisHistogramWidget::setPaintDevice (this=0x632c380, 
    dev=..., bounds=...)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/krita/plugins/extensi---Type <return> to continue, or q <return> to quit---
ons/histogram/kis_histogram_widget.cc:58
#16 0x00007fffac47a96f in DlgHistogram::setPaintDevice (
    this=this@entry=0x46126c0, dev=..., bounds=...)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/krita/plugins/extensions/histogram/dlg_histogram.cc:53
#17 0x00007fffac4793c7 in Histogram::slotActivated (this=<optimized out>)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/krita/plugins/extensions/histogram/histogram.cc:62
#18 0x00007fffac479ef7 in Histogram::qt_static_metacall (_o=0x487e6a0, 
    _c=4290, _id=0, _a=0xffffffffffffffff)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/obj-x86_64-linux-gnu/krita/plugins/extensions/histogram/histogram.moc:49
#19 0x00007ffff4d37a58 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#20 0x00007ffff570ea32 in QAction::triggered(bool) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#21 0x00007ffff5710403 in QAction::activate(QAction::ActionEvent) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#22 0x00007ffff5b3d7f9 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#23 0x00007ffff5b41d19 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#24 0x00007ffff64d5175 in KMenu::mouseReleaseEvent(QMouseEvent*) ()
   from /usr/lib/libkdeui.so.5
#25 0x00007ffff576431e in QWidget::event(QEvent*) ()
---Type <return> to continue, or q <return> to quit---
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#26 0x00007ffff5b45aeb in QMenu::event(QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#27 0x00007ffff5714dfc in QApplicationPrivate::notify_helper(QObject*, QEvent*)
    () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#28 0x00007ffff571b5ad in QApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#29 0x00007ffff68a7257 in KoApplication::notify (this=<optimized out>, 
    receiver=0x3a031e0, event=0x7fffffffd780)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/libs/main/KoApplication.cpp:569
#30 0x00007ffff4d238bd in QCoreApplication::notifyInternal(QObject*, QEvent*)
    () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#31 0x00007ffff571ad63 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#32 0x00007ffff578fb0c in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#33 0x00007ffff578f079 in QApplication::x11ProcessEvent(_XEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#34 0x00007ffff57b7290 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#35 0x00007ffff4d225ef in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#36 0x00007ffff4d228e5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>---Type <return> to continue, or q <return> to quit---
) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#37 0x00007ffff4d27e5b in QCoreApplication::exec() ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#38 0x00007ffff7973945 in kdemain (argc=<optimized out>, argv=<optimized out>)
    at /build/buildd/krita-testing-2+git20131108+r74263-45/krita/main.cc:99
#39 0x00007ffff7390de5 in __libc_start_main (main=
    0x4006e0 <main(int, char**)>, argc=1, ubp_av=0x7fffffffdef8, 
    init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, 
    stack_end=0x7fffffffdee8) at libc-start.c:260
#40 0x000000000040070e in _start ()
Comment 1 Halla Rempt 2013-11-11 10:12:22 UTC
Interesting, this crash is related to the unittests that Friedrich is trying to fix.
Comment 2 Halla Rempt 2013-11-15 10:32:12 UTC
Git commit b96eefb3291af944e5b2262e410774ed5112cf32 by Boudewijn Rempt.
Committed on 15/11/2013 at 10:31.
Pushed by rempt into branch 'master'.

If we cannot establish a profileName, do not create a colorspace

M  +10   -1    libs/pigment/KoColorSpaceRegistry.cpp

http://commits.kde.org/calligra/b96eefb3291af944e5b2262e410774ed5112cf32