Summary: | Modifying layer properties causes crash | ||
---|---|---|---|
Product: | [Applications] krita | Reporter: | Pablo Selín Carrasco Armijo <pabloselin> |
Component: | General | Assignee: | Dmitry Kazakov <dimula73> |
Status: | RESOLVED WORKSFORME | ||
Severity: | crash | CC: | antti.savo, dimula73, halla |
Priority: | NOR | Keywords: | drkonqi, triaged |
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Ubuntu | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: |
Description
Pablo Selín Carrasco Armijo
2018-04-07 19:55:13 UTC
Any chance of you getting a video of it? If you can reproduce it that is. Hmm, It's pretty random I think, but it happened twice to me today, if I find the pattern of the crash I'll record a video... but I just tried to reproduce it and couldn't make it happen... I think I know what can be the reason of this bug... Hm, bug 383858 looks related, but the fix for it will probably be different... Hi, Pablo! Could you tell me please, did you have any animated layers in this image that caused a crash? Well, looking at the code, I can see only one way how the crash can happen, but it needs quite a lot of coincidences happen at once... Case a) 1) Undo Limit should have be set to 0 2) Some animation frames should have been removed before the last action 3) Removal of animation frames should not complete before layer properties change Case b) [Krita 4.0.0 and earlier only] 1) Some animation frame(s) were added 2) Undo was requested for them 3) Before undo was completed, layer properties were changed. In Krita 4.0.0 changing visibility of the layer causes resetting redo information that could cause such thing. But it is highly improbably. I tried both cases, but couldn't reproduce the problem :( (In reply to Dmitry Kazakov from comment #5) > Hi, Pablo! > > Could you tell me please, did you have any animated layers in this image > that caused a crash? No, I was working only with paint layers... Weird, I cannot reproduce the crash in any possible way I tried :( The most possible sequence of a crash is: 1) #12 KisPaintDevice::createThumbnail() asks current KisPaintDeviceData object for a cache object and requests this cache object to get a thumbnail for it. 2) In the meantime some other code in some other thread deletes this KisPaintDeviceData object, and therefore the cache object as well 3) #11 KisPaintDeviceCache::createThumbnail() doesn't know it has just been deleted and continues to generate a thumbnail, requesting an already invalid m_paintDevice pointer, which finally causes a crash. The problem is that I cannot see any way, how point 2) can happen. Neither m_data, not m_lodData are ever deleted throughout the lifetime of a paint device. Only frames are deleted, but Pablo says he didn't use animation that time... Pablo, could you check if the crash only when View->Instant Preview option on or option value doesn't matter? Setting to needinfo, since info is needed. Dear Bug Submitter, This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days, the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging If you have already provided the requested information, please set the bug status as REPORTED so that the KDE team knows that the bug is ready to be confirmed. Thank you for helping us make KDE software even better for everyone! Dear Bug Submitter, This bug has been in NEEDSINFO status with no change for at least 30 days. The bug is now closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging Thank you for helping us make KDE software even better for everyone! |