When building Krita git master on mageia6, I have this error message: KeyError Python 3.5.3: /bin/python3 Mon Jul 24 15:04:12 2017 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /home/timo/kde/inst/share/krita/pykrita/krita/dockwidgetfactory.py in createDockWidget(self=<krita.dockwidgetfactory.DockWidgetFactory object>) 9 super().__init__(_id, _dockPosition) 10 self.klass = _klass 11 12 def createDockWidget(self): 13 return self.klass() self = <krita.dockwidgetfactory.DockWidgetFactory object> self.klass = <class 'palette_docker.palette_docker.Palette_Docker'> /home/timo/kde/inst/share/krita/pykrita/palette_docker/palette_docker.py in __init__(self=<palette_docker.palette_docker.Palette_Docker object>) 27 self.cmb_palettes.addItem(palette_name) 28 29 self.currentPalette = Palette(allPalettes["Default"]) 30 self.cmb_palettes.currentTextChanged.connect(self.slot_paletteChanged) 31 layout.addWidget(self.cmb_palettes) # add combobox to the layout self = <palette_docker.palette_docker.Palette_Docker object> self.currentPalette undefined global Palette = <class 'PyKrita.krita.Palette'> allPalettes = {'Concept-cookie': <PyKrita.krita.Resource object>, 'Dégradé': <PyKrita.krita.Resource object>, 'Markers': <PyKrita.krita.Resource object>, 'Par défaut': <PyKrita.krita.Resource object>, 'PixelArt 16': <PyKrita.krita.Resource object>, 'PixelArt 32': <PyKrita.krita.Resource object>, 'Ps': <PyKrita.krita.Resource object>, 'Swatch CMYK': <PyKrita.krita.Resource object>, 'Swatch RGB': <PyKrita.krita.Resource object>, 'Swatch colored grey': <PyKrita.krita.Resource object>, ...} KeyError: 'Default' __cause__ = None __class__ = <class 'KeyError'> __context__ = None __delattr__ = <method-wrapper '__delattr__' of KeyError object> __dict__ = {} __dir__ = <built-in method __dir__ of KeyError object> __doc__ = 'Mapping key not found.' __eq__ = <method-wrapper '__eq__' of KeyError object> __format__ = <built-in method __format__ of KeyError object> __ge__ = <method-wrapper '__ge__' of KeyError object> __getattribute__ = <method-wrapper '__getattribute__' of KeyError object> __gt__ = <method-wrapper '__gt__' of KeyError object> __hash__ = <method-wrapper '__hash__' of KeyError object> __init__ = <method-wrapper '__init__' of KeyError object> __le__ = <method-wrapper '__le__' of KeyError object> __lt__ = <method-wrapper '__lt__' of KeyError object> __ne__ = <method-wrapper '__ne__' of KeyError object> __new__ = <built-in method __new__ of type object> __reduce__ = <built-in method __reduce__ of KeyError object> __reduce_ex__ = <built-in method __reduce_ex__ of KeyError object> __repr__ = <method-wrapper '__repr__' of KeyError object> __setattr__ = <method-wrapper '__setattr__' of KeyError object> __setstate__ = <built-in method __setstate__ of KeyError object> __sizeof__ = <built-in method __sizeof__ of KeyError object> __str__ = <method-wrapper '__str__' of KeyError object> __subclasshook__ = <built-in method __subclasshook__ of type object> __suppress_context__ = False __traceback__ = <traceback object> args = ('Default',) with_traceback = <built-in method with_traceback of KeyError object> The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/home/timo/kde/inst/share/krita/pykrita/krita/dockwidgetfactory.py", line 13, in createDockWidget return self.klass() File "/home/timo/kde/inst/share/krita/pykrita/palette_docker/palette_docker.py", line 29, in __init__ self.currentPalette = Palette(allPalettes["Default"]) KeyError: 'Default' Also, here is the gdb log: Application: krita (krita), signal: Segmentation fault Using host libthread_db library "/lib64/libthread_db.so.1". [Current thread is 1 (Thread 0x7fc5995a5840 (LWP 4082))] Thread 9 (Thread 0x7fc56318c700 (LWP 4092)): #0 0x00007fc5a1100c4f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0 #1 0x00007fc5a2efedfb in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5 #2 0x00007fc5a3bfe582 in QFileInfoGatherer::run() () at /lib64/libQt5Widgets.so.5 #3 0x00007fc5a2efdff9 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5 #4 0x00007fc5a10fb66d in start_thread () at /lib64/libpthread.so.0 #5 0x00007fc5a22fee4d in clone () at /lib64/libc.so.6 Thread 8 (Thread 0x7fc56298b700 (LWP 4091)): #0 0x00007fc5a1100c4f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0 #1 0x00007fc5a2efedfb in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5 #2 0x00007fc5a2ef83e6 in QSemaphore::tryAcquire(int, int) () at /lib64/libQt5Core.so.5 #3 0x00007fc5aa634513 in KisTileDataSwapper::waitForWork() (this=<optimized out>) at /home/timo/kde/src/krita/libs/image/tiles3/swap/kis_tile_data_swapper.cpp:86 #4 0x00007fc5aa6346da in KisTileDataSwapper::run() (this=0x7fc5aaaf1d00 <(anonymous namespace)::Q_QGS_s_instance::innerFunction()::holder+64>) at /home/timo/kde/src/krita/libs/image/tiles3/swap/kis_tile_data_swapper.cpp:92 #5 0x00007fc5a2efdff9 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5 #6 0x00007fc5a10fb66d in start_thread () at /lib64/libpthread.so.0 #7 0x00007fc5a22fee4d in clone () at /lib64/libc.so.6 Thread 7 (Thread 0x7fc573fff700 (LWP 4088)): #0 0x00007fc5a1100ff8 in pthread_cond_timedwait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0 #1 0x00007fc5a2efed46 in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5 #2 0x00007fc5a2efa764 in QThreadPoolThread::run() () at /lib64/libQt5Core.so.5 #3 0x00007fc5a2efdff9 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5 #4 0x00007fc5a10fb66d in start_thread () at /lib64/libpthread.so.0 #5 0x00007fc5a22fee4d in clone () at /lib64/libc.so.6 Thread 6 (Thread 0x7fc578fe8700 (LWP 4087)): #0 0x00007fc5a1100ff8 in pthread_cond_timedwait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0 #1 0x00007fc5a2efed46 in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5 #2 0x00007fc5a2efa764 in QThreadPoolThread::run() () at /lib64/libQt5Core.so.5 #3 0x00007fc5a2efdff9 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5 #4 0x00007fc5a10fb66d in start_thread () at /lib64/libpthread.so.0 #5 0x00007fc5a22fee4d in clone () at /lib64/libc.so.6 Thread 5 (Thread 0x7fc5797e9700 (LWP 4086)): #0 0x00007fc5a1100ff8 in pthread_cond_timedwait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0 #1 0x00007fc5a2efed46 in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5 #2 0x00007fc5a2efa764 in QThreadPoolThread::run() () at /lib64/libQt5Core.so.5 #3 0x00007fc5a2efdff9 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5 #4 0x00007fc5a10fb66d in start_thread () at /lib64/libpthread.so.0 #5 0x00007fc5a22fee4d in clone () at /lib64/libc.so.6 Thread 4 (Thread 0x7fc579fea700 (LWP 4085)): #0 0x00007fc5a1100ff8 in pthread_cond_timedwait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0 #1 0x00007fc5a2efed46 in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5 #2 0x00007fc5a2efa764 in QThreadPoolThread::run() () at /lib64/libQt5Core.so.5 #3 0x00007fc5a2efdff9 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5 #4 0x00007fc5a10fb66d in start_thread () at /lib64/libpthread.so.0 #5 0x00007fc5a22fee4d in clone () at /lib64/libc.so.6 Thread 3 (Thread 0x7fc585019700 (LWP 4084)): #0 0x00007fc5a22f300d in poll () at /lib64/libc.so.6 #1 0x00007fc59e95dc94 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0 #2 0x00007fc59e95dd9c in g_main_context_iteration () at /lib64/libglib-2.0.so.0 #3 0x00007fc5a3113e2b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5 #4 0x00007fc5a30bf49a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5 #5 0x00007fc5a2ef93bc in QThread::exec() () at /lib64/libQt5Core.so.5 #6 0x00007fc5a6095635 in QDBusConnectionManager::run() () at /lib64/libQt5DBus.so.5 #7 0x00007fc5a2efdff9 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5 #8 0x00007fc5a10fb66d in start_thread () at /lib64/libpthread.so.0 #9 0x00007fc5a22fee4d in clone () at /lib64/libc.so.6 Thread 2 (Thread 0x7fc58fe1f700 (LWP 4083)): #0 0x00007fc5a22f300d in poll () at /lib64/libc.so.6 #1 0x00007fc5a5c55902 in _xcb_conn_wait () at /lib64/libxcb.so.1 #2 0x00007fc5a5c57657 in xcb_wait_for_event () at /lib64/libxcb.so.1 #3 0x00007fc591ca7be9 in QXcbEventReader::run() () at /lib64/libQt5XcbQpa.so.5 #4 0x00007fc5a2efdff9 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5 #5 0x00007fc5a10fb66d in start_thread () at /lib64/libpthread.so.0 #6 0x00007fc5a22fee4d in clone () at /lib64/libc.so.6 Thread 1 (Thread 0x7fc5995a5840 (LWP 4082)): [KCrash Handler] #6 0x00007fc5a3b038b0 in QDockWidget::toggleViewAction() const () at /lib64/libQt5Widgets.so.5 #7 0x00007fc5abb122f0 in KisMainWindow::KisMainWindow() (this=<optimized out>, __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at /home/timo/kde/src/krita/libs/ui/KisMainWindow.cpp:325 #8 0x00007fc5abb1e576 in KisPart::createMainWindow() (this=0x7fc5ac007fe0 <_ZZN12_GLOBAL__N_116Q_QGS_s_instance13innerFunctionEvE6holder>) at /home/timo/kde/src/krita/libs/ui/KisPart.cpp:210 #9 0x00007fc5abad8290 in KisApplication::start(KisApplicationArguments const&) (this=this@entry=0x7fffa89d44b0, args=...) at /home/timo/kde/src/krita/libs/ui/KisApplication.cpp:422 #10 0x000000000040532e in main(int, char**) (argc=1, argv=<optimized out>) at /home/timo/kde/src/krita/krita/main.cc:257
default is the palette named default... why don't you have this? I mean, I can try to get the last selected palette from the config, but honestly, why don't you have the default palette?
Git commit 81fda7a88f945f3d71cd8cd4a4b29555a515a688 by Wolthera van Hövell tot Westerflier. Committed on 24/07/2017 at 15:28. Pushed by woltherav into branch 'master'. Pick the first palette in the list always to prevent crashes. But why are people missing the default palette? M +1 -1 plugins/extensions/pykrita/plugin/plugins/palette_docker/palette_docker.py https://commits.kde.org/krita/81fda7a88f945f3d71cd8cd4a4b29555a515a688