1. 10 Jan, 2020 4 commits
    • Lamarque Souza's avatar
    • Boudewijn Rempt's avatar
      Check pointer before dereferencing · a32257df
      Boudewijn Rempt authored
      BUG:415998
      a32257df
    • Boudewijn Rempt's avatar
      Remove commented-out code · d8dce334
      Boudewijn Rempt authored
      d8dce334
    • Boudewijn Rempt's avatar
      Clear the activationLocks before deactivating the Stroke and Fill config widgets · 7f7d98d9
      Boudewijn Rempt authored
      When loading a file with a vector layer, the node manager will
      activate and deactivate the default tool in the wrong order. This
      cannot be worked around; and in fact, we get a LOT of activate
      and deactivate calls because just creating the config widgets will
      call those:
      
      KoStrokeConfigWidget::KoStrokeConfigWidget DefaultToolTabbedWidget(0x562719ef0e00, name="default-tool-tabbed-widget")
      KoFillConfigWidget::KoFillConfigWidget KoFillConfigWidget(0x562719f206a0)
      KoFillConfigWidget::deactivate() KoFillConfigWidget(0x562719f206a0, name="KoFillConfigWidget")  locks: 0
      KoFillConfigWidget::activate() KoFillConfigWidget(0x562719f206a0, name="KoFillConfigWidget") 2
      KoStrokeConfigWidget::deActivate(): locks 0
      KoFillConfigWidget::deactivate() KoFillConfigWidget(0x562719f206a0, name="KoFillConfigWidget")  locks: 0
      KoFillConfigWidget::KoFillConfigWidget KoFillConfigWidget(0x56271a039190)
      KoFillConfigWidget::deactivate() KoFillConfigWidget(0x56271a039190, name="KoFillConfigWidget")  locks: 0
      KoFillConfigWidget::activate() KoFillConfigWidget(0x56271a039190, name="KoFillConfigWidget") 2
      KoStrokeConfigWidget::activate(): locks 2
      KoFillConfigWidget::activate() KoFillConfigWidget(0x562719f206a0, name="KoFillConfigWidget") 2
      KoFillConfigWidget::deactivate() KoFillConfigWidget(0x56271a039190, name="KoFillConfigWidget")  locks: 0
      KoStrokeConfigWidget::deActivate(): locks 0
      KoFillConfigWidget::deactivate() KoFillConfigWidget(0x562719f206a0, name="KoFillConfigWidget")  locks: 0
      KoFillConfigWidget::deactivate() KoFillConfigWidget(0x56271a039190, name="KoFillConfigWidget")  locks: 2
      SAFE ASSERT (krita): "d->deactivationLocks.empty()" in file /home/boud/dev/krita/libs/ui/widgets/KoFillConfigWidget.cpp, line 358
      KoStrokeConfigWidget::deActivate(): locks 2
      SAFE ASSERT (krita): "d->deactivationLocks.empty()" in file /home/boud/dev/krita/libs/ui/widgets/KoStrokeConfigWidget.cpp, line 481
      
      BUG:416000
      7f7d98d9
  2. 09 Jan, 2020 1 commit
    • Lamarque Souza's avatar
      Commit 97c03e0f was reverted · 8a0b7cbe
      Lamarque Souza authored
      by ef55574a and then the crash
      happens again.
      
      I have tested this change and it does not break PalleteDocker.
      
      PS: KIS_ASSERT_RECOVER_RETURN_VALUE trigger an assert and krita
      fails to start up. KisPaletteModel::index works if I use
      KIS_SAFE_ASSERT_RECOVER_RETURN_VALUE and change
      KoColorSet::getGroup to return null pointer when its name
      parameter is an empty string, but KisSwatchGroup::rowCount
      crashes, so I think it is simpler to return an default
      QModelIndex as soon as possible in KisPaletteModel::index
      
      CCBUG:414890
      8a0b7cbe
  3. 08 Jan, 2020 3 commits
  4. 07 Jan, 2020 9 commits
  5. 06 Jan, 2020 3 commits
  6. 05 Jan, 2020 2 commits
  7. 04 Jan, 2020 1 commit
  8. 03 Jan, 2020 4 commits
  9. 01 Jan, 2020 1 commit
  10. 21 Dec, 2019 2 commits
  11. 19 Dec, 2019 3 commits
  12. 16 Dec, 2019 1 commit
  13. 09 Dec, 2019 3 commits
  14. 05 Dec, 2019 1 commit
  15. 04 Dec, 2019 2 commits
    • Dmitry Kazakov's avatar
      Fix a crash when cancelling Transform Tool action · 2dc2ed5f
      Dmitry Kazakov authored
      The crash happens only on systems that have asserts enabled, that
      is, don't have NDEBUG defined.
      
      Binding uninitialized '*m_savedTransformArgs' to a cont-reference
      generated valid c++ code (a reference initialized with nullptr),
      and given that finishStrokeImpl() didn't try to use/dereference
      this reference, the code worked fine and didn't crash on systems
      without asserts.
      
      But on systems with asserts enabled (non NDEBUG), boost::optional
      triggered a sanity check assert for dereferencing nullptr and crashed
      the application.
      
      The patch removes entire code for resetting m_savedTransformArgs in
      cancelStrokeCallback(). It was actually an artifact of some initial
      refactoring.
      
      Thanks Fredrik Hansson for pointing out the problem!
      kde/krita!197
      
      BUG:414672
      2dc2ed5f
    • Boudewijn Rempt's avatar
      Split the log in sysinfo and session log · 2771cd99
      Boudewijn Rempt authored
      2771cd99