View Issue Details

IDProjectCategoryView StatusLast Update
0015174ScribusGraphics / Image Framespublic2018-03-01 00:00
Reporterjberg Assigned Tojghali  
PrioritynormalSeverityminorReproducibilitysometimes
Status closedResolutionduplicate 
Product Version1.5.4.svn 
Summary0015174: segfault - perhaps when thumbnailing?
DescriptionSVN r22417. Didn't happen in 1.5.3.

I'm using the scriba_a4.py script to create a document with lots of images. This is one way - opening an old document with lots of images reproduces this as well (up to a point, see below).

When the script is done and the document goes to be displayed, scribus segfaults.

I think it's related to thumbnailing the images, because if I do it again, it segfaults again, but if I do it a few times then eventually it succeeds. Backtrace below.

I put reproducibility as "sometimes" because of this, but I suspect that if I were to delete the image cache (or something like that, if I knew where this was) I could always reproduce.

I see lots of those "Pixmap is a null pixmap" messages pop up, but they don't immediately seem to cause the problem since I see plenty of those before the crash.
Additional InformationQPixmap::scaled: Pixmap is a null pixmap
QPainter::begin: Paint device returned engine == 0, type: 2
QPixmap::scaled: Pixmap is a null pixmap
QPainter::end: Painter not active, aborted
QPixmap::scaled: Pixmap is a null pixmap
QPainter::begin: Paint device returned engine == 0, type: 2
QPixmap::scaled: Pixmap is a null pixmap
QPainter::end: Painter not active, aborted
QPixmap::scaled: Pixmap is a null pixmap

Thread 1 "scribus-ng" received signal SIGSEGV, Segmentation fault.
0x00007fffefd434d6 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
(gdb) bt full
#0 0x00007fffefd434d6 in () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000001 0x0000555556018a44 in ScLockedFile::createPath() const (this=0x7fffffffc230) at ./scribus/sclockedfile.cpp:99
        info = {d_ptr = {d = 0x55000055557d}}
        path = {static null = {<No data fields>}, d = 0x5555b0f85030}
        dir = {d_ptr = {d = 0x555584d36100}}
0000002 0x0000555556003669 in ScImageCacheProxy::save(QImage const&) (this=0x7fffffffc470, image=...) at ./scribus/scimagecacheproxy.cpp:434
        action =
          {m_files = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7fffefed0ac0 <QListData::shared_null>}, d = 0x7fffefed0ac0 <QListData::shared_null>}}, <No data fields>}, m_access = {{d = 0x7fffefed0a40 <QHashData::shared_null>, e = 0x7fffefed0a40 <QHashData::shared_null>}}, m_locked = true, m_haveMasterLock = false}
        base = {static null = {<No data fields>}, d = 0x5555b0f84610}
        refName = {static null = {<No data fields>}, d = 0x5555b0f840b0}
        imgName = {static null = {<No data fields>}, d = 0x555584d36070}
        oldBase = {static null = {<No data fields>}, d = 0x7fffefece9e0 <QArrayData::shared_null>}
        oldRefName = {static null = {<No data fields>}, d = 0x7fffefece9e0 <QArrayData::shared_null>}
        oldImgName = {static null = {<No data fields>}, d = 0x7fffefece9e0 <QArrayData::shared_null>}
        haveOldRef = false
        meta =
          {<ScLockedFile> = {_vptr.ScLockedFile = 0x555556f7d138 <vtable for ScLockedFileRW+16>, static lockSuffix = {static null = {<No data fields>}, d = 0x555557008e80}, m_fileName = {static null = <same as static member of an already seen type>, d = 0x555584d34640}, m_isOpened = false, m_isLocked = false}, m_file = <incomplete type>}
        ref =
          {<ScLockedFile> = {_vptr.ScLockedFile = 0x555556f7d138 <vtable for ScLockedFileRW+16>, static lockSuffix = {static null = {<No data fields>}, d = 0x555557008e80}, m_fileName = {static null = <same as static member of an already seen type>, d = 0x555584d363a0}, m_isOpened = false, m_isLocked = false}, m_file = <incomplete type>}
        img =
          {<ScLockedFile> = {_vptr.ScLockedFile = 0x555556f7d138 <vtable for ScLockedFileRW+16>, static lockSuffix = {static null = {<No data fields>}, d = 0x555557008e80}, m_fileName = {static null = <same as static member of an already seen type>, d = 0x555584d370e0}, m_isOpened = false, m_isLocked = false}, m_file = <incomplete type>}
        oldRef =
          {<ScLockedFile> = {_vptr.ScLockedFile = 0x555556f7d138 <vtable for ScLockedFileRW+16>, static lockSuffix = {static null = {<No data fields>}, d = 0x555557008e80}, m_fileName = {static null = <same as static member of an already seen type>, d = 0x7fffefece9e0 <QArrayData::shared_null>}, m_isOpened = false, m_isLocked = false}, m_file = <incomplete type>}
