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

--- Comment #10 from Boudewijn Rempt <b...@valdyas.org> ---
the easy way out is to check whether the stroke is still valid, instead of
asserting on it:

void KisStrokesQueue::addJob(KisStrokeId id, KisStrokeJobData *data)
{
    QMutexLocker locker(&m_d->mutex);

    KisStrokeSP stroke = id.toStrongRef();
    Q_ASSERT(stroke);

The stroke is probably 0 because changing the smoothing option starts a new
stroke.

Thread 1 "krita" received signal SIGSEGV, Segmentation fault.
KisStroke::lodBuddy (this=this@entry=0x0) at
src/krita_3.3/libs/image/kis_stroke.cpp:301
301         return m_lodBuddy;
(gdb) bt
#0  KisStroke::lodBuddy (this=this@entry=0x0) at
src/krita_3.3/libs/image/kis_stroke.cpp:301
#1  0x00007ffff38596ec in KisStrokesQueue::addJob (this=<optimized out>,
id=..., data=0x86f2940) at src/krita_3.3/libs/image/kis_strokes_queue.cpp:344
#2  0x00007ffff38653a5 in KisUpdateScheduler::addJob (this=0x86bb108, id=...,
data=data@entry=0x86f2940) at
src/krita_3.3/libs/image/kis_update_scheduler.cpp:187

We already decided to change all asserts into KIS_SAFE_ASSERT too.

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

Reply via email to