Summary: | ASSERT (0) kis_fill_interval_map.cpp, line 99 (with debug backtrace) | ||
---|---|---|---|
Product: | [Applications] krita | Reporter: | epicwrathssin |
Component: | General | Assignee: | Dmitry Kazakov <dimula73> |
Status: | RESOLVED FIXED | ||
Severity: | crash | 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: | |||
Attachments: |
408889 frame apply 30 info locals
408889 frame apply 30 info args |
Description
epicwrathssin
2019-06-18 23:30:22 UTC
Some undated messages that appeared on the console when krita was run: UdevQt: unhandled device action "bind" SAFE ASSERT (krita): "!aboveThis || aboveThis->parent().data() == this" in file /home/andy/src/krita/src/libs/image/kis_node.cpp, line 498 SAFE ASSERT (krita): "!aboveThis || aboveThis->parent().data() == this" in file /home/andy/src/krita/src/libs/image/kis_node.cpp, line 498 SAFE ASSERT (krita): "!sanityCheckPointer.isValid()" in file /home/andy/src/krita/src/libs/ui/KisDocument.cpp, line 515 qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 47301, resource id: 34499399, major code: 40 (TranslateCoords), minor code: 0 KUndo2QStack::undo(): cannot undo in the middle of a macro ASSERT: "(0)" in file /home/andy/src/krita/src/libs/image/floodfill/kis_fill_interval_map.cpp, line 99 QSocketNotifier: Invalid socket 9 and type 'Read', disabling... QSocketNotifier: Invalid socket 12 and type 'Read', disabling... One for Dmitry. More data from the reporter: (gdb) frame apply 30 info args #0 0x00007f2420255729 in __GI___poll (fds=0x7f2386d7c8c8, nfds=1, timeout=1000) at ../sysdeps/unix/sysv/linux/poll.c:29 fds = 0x7f2386d7c8c8 nfds = 1 timeout = 1000 #1 0x00007f2421fabdc4 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5Crash.so.5 No symbol table info available. #2 0x00007f2421fac359 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5Crash.so.5 No symbol table info available. #3 0x00007f2421facbee in ?? () from /usr/lib/x86_64-linux-gnu/libKF5Crash.so.5 No symbol table info available. #4 0x00007f2421fad147 in KCrash::defaultCrashHandler(int) () from /usr/lib/x86_64-linux-gnu/libKF5Crash.so.5 No symbol table info available. #5 <signal handler called> No symbol table info available. #6 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50 sig = 6 #7 0x00007f2420169535 in __GI_abort () at abort.c:79 No arguments. #8 0x00007f24205b09a7 in QMessageLogger::fatal(char const*, ...) const () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #9 0x00007f24205afe29 in qt_assert(char const*, char const*, int) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #10 0x00007f2421a7de26 in KisFillIntervalMap::cropInterval (this=0x7f23e031d390, interval=0x7f2386d7d6e8) at /home/andy/src/krita/src/libs/image/floodfill/kis_fill_interval_map.cpp:99 this = 0x7f23e031d390 interval = 0x7f2386d7d6e8 #11 0x00007f2421a8c00e in KisScanlineFill::processLine<SelectionPolicy<false, DifferencePolicyOptimized<unsigned char>, FillWithColor> > ( this=0x7f2386d7d978, interval=..., rowIncrement=-1, pixelPolicy=...) at /home/andy/src/krita/src/libs/image/floodfill/kis_scanline_fill.cpp:449 this = 0x7f2386d7d978 interval = {<boost::operators_impl::equality_comparable1<KisFillInterval, boost::operators_impl::operators_detail::empty_base<KisFillInterval> >> = {<boost::operators_impl::operators_detail::empty_base<KisFillInterval>> = {<No data fields>}, <No data fields>}, start = 0, end = 1280, row = 292} rowIncrement = -1 pixelPolicy = @0x7f2386d7d870: {<FillWithColor<DifferencePolicyOptimized<unsigned char> >> = {<DifferencePolicyOptimized<unsigned char>> = {m_differences = {{d = 0x7f23e057c630, e = 0x7f23e057c630}}, m_colorSpace = 0x7f23d00037b0, m_srcPixel = {<boost::operators_impl::equality_comparable<KoColor, KoColor, boost::operators_impl::operators_detail::empty_base<KoColor>, boost::operators_impl::operators_detail::false_t>> = {<boost::operators_impl::equality_comparable1<KoColor, boost::operators_impl::operators_detail::empty_base<KoColor> >> = {<boost::operators_impl::operators_detail::empty_base<KoColor>> = {<No data fields>}, <No data fields>}, <No data fields>}, m_colorSpace = 0x7f23d00037b0, m_data = "\377\000\000\000\000\000\377\377\260\330׆#\177\000\000\360\003\233!$\177\000\000\320\330׆#\177\000\000\020\017ի\225U\000", m_size = 1 '\001'}, m_srcPixelPtr = 0x7f2386d7d888 "\377", m_threshold = 16}, m_sourceColor = {<boost::operators_impl::equality_comparable<KoColor, KoColor, boost::operators_impl::operators_detail::empty_base<KoColor>, boost::operators_impl::operators_detail::false_t>> = {<boost::operators_impl::equality_comparable1<KoColor, boost::operators_impl::operators_detail::empty_base<KoColor> >> = {<boost::operators_impl::operators_detail::empty_base<KoColor>> = {<No data fields>}, <No data fields>}, <No data fields>}, m_colorSpace = 0x7f23cc0ae350, m_data = "\n\377\000\000\000\000\377\377&W\240!$\177\000\000\000\017ի\225U\000\000\200\331׆#\177\000\000 \331׆#\177\000", m_size = 2 '\002'}, m_data = 0x7f2386d7d8d0 "\n\377", m_pixelSize = 2}, m_srcIt = {d = 0x7f23e01a0d60}, m_threshold = 16} #12 0x00007f2421a854b6 in KisScanlineFill::runImpl<SelectionPolicy<false, DifferencePolicyOptimized<unsigned char>, FillWithColor> > (this=0x7f2386d7d978, pixelPolicy=...) at /home/andy/src/krita/src/libs/image/floodfill/kis_scanline_fill.cpp:540 this = 0x7f2386d7d978 pixelPolicy = @0x7f2386d7d870: {<FillWithColor<DifferencePolicyOptimized<unsigned char> >> = {<DifferencePolicyOptimized<unsigned char>> = {m_differences = {{d = 0x7f23e057c630, e = 0x7f23e057c630}}, m_colorSpace = 0x7f23d00037b0, m_srcPixel = {<boost::operators_impl::equality_comparable<KoColor, KoColor, boost::operators_impl::operators_detail::empty_base<KoColor>, boost::operators_impl::operators_detail::false_t>> = {<boost::operators_impl::equality_comparable1<KoColor, boost::operators_impl::operators_detail::empty_base<KoColor> >> = {<boost::operators_impl::operators_detail::empty_base<KoColor>> = {<No data fields>}, <No data fields>}, <No data fields>}, m_colorSpace = 0x7f23d00037b0, m_data = "\377\000\000\000\000\000\377\377\260\330׆#\177\000\000\360\003\233!$\177\000--Type <RET> for more, q to quit, c to continue without paging-- \000\320\330׆#\177\000\000\020\017ի\225U\000", m_size = 1 '\001'}, m_srcPixelPtr = 0x7f2386d7d888 "\377", m_threshold = 16}, m_sourceColor = {<boost::operators_impl::equality_comparable<KoColor, KoColor, boost::operators_impl::operators_detail::empty_base<KoColor>, boost::operators_impl::operators_detail::false_t>> = {<boost::operators_impl::equality_comparable1<KoColor, boost::operators_impl::operators_detail::empty_base<KoColor> >> = {<boost::operators_impl::operators_detail::empty_base<KoColor>> = {<No data fields>}, <No data fields>}, <No data fields>}, m_colorSpace = 0x7f23cc0ae350, m_data = "\n\377\000\000\000\000\377\377&W\240!$\177\000\000\000\017ի\225U\000\000\200\331׆#\177\000\000 \331׆#\177\000", m_size = 2 '\002'}, m_data = 0x7f2386d7d8d0 "\n\377", m_pixelSize = 2}, m_srcIt = {d = 0x7f23e01a0d60}, m_threshold = 16} #13 0x00007f2421a80e83 in KisScanlineFill::fillColor (this=0x7f2386d7d978, fillColor=...) at /home/andy/src/krita/src/libs/image/floodfill/kis_scanline_fill.cpp:563 this = 0x7f2386d7d978 fillColor = @0x7f23e0a164a8: {<boost::operators_impl::equality_comparable<KoColor, KoColor, boost::operators_impl::operators_detail::empty_base<KoColor>, boost::operators_impl::operators_detail::false_t>> = {<boost::operators_impl::equality_comparable1<KoColor, boost::operators_impl::operators_detail::empty_base<KoColor> >> = {<boost::operators_impl::operators_detail::empty_base<KoColor>> = {<No data fields>}, <No data fields>}, <No data fields>}, m_colorSpace = 0x7f23cc0ae350, m_data = "\n\377\005\377\000\000\000\000a\001\000\000\000\000\000\000\300\021I\340#\177\000\000\200\000\000\340#\177\000\000\030\000\000\000\000\000\000", m_size = 2 '\002'} #14 0x00007f2421b2c2f3 in KisFillPainter::fillColor (this=0x7f2386d7daa0, startX=367, startY=339, sourceDevice=...) at /home/andy/src/krita/src/libs/image/kis_fill_painter.cc:212 this = 0x7f2386d7daa0 startX = 367 startY = 339 sourceDevice = {d = 0x5595aad8bc90} #15 0x00007f2422f452f1 in compositeOpToBlendMode (compositeOp=...) at /home/andy/src/krita/src/libs/ui/kis_asl_layer_style_serializer.cpp:85 compositeOp = <error reading variable> #16 0x00007f2422f448ca in FillProcessingVisitor::fillPaintDevice (this=0x100000000, device=<error reading variable: Cannot access memory at address 0x0>, undoAdapter=0x7f23e0a16470, helper=...) at /home/andy/src/krita/src/libs/ui/processing/fill_processing_visitor.cpp:130 this = 0x100000000 device = <error reading variable device (Cannot access memory at address 0x0)> undoAdapter = 0x7f23e0a16470 helper = @0x7f2423cdd570: {m_progressUpdater = 0x7f2422f45912 <bevelStyleToString(psd_bevel_style)+15>, m_progressMutex = {<QBasicMutex> = {d_ptr = {_q_value = {_M_b = {_M_p = 0x7f2422f45950 <bevelStyleToString(psd_bevel_style)+77>}}}}, <No data fields>}} #17 0x00007f2421a63fc1 in KisSimpleProcessingVisitor::visit (this=0x5595abe50120, mask=0x55959693ea00, undoAdapter=0x5595b043ed50) at /home/andy/src/krita/src/libs/image/processing/kis_simple_processing_visitor.cpp:103 this = 0x5595abe50120 mask = 0x55959693ea00 undoAdapter = 0x5595b043ed50 #18 0x00007f2421d4a155 in KisTransparencyMask::paintsOutsideSelection (this=0x55959693ea00) at /home/andy/src/krita/src/libs/image/kis_transparency_mask.cc:92 this = 0x55959693ea00 #19 0x00007f2421a5a409 in KisProcessingCommand::redo (this=0x5595b043ed10) at /home/andy/src/krita/src/libs/image/commands_new/kis_processing_command.cpp:35 this = 0x5595b043ed10 #20 0x00007f2421b62ecb in KisStrokeStrategyUndoCommandBased::KisStrokeStrategyUndoCommandBased (this=0x5595b0d3c1f0, rhs=...) at /home/andy/src/krita/src/libs/image/kis_stroke_strategy_undo_command_based.cpp:59 this = 0x5595b0d3c1f0 rhs = <error reading variable> #21 0x00007f2386d7dc90 in ?? () No symbol table info available. #22 0x00007f0021a58d45 in ?? () No symbol table info available. #23 0x00007f2386d7dcc0 in ?? () No symbol table info available. #24 0x00005595b0cba680 in ?? () No symbol table info available. --Type <RET> for more, q to quit, c to continue without paging-- #25 0x00007f2386d7dcf0 in ?? () No symbol table info available. #26 0x00007f2421b634a6 in KisStrokeStrategyUndoCommandBased::cancelStrokeCallback (this=0xb6ae8c7894800) at /home/andy/src/krita/src/libs/image/kis_stroke_strategy_undo_command_based.cpp:113 this = 0xb6ae8c7894800 #27 0x88f089f87d894810 in ?? () No symbol table info available. #28 0xb60ff8458b48f445 in ?? () No symbol table info available. #29 0xd2b60f01f283f455 in ?? () No symbol table info available. frame apply 30 info locals #0 0x00007f2420255729 in __GI___poll (fds=0x7f2386d7c8c8, nfds=1, timeout=1000) at ../sysdeps/unix/sysv/linux/poll.c:29 resultvar = 1 sc_cancel_oldtype = 0 sc_ret = <optimized out> #1 0x00007f2421fabdc4 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5Crash.so.5 No symbol table info available. #2 0x00007f2421fac359 in ?? () from /usr/lib/x86_64-linux-gnu/libKF5Crash.so.5 No symbol table info available. #3 0x00007f2421facbee in ?? () from /usr/lib/x86_64-linux-gnu/libKF5Crash.so.5 No symbol table info available. #4 0x00007f2421fad147 in KCrash::defaultCrashHandler(int) () from /usr/lib/x86_64-linux-gnu/libKF5Crash.so.5 No symbol table info available. #5 <signal handler called> No locals. #6 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50 set = {__val = {0, 0, 0, 0, 18446744073709551472, 104, 8, 139792061652656, 63, 4294967295, 4294967295, 139793138663244, 103, 139790562874416, 139790562874416, 9288341610589594624}} pid = <optimized out> tid = <optimized out> ret = <optimized out> #7 0x00007f2420169535 in __GI_abort () at abort.c:79 save_stage = 1 act = {__sigaction_handler = {sa_handler = 0x7f2420873640 <QArrayData::shared_null>, sa_sigaction = 0x7f2420873640 <QArrayData::shared_null>}, sa_mask = {__val = {139792060946864, 139792061652656, 9288341610589594624, 139790562874816, 3, 139790562874584, 139793138579169, 0, 9288341610589594624, 139790562874816, 139790562874584, 3, 139790562874816, 1, 139793138579592, 139790562874560}}, sa_flags = -1414781952, sa_restorer = 0x7f2386d7d4d8} sigs = {__val = {32, 0 <repeats 15 times>}} #8 0x00007f24205b09a7 in QMessageLogger::fatal(char const*, ...) const () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #9 0x00007f24205afe29 in qt_assert(char const*, char const*, int) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #10 0x00007f2421a7de26 in KisFillIntervalMap::cropInterval (this=0x7f23e031d390, interval=0x7f2386d7d6e8) at /home/andy/src/krita/src/libs/image/floodfill/kis_fill_interval_map.cpp:99 needsIncrement = true range = {beginIt = {i = 0x7f23e019e260}, endIt = {i = 0x7f23e06bfea8}, rowMapIt = {i = 0x7f23e04867a0}} it = {i = 0x7f23e019e260} __PRETTY_FUNCTION__ = "void KisFillIntervalMap::cropInterval(KisFillInterval*)" #11 0x00007f2421a8c00e in KisScanlineFill::processLine<SelectionPolicy<false, DifferencePolicyOptimized<unsigned char>, FillWithColor> > ( this=0x7f2386d7d978, interval=..., rowIncrement=-1, pixelPolicy=...) at /home/andy/src/krita/src/libs/image/floodfill/kis_scanline_fill.cpp:449 firstX = 32548 lastX = 523 x = 32547 row = 293 nextRow = 292 currentForwardInterval = {<boost::operators_impl::equality_comparable1<KisFillInterval, boost::operators_impl::operators_detail::empty_base<KisFillInterval> >> = {<boost::operators_impl::operators_detail::empty_base<KisFillInterval>> = {<No data fields>}, <No data fields>}, start = -2132356741, end = 1280, row = 292} numPixelsLeft = 564707148 dataPtr = 0x7f23f46bccaf "\n\377", '\n' <repeats 63 times>, "\377", '\n' <repeats 63 times>, "\377", '\n' <repeats 63 times>, "\377\n\n\n\n\n\n"... pixelSize = 1 #12 0x00007f2421a854b6 in KisScanlineFill::runImpl<SelectionPolicy<false, DifferencePolicyOptimized<unsigned char>, FillWithColor> > (this=0x7f2386d7d978, pixelPolicy=...) at /home/andy/src/krita/src/libs/image/floodfill/kis_scanline_fill.cpp:540 --Type <RET> for more, q to quit, c to continue without paging-- interval = {<boost::operators_impl::equality_comparable1<KisFillInterval, boost::operators_impl::operators_detail::empty_base<KisFillInterval> >> = {<boost::operators_impl::operators_detail::empty_base<KisFillInterval>> = {<No data fields>}, <No data fields>}, start = 0, end = 1280, row = 292} startInterval = {<boost::operators_impl::equality_comparable1<KisFillInterval, boost::operators_impl::operators_detail::empty_base<KisFillInterval> >> = {<boost::operators_impl::operators_detail::empty_base<KisFillInterval>> = {<No data fields>}, <No data fields>}, start = 367, end = 367, row = 338} firstPass = false #13 0x00007f2421a80e83 in KisScanlineFill::fillColor (this=0x7f2386d7d978, fillColor=...) at /home/andy/src/krita/src/libs/image/floodfill/kis_scanline_fill.cpp:563 policy = {<FillWithColor<DifferencePolicyOptimized<unsigned char> >> = {<DifferencePolicyOptimized<unsigned char>> = {m_differences = {{d = 0x7f23e057c630, e = 0x7f23e057c630}}, m_colorSpace = 0x7f23d00037b0, m_srcPixel = {<boost::operators_impl::equality_comparable<KoColor, KoColor, boost::operators_impl::operators_detail::empty_base<KoColor>, boost::operators_impl::operators_detail::false_t>> = {<boost::operators_impl::equality_comparable1<KoColor, boost::operators_impl::operators_detail::empty_base<KoColor> >> = {<boost::operators_impl::operators_detail::empty_base<KoColor>> = {<No data fields>}, <No data fields>}, <No data fields>}, m_colorSpace = 0x7f23d00037b0, m_data = "\377\000\000\000\000\000\377\377\260\330׆#\177\000\000\360\003\233!$\177\000\000\320\330׆#\177\000\000\020\017ի\225U\000", m_size = 1 '\001'}, m_srcPixelPtr = 0x7f2386d7d888 "\377", m_threshold = 16}, m_sourceColor = {<boost::operators_impl::equality_comparable<KoColor, KoColor, boost::operators_impl::operators_detail::empty_base<KoColor>, boost::operators_impl::operators_detail::false_t>> = {<boost::operators_impl::equality_comparable1<KoColor, boost::operators_impl::operators_detail::empty_base<KoColor> >> = {<boost::operators_impl::operators_detail::empty_base<KoColor>> = {<No data fields>}, <No data fields>}, <No data fields>}, m_colorSpace = 0x7f23cc0ae350, m_data = "\n\377\000\000\000\000\377\377&W\240!$\177\000\000\000\017ի\225U\000\000\200\331׆#\177\000\000 \331׆#\177\000", m_size = 2 '\002'}, m_data = 0x7f2386d7d8d0 "\n\377", m_pixelSize = 2}, m_srcIt = {d = 0x7f23e01a0d60}, m_threshold = 16} it = {d = 0x7f23e02a1570} srcColor = {<boost::operators_impl::equality_comparable<KoColor, KoColor, boost::operators_impl::operators_detail::empty_base<KoColor>, boost::operators_impl::operators_detail::false_t>> = {<boost::operators_impl::equality_comparable1<KoColor, boost::operators_impl::operators_detail::empty_base<KoColor> >> = {<boost::operators_impl::operators_detail::empty_base<KoColor>> = {<No data fields>}, <No data fields>}, <No data fields>}, m_colorSpace = 0x7f23d00037b0, m_data = "\377\377\000\000\002\000\000\000p\330׆#\177\000\000\063\b\233!$\177\000\000p\330׆#\177\000\000\020\017ի\225U\000", m_size = 1 '\001'} pixelSize = 1 #14 0x00007f2421b2c2f3 in KisFillPainter::fillColor (this=0x7f2386d7daa0, startX=367, startY=339, sourceDevice=...) at /home/andy/src/krita/src/libs/image/kis_fill_painter.cc:212 fillBoundsRect = {x1 = 0, y1 = 0, x2 = 1280, y2 = 1022} startPoint = {xp = 367, yp = 339} gc = {m_d = {d = 0x7f23e031d360}} __PRETTY_FUNCTION__ = "void KisFillPainter::fillColor(int, int, KisPaintDeviceSP)" #15 0x00007f2422f452f1 in compositeOpToBlendMode (compositeOp=...) at /home/andy/src/krita/src/libs/ui/kis_asl_layer_style_serializer.cpp:85 mode = <error reading variable mode (Cannot access memory at address 0x1ffffffff)> __PRETTY_FUNCTION__ = "QString compositeOpToBlendMode(const QString&)" #16 0x00007f2422f448ca in FillProcessingVisitor::fillPaintDevice (this=0x100000000, device=<error reading variable: Cannot access memory at address 0x0>, undoAdapter=0x7f23e0a16470, helper=...) at /home/andy/src/krita/src/libs/ui/processing/fill_processing_visitor.cpp:130 startPoint = {xp = -2032674000, yp = 32547} fillPainter = {<KisPainter> = {_vptr.KisPainter = 0x7f2386d7dbc0, d = 0x7f2422f448ca <FillProcessingVisitor::fillPaintDevice(KisSharedPtr<KisPaintDevice>, KisUndoAdapter*, KisProcessingVisitor::ProgressHelper&)+2244>}, m_fillSelection = {d = 0x7f2386d7db70}, m_feather = -1337725616, m_sizemod = 21909, m_threshold = -1768691200, m_width = 21909, m_height = -1411055328, m_rect = {x1 = 21909, y1 = -256719072, x2 = 32546, y2 = -1412100352}, m_careForSelection = 149, m_useCompositioning = 85} sourceDevice = {d = 0x7f2386d7db78} fillRect = {x1 = -2032674032, y1 = 32547, x2 = 582121996, y2 = 32548} #17 0x00007f2421a63fc1 in KisSimpleProcessingVisitor::visit (this=0x5595abe50120, mask=0x55959693ea00, undoAdapter=0x5595b043ed50) at /home/andy/src/krita/src/libs/image/processing/kis_simple_processing_visitor.cpp:103 No locals. #18 0x00007f2421d4a155 in KisTransparencyMask::paintsOutsideSelection (this=0x55959693ea00) at /home/andy/src/krita/src/libs/image/kis_transparency_mask.cc:92 No locals. #19 0x00007f2421a5a409 in KisProcessingCommand::redo (this=0x5595b043ed10) at /home/andy/src/krita/src/libs/image/commands_new/kis_processing_command.cpp:35 No locals. #20 0x00007f2421b62ecb in KisStrokeStrategyUndoCommandBased::KisStrokeStrategyUndoCommandBased (this=0x5595b0d3c1f0, rhs=...) --Type <RET> for more, q to quit, c to continue without paging-- at /home/andy/src/krita/src/libs/image/kis_stroke_strategy_undo_command_based.cpp:59 No locals. #21 0x00007f2386d7dc90 in ?? () No symbol table info available. #22 0x00007f0021a58d45 in ?? () No symbol table info available. #23 0x00007f2386d7dcc0 in ?? () No symbol table info available. #24 0x00005595b0cba680 in ?? () No symbol table info available. #25 0x00007f2386d7dcf0 in ?? () No symbol table info available. #26 0x00007f2421b634a6 in KisStrokeStrategyUndoCommandBased::cancelStrokeCallback (this=0xb6ae8c7894800) at /home/andy/src/krita/src/libs/image/kis_stroke_strategy_undo_command_based.cpp:113 locker = {val = 16833616380007368816} #27 0x88f089f87d894810 in ?? () No symbol table info available. #28 0xb60ff8458b48f445 in ?? () No symbol table info available. #29 0xd2b60f01f283f455 in ?? () No symbol table info available. Created attachment 121008 [details]
408889 frame apply 30 info locals
Created attachment 121009 [details]
408889 frame apply 30 info args
Git commit d1435c13f9ac1539d43a8421b6d07b0953e43fd3 by Dmitry Kazakov. Committed on 20/06/2019 at 17:10. Pushed by dkazakov into branch 'master'. Make sanity checks in the scanline fill more relaxed Basically, we should use safe asserts for them to ensure that the user doesn't have a data-loss. M +11 -3 libs/image/floodfill/kis_fill_interval_map.cpp M +1 -1 libs/image/floodfill/kis_fill_sanity_checks.h M +3 -3 libs/image/floodfill/kis_scanline_fill.cpp https://invent.kde.org/kde/krita/commit/d1435c13f9ac1539d43a8421b6d07b0953e43fd3 According to the backtrace the crash has happened in "fast mode". And the memory corruption bug in "fast mode" has been fixed in this commit: https://invent.kde.org/kde/krita/commit/165e1dca2ff48766d0959434dfd94fc15cde1786 So I guess the bug should now be fixed. To reproduce this bug, create an image (a smaller one like VGA sized makes it quicker) and create a child Transparency Mask. Then use the flood fill tool with fast mode enabled repeatedly on the mask (timing, location, and content don't seem to matter). Krita will crash, and the following asserts will appear (I had mistakenly left one off in the report): ASSERT: "(0)" in file /home/andy/src/krita/src/libs/image/floodfill/kis_fill_interval_map.cpp, line 99 ASSERT failure in Q_GLOBAL_STATIC: "The global static was used after being destroyed", file /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobalstatic.h, line 143 I tested the build after this patch, and can't replicate the bug any more. I didn't expect this to be easily reproducible. I'll take that into consideration for future bug reports. Hi, epicwrathssin! Just wanted to make it clear: your backtraces and traces of locals/args were extremely useful for tracking down this bug! Thank you for all your help in fixing this bug! :) Git commit 3820a71b62246219c247d1e880f83db21e8fcdb1 by Boudewijn Rempt, on behalf of Dmitry Kazakov. Committed on 24/06/2019 at 08:20. Pushed by rempt into branch 'krita/4.2'. Make sanity checks in the scanline fill more relaxed Basically, we should use safe asserts for them to ensure that the user doesn't have a data-loss. M +11 -3 libs/image/floodfill/kis_fill_interval_map.cpp M +1 -1 libs/image/floodfill/kis_fill_sanity_checks.h M +3 -3 libs/image/floodfill/kis_scanline_fill.cpp https://invent.kde.org/kde/krita/commit/3820a71b62246219c247d1e880f83db21e8fcdb1 |