0000003 0x0000555555ffc03c in ScImage::saveCache(ScImageCacheProxy&) (this=0x555584d312e8, cache=...) at ./scribus/scimage.cpp:2219
0000004 0x0000555555ded536 in PageItem::loadImage(QString const&, bool, int, bool) (this=0x555584d31090, filename=..., reload=false, gsResolution=-1, showMsg=false) at ./scribus/pageitem.cpp:9564
        scaling = 1.024
        pixels = 3145728
        useImage = true
        fi = {d_ptr = {d = 0x555584d35a50}}
        clPath = {static null = {<No data fields>}, d = 0x555584d330f0}
        lowResTypeBack = 1
        gsRes = 72
        dummy = false
        cms =
              {m_Doc = 0x555558e8ec60, m_colorManagementAllowed = true, m_softProofingAllowed = true, m_useEmbeddedProfile = true, m_ProfileName = {static null = {<No data fields>}, d = 0x55555782e090}, m_Intent = Intent_Perceptual, m_outputProfile = {m_data = {value = 0x0, d = 0x0}}}
        imgcache =
            {static metaSuffix = {static null = {<No data fields>}, d = 0x555557008dc0}, static referenceSuffix = {static null = <same as static member of an already seen type>, d = 0x555557008df0}, static imageSuffix = {static null = <same as static member of an already seen type>, d = 0x555557008e20}, m_filename = {static null = <same as static member of an already seen type>, d = 0x555584cffd20}, m_isEnabled = true, m_metanameCache = {static null = <same as static member of an already seen type>, d = 0x555584d33fc0}, m_metadata = {d = 0x555584d2a8b0}, m_modifier = {d = 0x555584d1dfd0}, m_imginfo = {d = 0x555584d33980}}
        fromCache = false
        ext = {static null = {<No data fields>}, d = 0x5555b0f847c0}
        xres = 72
        yres = 72
0000005 0x00005555560fc532 in ScribusDoc::loadPict(QString, PageItem*, bool, bool) (this=0x555558e8ec60, fn=..., pageItem=0x555584d31090, reload=false, showMsg=false) at ./scribus/scribusdoc.cpp:5939
0000006 0x00007fffc4614832 in scribus_loadimage(_object*, _object*) (args=0x7fff9e9a1b00) at ./scribus/plugins/scriptplugin/cmdmani.cpp:35
        Name = 0x555584c3f5a0 "Image312"
        Image = 0x555576269260 "/home/johannes/sonstiges/photobuch/2017/q3/img/20170815_204455.jpg"
        item = 0x555584d31090
0000007 0x00007ffff3d54369 in PyEval_EvalFrameEx () at /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0
0000008 0x00007ffff3e83488 in PyEval_EvalCodeEx () at /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0
0000009 0x00007ffff3d4b059 in PyEval_EvalCode () at /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0
0000010 0x00007ffff3dee6aa in PyRun_FileExFlags () at /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0
0000011 0x00007ffff3d57c4d in () at /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0
0000012 0x00007ffff3d54369 in PyEval_EvalFrameEx () at /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0
0000013 0x00007ffff3e83488 in PyEval_EvalCodeEx () at /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0
0000014 0x00007ffff3d4b059 in PyEval_EvalCode () at /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0
0000015 0x00007ffff3dee7a6 in PyRun_StringFlags () at /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0
0000016 0x00007fffc4661105 in ScripterCore::slotRunScriptFile(QString, QStringList, bool) (this=0x5555576a1b00, fileName=..., arguments=..., inMainInterpreter=false)
    at ./scribus/plugins/scriptplugin/scriptercore.cpp:331
        escapedAbsPath = {static null = {<No data fields>}, d = 0x7fffdc00e3d0}
        cm = {static null = {<No data fields>}, d = 0x555558f4ab60}
        escapedFileName = {static null = {<No data fields>}, d = 0x555558df3be0}
        globals = 0x7fffc444b910
        cmd = {d = 0x555558f4af70}
        result = 0x555558df3be0
        state = 0x55555723ad10
        fi = {d_ptr = {d = 0x555558e1bcf0}}
        na = {d = 0x7fffdc012140}
        global_state = 0x5555578838b0
        comm = 0x555558f0a9d0
        m = 0x7fffc456cc20
        __PRETTY_FUNCTION__ = "void ScripterCore::slotRunScriptFile(QString, QStringList, bool)"
