Bug 354946 - "Could not save" error is not a way to get out of endless computation...
Summary: "Could not save" error is not a way to get out of endless computation...
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: General (show other bugs)
Version: 2.9.8
Platform: Arch Linux Linux
: NOR critical
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-11-06 14:03 UTC by Camille Bissuel
Modified: 2016-02-01 07:23 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Camille Bissuel 2015-11-06 14:03:52 UTC
(tested with Krita 2.9.9 under Antergos)

When exceptionally Krita hang on an endless computation (brush stroke not rendering, transformation not solving, whatever the bad loop is...), like it happened to me 3 times today (and several times in the past), despite I'm not able to say what caused this hanging... 
There is absolutely no way to save his work and restart Krita !

The "could not save" error behavior, meant to allow computation to finish before saving, block the way to save anything, which result in loosing our work anyway, an equivalent to a crash.
Waiting half an hour or 2 hours is the same, automatic saving do not occur either.

So IMHO, it's a bad design, or unfinished... This message should not appear if Krita is waiting for any operation to finish : Krita should just wait 5, 10 or 30 seconds and force any unfinished operation to CANCEL (or STOP mid way), in order to allow the document to save, which is the absolute priority in such cases.

I don't know if it's easy to solve, but if it need a major rework in the way all operation are handled, it's time to do it with the Krita 3 project.

Thanks !
Comment 1 Halla Rempt 2015-11-06 17:20:56 UTC
Yes, I agree. I don't see often myself, you're hitting this way more than I would have expected. It's really, really hard to properly fix, and worse, in many cases the message itself is bogus...
Comment 2 Halla Rempt 2015-11-06 17:26:13 UTC
What I really need is a sure-fire way of triggering this hang.
Comment 3 Camille Bissuel 2015-11-06 17:42:56 UTC
As soon as I found one, I send it to you ;) 
But it's quite random I must admit !

Sorry it's so complicated...

To reassure you, 3 times in a row is really exceptional... It happened drawing strait lines with a blend and paint brush partially outside of the canvas... But I can't reproduce now...
Comment 4 Halla Rempt 2016-01-27 10:16:14 UTC
See https://phabricator.kde.org/T592

*** This bug has been marked as a duplicate of bug 350283 ***
Comment 5 Camille Bissuel 2016-01-27 11:00:46 UTC
Great, thank you ;)
Comment 6 Dmitry Kazakov 2016-01-31 14:50:41 UTC
Git commit 0036213f2e9ae5eb24ef013c52ce5560541a8ec7 by Dmitry Kazakov.
Committed on 31/01/2016 at 14:50.
Pushed by dkazakov into branch 'master'.

Add waiting feedback when the user tries to save a busy image

When an image is calculating some action, saving is impossible,
so before we were just cancelling  it. Now we added a special waiting dialog that
shows the user that the image is doing something and he should wait.

There is also a button for cancelling currently running image action.
Related: bug 350283
Fixes T592

M  +2    -0    libs/ui/CMakeLists.txt
M  +4    -0    libs/ui/KisMainWindow.cpp
A  +77   -0    libs/ui/dialogs/kis_delayed_save_dialog.cpp     [License: GPL (v2+)]
A  +52   -0    libs/ui/dialogs/kis_delayed_save_dialog.h     [License: GPL (v2+)]
A  +74   -0    libs/ui/dialogs/kis_delayed_save_dialog.ui

http://commits.kde.org/krita/0036213f2e9ae5eb24ef013c52ce5560541a8ec7
Comment 7 Halla Rempt 2016-02-01 07:23:10 UTC
Git commit e0f8292c6553144549e017fb0ac58973ead91124 by Boudewijn Rempt.
Committed on 01/02/2016 at 07:22.
Pushed by rempt into branch 'calligra/2.9'.

Add waiting feedback when the user tries to save a busy image

When an image is calculating some action, saving is impossible,
so before we were just cancelling  it. Now we added a special waiting dialog that
shows the user that the image is doing something and he should wait.

There is also a button for cancelling currently running image action.
Related: bug 350283
Fixes T592

Patch backported from 3.0.

M  +2    -0    krita/ui/CMakeLists.txt
M  +4    -0    krita/ui/KisMainWindow.cpp
A  +77   -0    krita/ui/dialogs/kis_delayed_save_dialog.cpp     [License: GPL (v2+)]
A  +52   -0    krita/ui/dialogs/kis_delayed_save_dialog.h     [License: GPL (v2+)]
A  +74   -0    krita/ui/dialogs/kis_delayed_save_dialog.ui

http://commits.kde.org/calligra/e0f8292c6553144549e017fb0ac58973ead91124