release readiness

Boudewijn Rempt boud at valdyas.org
Thu Nov 24 12:22:51 UTC 2011


On Thursday 24 November 2011 Nov, David Revoy wrote:
> 
> On 24/11/2011 12:36, Timothée Giet wrote:
> >
> >
> > 2011/11/24 Boudewijn Rempt <boud at valdyas.org <mailto:boud at valdyas.org>>
> >
> >     ...* Preset creation (previews are broken, ...
> >
> >
> > Actually, I think the current preview behavior is not bad : the 
> > preview is not reloaded automatically when I select another preset, 
> > but I still can reload the preview of the current preset by clicking 
> > the first icon under the preview area.
> > This is good because I can use different presets to draw the preview, 
> > and this is cool (imagine you have to draw a preview for a smudge-only 
> > preset , it's useful to can switch to another to draw something then 
> > reselect the smudge preset and keep your work on the preview area… )
> >
> > One thing though this first button under preview area would deserve 
> > another icon, the current doesn't symbolize well the "load preview" 
> > action.
> 
> I have the same opinion about it. I like the current behavior for brush 
> creation ( the white page to retrieve old icon ) , but I also tooks a 
> bit of time to find it. Maybe a 'refresh' icon is more appropriate.
> 
> By the way , about brush preview since yesterday , painting inside the 
> preview area make Krita freeze ( one CPU 100% + modal windows of brush 
> preset on focus can't be escaped + icon of tools ); only way to escape 
> it is to open a terminal session with Ctrl+Alt+F4 and killall krita  , 
> then go back to the session Ctrl+Alt+F8
> 

Hm, yes. I can confirm that. (Though I don't know when that bug was introduced... I suspect earlier than yesterday, since I've also seen a report on the forum.) It's easier to investigate when the popup has been detached, the X11 grabbing is a result of the popup hanging in popup mode... It looks like it's not a real lockup, but rather a bug I introduced when making Krita compile on Windows last weekend, something in the KisDefaultBounds implementation that is only affected in the scratchpad. 


(gdb) thread apply all bt

Thread 7 (Thread 0x7fb115b2e700 (LWP 8912)):
#0  0x00007fb1348e0c63 in select () from /lib64/libc.so.6
#1  0x00007fb13d0bb6b1 in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timeval const*) () from /usr/lib64/libQtCore.so.4
#2  0x00007fb13d0c062d in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timeval*) () from /usr/lib64/libQtCore.so.4
#3  0x00007fb13d0c188f in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#4  0x00007fb13d092c22 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#5  0x00007fb13d092e35 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#6  0x00007fb13cfa7be4 in QThread::exec() () from /usr/lib64/libQtCore.so.4
#7  0x00007fb13d074358 in ?? () from /usr/lib64/libQtCore.so.4
#8  0x00007fb13cfaa4d5 in ?? () from /usr/lib64/libQtCore.so.4
#9  0x00007fb13cd19a3f in start_thread () from /lib64/libpthread.so.0
#10 0x00007fb1348e766d in clone () from /lib64/libc.so.6
#11 0x0000000000000000 in ?? ()

Thread 6 (Thread 0x7fb11bcb2700 (LWP 8919)):
#0  0x00007fb13cd1e38c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007fb13cfaabbb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4
#2  0x00007fb13cfa74c5 in QSemaphore::acquire(int) () from /usr/lib64/libQtCore.so.4
#3  0x00007fb13c148f4e in KisTileDataPooler::waitForWork (this=0x7eb8790) at /home/boud/kde/src/calligra/krita/image/tiles3/kis_tile_data_pooler.cc:162
#4  0x00007fb13c1496bc in KisTileDataPooler::run (this=0x7eb8790) at /home/boud/kde/src/calligra/krita/image/tiles3/kis_tile_data_pooler.cc:184
#5  0x00007fb13cfaa4d5 in ?? () from /usr/lib64/libQtCore.so.4
#6  0x00007fb13cd19a3f in start_thread () from /lib64/libpthread.so.0
#7  0x00007fb1348e766d in clone () from /lib64/libc.so.6
#8  0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7fb11632f700 (LWP 8920)):
#0  0x00007fb13cd1e38c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007fb13cfaabbb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4
#2  0x00007fb13cfa76f9 in QSemaphore::tryAcquire(int, int) () from /usr/lib64/libQtCore.so.4
#3  0x00007fb13c18152a in KisTileDataSwapper::run (this=0x7eb87c8) at /home/boud/kde/src/calligra/krita/image/tiles3/swap/kis_tile_data_swapper.cpp:92
#4  0x00007fb13cfaa4d5 in ?? () from /usr/lib64/libQtCore.so.4
#5  0x00007fb13cd19a3f in start_thread () from /lib64/libpthread.so.0
#6  0x00007fb1348e766d in clone () from /lib64/libc.so.6
#7  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7fb116b30700 (LWP 8925)):
#0  0x00007fb13cd1e38c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007fb13cfaabbb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4
#2  0x00007fb13635ad14 in ?? () from /usr/lib64/libQtGui.so.4
#3  0x00007fb13cfaa4d5 in ?? () from /usr/lib64/libQtCore.so.4
#4  0x00007fb13cd19a3f in start_thread () from /lib64/libpthread.so.0
#5  0x00007fb1348e766d in clone () from /lib64/libc.so.6
#6  0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7fb1113f7700 (LWP 8926)):
#0  0x00007fb1348e0c63 in select () from /lib64/libc.so.6
#1  0x00007fb13d0bb6b1 in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timeval const*) () from /usr/lib64/libQtCore.so.4
#2  0x00007fb13d0c062d in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timeval*) () from /usr/lib64/libQtCore.so.4
#3  0x00007fb13d0c188f in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#4  0x00007fb13d092c22 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#5  0x00007fb13d092e35 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#6  0x00007fb13cfa7be4 in QThread::exec() () from /usr/lib64/libQtCore.so.4
---Type <return> to continue, or q <return> to quit---
#7  0x00007fb13d074358 in ?? () from /usr/lib64/libQtCore.so.4
#8  0x00007fb13cfaa4d5 in ?? () from /usr/lib64/libQtCore.so.4
#9  0x00007fb13cd19a3f in start_thread () from /lib64/libpthread.so.0
#10 0x00007fb1348e766d in clone () from /lib64/libc.so.6
#11 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7fb110bf6700 (LWP 8929)):
#0  0x00007fb13cd1e6f9 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007fb13cfaab22 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4
#2  0x00007fb13cf9f458 in ?? () from /usr/lib64/libQtCore.so.4
#3  0x00007fb13cfaa4d5 in ?? () from /usr/lib64/libQtCore.so.4
#4  0x00007fb13cd19a3f in start_thread () from /lib64/libpthread.so.0
#5  0x00007fb1348e766d in clone () from /lib64/libc.so.6
#6  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fb13d7cf760 (LWP 8907)):
#0  0x00007fb13c1566a4 in ref (this=0x88b6aa0, col=-16752612, row=-16777216) at /usr/include/QtCore/qatomic_x86_64.h:121
#1  ref (this=0x88b6aa0, col=-16752612, row=-16777216) at /home/boud/kde/src/calligra/krita/image/kis_shared.h:38
#2  ref (this=0x88b6aa0, col=-16752612, row=-16777216) at /home/boud/kde/src/calligra/krita/image/kis_shared_ptr.h:199
#3  ref (this=0x88b6aa0, col=-16752612, row=-16777216) at /home/boud/kde/src/calligra/krita/image/kis_shared_ptr.h:203
#4  KisSharedPtr (this=0x88b6aa0, col=-16752612, row=-16777216) at /home/boud/kde/src/calligra/krita/image/kis_shared_ptr.h:103
#5  next (this=0x88b6aa0, col=-16752612, row=-16777216) at /home/boud/kde/src/calligra/krita/image/tiles3/kis_tile.h:100
#6  KisTileHashTableTraits<KisTile>::unlinkTile (this=0x88b6aa0, col=-16752612, row=-16777216) at /home/boud/kde/src/calligra/krita/image/tiles3/kis_tile_hash_table_p.h:130
#7  0x00007fb13c156c70 in KisTileHashTableTraits<KisTile>::deleteTile (this=0x88b6aa0, col=-16752612, row=-16777216)
    at /home/boud/kde/src/calligra/krita/image/tiles3/kis_tile_hash_table_p.h:242
#8  0x00007fb13c15188a in KisTiledDataManager::bitBltRough (this=0x8be65f0, srcDM=0x8b7f620, rect=<value optimized out>)
    at /home/boud/kde/src/calligra/krita/image/tiles3/kis_tiled_data_manager.cc:520
#9  0x00007fb13c3065c8 in bitBltRough (this=0x4c998c0, src=<value optimized out>, rect=<value optimized out>) at /home/boud/kde/src/calligra/krita/image/kis_datamanager.h:224
#10 KisPaintDevice::fastBitBltRough (this=0x4c998c0, src=<value optimized out>, rect=<value optimized out>) at /home/boud/kde/src/calligra/krita/image/kis_paint_device.cc:1096
#11 0x00007fb13c30684b in KisPaintDevice::makeCloneFromRough (this=0x4c998c0, src=<value optimized out>, minimalRect=...) at /home/boud/kde/src/calligra/krita/image/kis_paint_device.cc:303
#12 0x00007fb13c2c8453 in KisSafeProjection::getDeviceLazy (this=0x8b7ed38, prototype=<value optimized out>) at /home/boud/kde/src/calligra/krita/image/kis_layer.cc:62
#13 0x00007fb13c2c53e8 in KisLayer::updateProjection (this=0x8b7e9a0, rect=<value optimized out>) at /home/boud/kde/src/calligra/krita/image/kis_layer.cc:471
#14 0x00007fb13ca0b998 in KisScratchPad::paintEvent (this=0x8b3cd30, event=0x7fff00f9c6b0) at /home/boud/kde/src/calligra/krita/ui/widgets/kis_scratch_pad.cpp:298
#15 0x00007fb135ebcdce in QWidget::event(QEvent*) () from /usr/lib64/libQtGui.so.4
#16 0x00007fb135e6b264 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#17 0x00007fb135e7381a in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#18 0x00007fb136b82cf6 in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
#19 0x00007fb13d0937cc in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4
#20 0x00007fb135eb9ca2 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#21 0x00007fb135eba86f in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) ()
   from /usr/lib64/libQtGui.so.4
#22 0x00007fb135eb9a0a in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#23 0x00007fb135eba86f in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) ()
   from /usr/lib64/libQtGui.so.4
#24 0x00007fb135eb9a0a in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#25 0x00007fb135eba86f in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) ()
   from /usr/lib64/libQtGui.so.4
#26 0x00007fb135eb9a0a in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#27 0x00007fb13607f311 in ?? () from /usr/lib64/libQtGui.so.4
#28 0x00007fb135eaf8c0 in QWidgetPrivate::syncBackingStore() () from /usr/lib64/libQtGui.so.4
#29 0x00007fb135ebd2d2 in QWidget::event(QEvent*) () from /usr/lib64/libQtGui.so.4
#30 0x00007fb136264ed6 in QFrame::event(QEvent*) () from /usr/lib64/libQtGui.so.4
#31 0x00007fb135e6b264 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
---Type <return> to continue, or q <return> to quit---
#32 0x00007fb135e7381a in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#33 0x00007fb136b82cf6 in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
#34 0x00007fb13d0937cc in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4
#35 0x00007fb13d096fc5 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/libQtCore.so.4
#36 0x00007fb13d0c1820 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#37 0x00007fb135f121ac in ?? () from /usr/lib64/libQtGui.so.4
#38 0x00007fb13d092c22 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#39 0x00007fb13d092e35 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#40 0x00007fb13d09727b in QCoreApplication::exec() () from /usr/lib64/libQtCore.so.4
#41 0x00007fb13d3cea6d in kdemain (argc=<value optimized out>, argv=<value optimized out>) at /home/boud/kde/src/calligra/krita/main.cc:71
#42 0x00007fb134832bfd in __libc_start_main () from /lib64/libc.so.6
#43 0x0000000000400929 in _start () at ../sysdeps/x86_64/elf/start.S:113


-- 
Boudewijn Rempt
http://www.valdyas.org, http://www.krita.org, http://www.boudewijnrempt.nl


More information about the kimageshop mailing list