0000017 0x00007fffc4660650 in ScripterCore::slotRunScriptFile(QString, bool) (this=0x5555576a1b00, fileName=..., inMainInterpreter=false) at ./scribus/plugins/scriptplugin/scriptercore.cpp:233
0000018 0x00007fffc46601a9 in ScripterCore::runScriptDialog() (this=0x5555576a1b00) at ./scribus/plugins/scriptplugin/scriptercore.cpp:191
        fileName = {static null = {<No data fields>}, d = 0x555558df3be0}
        dia =
            {<QDialog> = {<No data fields>}, <Ui::RunScriptDialog> = {<Ui_RunScriptDialog> = {gridLayout = 0x7fffdc010be0, fileWidget = 0x555558cb3e90, extChk = 0x55555733b7c0, buttonBox = 0x555558dcc240}, <No data fields>}, static staticMetaObject = {d = {superdata = 0x7ffff1213e80 <QDialog::staticMetaObject>, stringdata = 0x7fffc46821e0 <qt_meta_stringdata_RunScriptDialog>, data = 0x7fffc46822c0 <qt_meta_data_RunScriptDialog>, static_metacall = 0x7fffc4671270 <RunScriptDialog::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, m_extEnable = false, static m_lastScriptDir = {static null = {<No data fields>}, d = 0x555557de7de0}}
0000019 0x00007fffc46709d8 in ScripterCore::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=0x5555576a1b00, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7fffffffd0b0)
    at ./obj-x86_64-linux-gnu/scribus/plugins/scriptplugin/moc_scriptercore.cpp:146
        _t = 0x5555576a1b00
0000020 0x00007fffefe50d55 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000021 0x00007ffff0b36eb2 in QAction::triggered(bool) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000022 0x00007ffff0b3959c in QAction::activate(QAction::ActionEvent) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000023 0x00007ffff0cb519c in () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000024 0x00007ffff0cbc68b in () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000025 0x00007ffff0cbd553 in QMenu::mouseReleaseEvent(QMouseEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000026 0x00007ffff0b7bb98 in QWidget::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000027 0x00007ffff0cbf80b in QMenu::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000028 0x00007ffff0b3d59c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000029 0x00007ffff0b453bf in QApplication::notify(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000030 0x00007fffefe22258 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000031 0x00007ffff0b44392 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000032 0x00007ffff0b965c5 in () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000033 0x00007ffff0b98efa in () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000034 0x00007ffff0b3d59c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000035 0x00007ffff0b44e64 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
0000036 0x00007fffefe22258 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000037 0x00007ffff0382183 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
0000038 0x00007ffff0383c65 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
0000039 0x00007ffff035bcab in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
0000040 0x00007fffe5aebd50 in () at /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
0000041 0x00007fffecbc7f67 in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
0000042 0x00007fffecbc81a0 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
0000043 0x00007fffecbc822c in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
0000044 0x00007fffefe7b0ef in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000045 0x00007fffefe202aa in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000046 0x00007fffefe29214 in QCoreApplication::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
0000047 0x000055555675bf6d in mainApp(int, char**) (argc=1, argv=0x7fffffffe088) at ./scribus/main_nix.cpp:80
        app =
    {<QApplication> = {<No data fields>}, static staticMetaObject = {d = {superdata = 0x7ffff11ff040 <QApplication::staticMetaObject>, stringdata = 0x5555568b21e0 <qt_meta_stringdata_ScribusQApp>, data = 0x5555568b22a0 <qt_meta_data_ScribusQApp>, static_metacall = 0x555555b95c1e <ScribusQApp::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, static useGUI = true, pythonScript = {static null = {<No data fields>}, d = 0x7fffefece9e0 <QArrayData::shared_null>}, pythonScriptArgs = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0,
 array = {0x0}}, d = 0x7fffefed0ac0 <QListData::shared_null>}, d = 0x7fffefed0ac0 <QListData::shared_null>}}, <No data fields>}, m_ScCore = 0x5555570d8ea0, m_lang = {static null = {<No data fields>}, d = 0x55555715e080}, m_GUILang = {static null = {<No data fields>}, d = 0x5555573157a0}, m_showSplash = true, m_showFontInfo = false, m_showProfileInfo = false, m_prefsUserDir = {static null = {<No data fields>}, d = 0x7fffefece9e0 <QArrayData::shared_null>}, m_filesToLoad = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7fffefed0ac0 <QListData::shared_null>}, d = 0x7fffefed0ac0 <QListData::shared_null>}}, m_fileName = {static null = {<No data fields>}, d = 0x7fffefece9e0 <QArrayData::shared_null>}, m_fontDb = {static staticMetaObject = {d = {superdata = 0x0, stringdata = 0x7ffff074f7e0, data = 0x7ffff074f640, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}, d = 0x7ffff09e4780}, m_scDLMgr = 0x5555573916d0}
        appRetVal = 0
0000048 0x000055555675bec7 in main(int, char**) (argc=1, argv=0x7fffffffe088) at ./scribus/main_nix.cpp:54
TagsNo tags attached.
PatchNo

Relationships

duplicate of 0004520 assignedjghali Crash while placing multiple large JPEG images 

Activities

jghali

2018-02-28 23:58

administrator   ~0045013

This looks like a crash caused by an out of memory error occurring typically with documents with lots of images. There is basically no reason that a crash happen at the line shown in the backtrace except if some out of memory error happens.

jghali

2018-03-01 00:00

administrator   ~0045014

Basically a duplicate of 0004520.

Issue History

Date Modified Username Field Change
2018-02-27 08:13 jberg New Issue
2018-02-28 23:58 jghali Note Added: 0045013
2018-03-01 00:00 jghali Assigned To => jghali
2018-03-01 00:00 jghali Status new => resolved
2018-03-01 00:00 jghali Resolution open => duplicate
2018-03-01 00:00 jghali Note Added: 0045014
2018-03-01 00:00 jghali Relationship added duplicate of 0004520
2018-03-01 00:00 jghali Status resolved => closed