Version: 1.6 (using KDE KDE 3.5.5) Installed from: Compiled From Sources Compiler: gcc (GCC) 4.0.2 OS: Linux When trying to execute the Python script (Python V.2.4.2) below, Krita crashes. Notice the misspelled "ivert" instead of "invert". --------- class testfilter: def __init__(self): import krosskritacore filter = krosskritacore.getFilter("ivert") testfilter() ---------
Yes, indeed: #5 0xb050e020 in Filter (this=0x87c0180, filter=0x0) at /home/boud/koffice/1.6/koffice/krita/plugins/viewplugins/scripting/kritacore/krs_filter.cpp:31 #6 0xb04e8a94 in Kross::KritaCore::KritaCoreFactory::getFilter ( this=0x8b2f7e0, args=@0xbfdfbf0c) at /home/boud/koffice/1.6/koffice/krita/plugins/viewplugins/scripting/kritacore/kritacoremodule.cpp:157 #7 0xb04ef38d in Kross::Api::Function0<Kross::KritaCore::KritaCoreFactory>::call (this=0x87c3dc8, args=@0xbfdfbf40) at function.h:68 #8 0xb04ef003 in Kross::Api::Event<Kross::KritaCore::KritaCoreFactory>::call (this=0x8b2f7e0, name=@0xbfdfc018, arguments=@0xbfdfbf94) at event.h:212 #9 0xb04e8be1 in Kross::KritaCore::KritaCoreModule::call (this=0x8a51ac0, name=@0xbfdfc018, arguments=@0xbfdfc070) at /home/boud/koffice/1.6/koffice/krita/plugins/viewplugins/scripting/kritacore/kritacoremodule.cpp:279 #10 0xb06d8e4b in Kross::Python::PythonExtension::proxyhandler ( _self_and_name_tuple=0xb053c18c, args=0xb053c86c) at /home/boud/koffice/1.6/koffice/lib/kross/python/pythonextension.cpp:427 #11 0xb05f7c13 in PyCFunction_Call () from /usr/lib/libpython2.4.so.1.0 #12 0xb063202e in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 #13 0xb0633c46 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 #14 0xb05e54f9 in PyFunction_SetClosure () from /usr/lib/libpython2.4.so.1.0 #15 0xb05cae3e in PyObject_Call () from /usr/lib/libpython2.4.so.1.0 #16 0xb05d2a7b in PyMethod_New () from /usr/lib/libpython2.4.so.1.0 #17 0xb05cae3e in PyObject_Call () from /usr/lib/libpython2.4.so.1.0 #18 0xb062cbc8 in PyEval_CallObjectWithKeywords () from /usr/lib/libpython2.4.so.1.0 #19 0xb05d4d52 in PyInstance_New () from /usr/lib/libpython2.4.so.1.0 #20 0xb05cae3e in PyObject_Call () from /usr/lib/libpython2.4.so.1.0 #21 0xb063064c in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 #22 0xb0633c46 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 #23 0xb0633e96 in PyEval_EvalCode () from /usr/lib/libpython2.4.so.1.0 #24 0xb06e935f in Kross::Python::PythonScript::execute (this=0x8b88538) at /home/boud/koffice/1.6/koffice/lib/kross/python/pythonscript.cpp:309 #25 0xb0ce97c0 in Kross::Api::ScriptContainer::execute (this=0x87c9208) at /home/boud/koffice/1.6/koffice/lib/kross/main/scriptcontainer.cpp:181 #26 0xb0cf3da0 in Kross::Api::ScriptAction::activate (this=0x87c91d8) at /home/boud/koffice/1.6/koffice/lib/kross/main/scriptaction.cpp:228 #27 0xb0cf6018 in Kross::Api::ScriptGUIClient::executeScriptAction ( this=0x89d6a40, action=@0xbfdfcc4c) at /home/boud/koffice/1.6/koffice/lib/kross/main/scriptguiclient.cpp:369 #28 0xb0cf614d in Kross::Api::ScriptGUIClient::executeScriptFile ( this=0x89d6a40, file=@0xbfdfccac) at /home/boud/koffice/1.6/koffice/lib/kross/main/scriptguiclient.cpp:359 #29 0xb0cf9e83 in Kross::Api::ScriptGUIClient::executeScriptFile ( this=0x89d6a40) at /home/boud/koffice/1.6/koffice/lib/kross/main/scriptguiclient.cpp:350 #30 0xb0cfa2d0 in Kross::Api::ScriptGUIClient::qt_invoke (this=0x89d6a40, _id=5, _o=0xbfdfcddc) at scriptguiclient.moc:183 #31 0xb71bceb9 in QObject::installEventFilter ()
SVN commit 600105 by berger: forward port: don't crash when trying to access a non existent filter CCBUG:136461 M +6 -1 kritacoremodule.cpp --- trunk/koffice/krita/plugins/viewplugins/scripting/kritacore/kritacoremodule.cpp #600104:600105 @@ -192,7 +192,12 @@ QObject* KritaCoreModule::filter(const QString& filtername) { KisFilter* filter = KisFilterRegistry::instance()->get(filtername).data(); - return new Filter(this, filter); + if(filter) + { + return new Filter(this, filter); + } else { + return 0; + } } QObject* KritaCoreModule::createImage(int width, int height, const QString& colorspace, const QString& name)
SVN commit 600106 by berger: don't crash when trying to access a non existent filter BUG:136461 M +6 -1 kritacoremodule.cpp --- branches/koffice/1.6/koffice/krita/plugins/viewplugins/scripting/kritacore/kritacoremodule.cpp #600105:600106 @@ -154,7 +154,12 @@ { QString name = Kross::Api::Variant::toString(args->item(0)); KisFilter* filter = KisFilterRegistry::instance()->get(name); - return new Filter(filter); + if(filter) + { + return new Filter(filter); + } else { + return 0; + } } Kross::Api::Object::Ptr KritaCoreFactory::newCircleBrush(Kross::Api::List::Ptr args)
You need to log in before you can comment on or make changes to this bug.