Opening tests:
- WORKSFORME A multi-layer pixelart animation. [SUCCESS] (However, closing this file ended in a crash)
Save-close-open tests
The files for these are included in a zip I put onto dropbox. There's also some crashes included, but I am not sure they are specific to this branch:
https://www.dropbox.com/s/eqlrmedpwvjk5im/Async_Tests.zip?dl=0
A vector in 8bit RGBA. Saves and loads correctly. However, the preview.png doesn't show the vector. Mergedimage.png seems to show the vector just fine.- WORKSFORME HOWEVER: Editing the vector doesn't trigger the "document is edited" stuff in the title bar. Changing the layer name does trigger this.
A 8bit LABA image. Save open close a success, but here I noticed that- WORKSFORME the Layer color labels don't save. (I think from my tests they do load, but I cannot be certain.)
I have instant preview on, and I noticed that if I hid or showed a layer, the pick-color-from-merged-image would be picking from the older version of the image.Moved to T6652
Animation test 2: Ghost. Opacity keyframes load but do not save.A complicated vector file. Same issue as 1, everything else saves/loads just fine.
General
I was for a while there convinced that the autosave functionality was broken, until I realised I hadn't enabled "show hidden files", and even after that I had to check the folder to see if an autosave had happened, because during painting I noticed NOTHING.Instant preview has gotten a lot slower. Like, before I would be able to handle its shortcomings and just paint, but now it honestly feels slower. If I had to point fingers, I'd say the progress bar generation is slower that before.Not related to Async saving or progress reporting, so moved to a separate task T6618But the progress bar never gets to 100% when I save to .kra (with small files)Sometimes, when the image is left alone for a while(in my case a single vector object was there), it's showing a progressbar stuck on 50% permanently (small files again)When I create a new document, the progress bar shows up and stays at 0%. Then occasionallly it changes to a higher percentage. It generally gets to 50%, but just hangs there.Some weird crash:Not regression: moved to a separate T6650
I had another crash with a 4096x4096 file at 16bit int(I thought I'd try make a heightmap... Crash happened as I tried generating noise with the noise filter), couldn't get a backtrace, but I did get this... > Qt Concurrent has caught an exception thrown from a worker thread. > This is not supported, exceptions thrown in worker threads must be > caught before control returns to Qt Concurrent. > Qt Concurrent has caught an exception thrown from a worker thread. > This is not supported, exceptions thrown in worker threads must be > caught before control returns to Qt Concurrent. > Qt Concurrent has caught an exception thrown from a worker thread. > This is not supported, exceptions thrown in worker threads must be > caught before control returns to Qt Concurrent. > Qt Concurrent has caught an exception thrown from a worker thread. > This is not supported, exceptions thrown in worker threads must be > caught before control returns to Qt Concurrent. > terminate called recursively > terminate called recursively > terminate called after throwing an instance of 'terminate called recursively > std::bad_alloc' > what(): std::bad_alloc
I did find that if you take an autosave, and then work on it, it is possible to have an autosave of an autosave. I understand why this happens, but it is pretty... surreal nonetheless.I got a crash with an Artistic Text on screen. It's attached to the message.Added a workaround. The shape should be removes