https://bugs.kde.org/show_bug.cgi?id=376382

--- Comment #5 from Bruno P. Kinoshita <brunodepau...@yahoo.com.br> ---
I think you are right Boudewijn.

Here's how I (think I) reproduced it.

1. Play a while reproducing the issue, looking at top or htop to look at the
memory and virtual memory numbers.
2. Guess the amount of virtual memory you will need (memory should be fine,
krita won't allocate much)
3. Limit the current session memory through ulimit
4. Follow the reporter's steps to reproduce the issue
5. Segmentation fault

In the console output, I can see

    Error std::bad_alloc sending event 63 to object qt_scrollarea_viewport
    Segmentation fault

Running in gdb, the following is displayed when the crash happens:

    Thread 1 "krita" received signal SIGSEGV, Segmentation fault.
    KoToolManager::activeCanvasController (this=0x0) at
/home/kinow/Development/cpp/workspace/krita/libs/flake/KoToolManager.cpp:369
    369     if (! d->canvasData) return 0;

FWIW, here's my script with the settings used to reproduce it

    # 2550 mb in kb
    ulimit -v 2550000

    # 2 mb in kb
    ulimit -m 2000000

    # Confirm limits
    ulimit -a

    gdb $HOME/Development/cpp/workspace/krita_install/bin/krita

And here's my backtrace.

#0  KoToolManager::activeCanvasController (this=0x0) at
/home/kinow/Development/cpp/workspace/krita/libs/flake/KoToolManager.cpp:369
#1  0x00007ffff764297e in KisNodeShape::~KisNodeShape (this=0x7b53330,
__in_chrg=<optimized out>)
    at
/home/kinow/Development/cpp/workspace/krita/libs/ui/flake/kis_node_shape.cpp:62
#2  0x00007ffff7642a79 in KisNodeShape::~KisNodeShape (this=0x7b53330,
__in_chrg=<optimized out>)
    at
/home/kinow/Development/cpp/workspace/krita/libs/ui/flake/kis_node_shape.cpp:72
#3  0x00007ffff76427ab in KisNodeShapesGraph::removeNode (this=<optimized out>,
node=...)
    at
/home/kinow/Development/cpp/workspace/krita/libs/ui/flake/kis_node_shapes_graph.cpp:71
#4  0x00007ffff7643bc6 in KisShapeController::~KisShapeController
(this=0x7acf470, __in_chrg=<optimized out>)
    at
/home/kinow/Development/cpp/workspace/krita/libs/ui/flake/kis_shape_controller.cpp:83
#5  0x00007ffff7644209 in KisShapeController::~KisShapeController
(this=0x7acf470, __in_chrg=<optimized out>)
    at
/home/kinow/Development/cpp/workspace/krita/libs/ui/flake/kis_shape_controller.cpp:87
#6  0x00007ffff78c8146 in KisDocument::~KisDocument (this=0x7ae6f20,
__in_chrg=<optimized out>) at
/home/kinow/Development/cpp/workspace/krita/libs/ui/KisDocument.cpp:483
#7  0x00007ffff78c8549 in KisDocument::~KisDocument (this=0x7ae6f20,
__in_chrg=<optimized out>) at
/home/kinow/Development/cpp/workspace/krita/libs/ui/KisDocument.cpp:520
#8  0x00007ffff7906e04 in KisPart::~KisPart (this=0x7ffff7dd55b0
<_ZZN12_GLOBAL__N_116Q_QGS_s_instance13innerFunctionEvE6holder>,
__in_chrg=<optimized out>)
    at /home/kinow/Development/cpp/workspace/krita/libs/ui/KisPart.cpp:141
#9  0x00007ffff7907129 in (anonymous
namespace)::Q_QGS_s_instance::Holder::~Holder (this=<optimized out>,
__in_chrg=<optimized out>)
    at /home/kinow/Development/cpp/workspace/krita/libs/ui/KisPart.cpp:80
#10 0x00007ffff4d34ff8 in __run_exit_handlers (status=1, listp=0x7ffff50be5f8
<__exit_funcs>, run_list_atexit=run_list_atexit@entry=true) at exit.c:82
#11 0x00007ffff4d35045 in __GI_exit (status=<optimized out>) at exit.c:104
#12 0x00007fffd97a24f1 in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#13 0x00007fffd97b063d in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#14 0x00007fffeddeb7bc in ?? () from /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1
#15 0x00007fffe27c6522 in ?? () from
/home/kinow/Development/cpp/Qt/5.6/gcc_64/plugins/xcbglintegrations/libqxcb-glx-integration.so
#16 0x00007ffff5eaa869 in QOpenGLContext::swapBuffers(QSurface*) () from
/home/kinow/Development/cpp/Qt/5.6/gcc_64/lib/libQt5Gui.so.5
#17 0x00007ffff6143b7b in ?? () from
/home/kinow/Development/cpp/Qt/5.6/gcc_64/lib/libQt5Gui.so.5
#18 0x00007ffff614432b in QPlatformBackingStore::composeAndFlush(QWindow*,
QRegion const&, QPoint const&, QPlatformTextureList*, QOpenGLContext*, bool) ()
   from /home/kinow/Development/cpp/Qt/5.6/gcc_64/lib/libQt5Gui.so.5
#19 0x00007fffe4bbbde7 in ?? () from
/home/kinow/Development/cpp/Qt/5.6/gcc_64/plugins/platforms/../../lib/libQt5XcbQpa.so.5
#20 0x00007ffff66cbf3f in ?? () from
/home/kinow/Development/cpp/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#21 0x00007ffff66cce98 in ?? () from
/home/kinow/Development/cpp/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#22 0x00007ffff66ce5a5 in ?? () from
/home/kinow/Development/cpp/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#23 0x00007ffff66cf009 in ?? () from
/home/kinow/Development/cpp/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#24 0x00007ffff66efbaf in QWidgetPrivate::syncBackingStore() () from
/home/kinow/Development/cpp/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#25 0x00007ffff6705340 in QWidget::event(QEvent*) () from
/home/kinow/Development/cpp/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#26 0x00007ffff68195cb in QMainWindow::event(QEvent*) () from
/home/kinow/Development/cpp/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#27 0x00007ffff70fdc9a in KMainWindow::event (this=this@entry=0xbc7d940,
ev=ev@entry=0x7fff93ec04e0)
    at
/home/kinow/Development/cpp/workspace/krita/libs/widgetutils/xmlgui/kmainwindow.cpp:780
#28 0x00007ffff713f159 in KXmlGuiWindow::event (this=0xbc7d940,
ev=0x7fff93ec04e0)
    at
/home/kinow/Development/cpp/workspace/krita/libs/widgetutils/xmlgui/kxmlguiwindow.cpp:125
#29 0x00007ffff66c1f3c in QApplicationPrivate::notify_helper(QObject*, QEvent*)
() from /home/kinow/Development/cpp/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#30 0x00007ffff66c62a0 in QApplication::notify(QObject*, QEvent*) () from
/home/kinow/Development/cpp/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#31 0x00007ffff78baad7 in KisApplication::notify (this=<optimized out>,
receiver=0xbc7d940, event=0x7fff93ec04e0)
    at
/home/kinow/Development/cpp/workspace/krita/libs/ui/KisApplication.cpp:542
#32 0x00007ffff58d0720 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
() from /home/kinow/Development/cpp/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#33 0x00007ffff58d2f13 in QCoreApplicationPrivate::sendPostedEvents(QObject*,
int, QThreadData*) () from
/home/kinow/Development/cpp/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#34 0x00007ffff591fb13 in ?? () from
/home/kinow/Development/cpp/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#35 0x00007fffee273197 in g_main_context_dispatch () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#36 0x00007fffee2733f0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#37 0x00007fffee27349c in g_main_context_iteration () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#38 0x00007ffff591ff07 in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
from /home/kinow/Development/cpp/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#39 0x00007ffff58ce76a in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from
/home/kinow/Development/cpp/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#40 0x00007ffff58d65fd in QCoreApplication::exec() () from
/home/kinow/Development/cpp/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#41 0x00000000004051e5 in main (argc=1, argv=<optimized out>) at
/home/kinow/Development/cpp/workspace/krita/krita/main.cc:269

Hope that helps
Bruno

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to