https://bugs.winehq.org/show_bug.cgi?id=51748
Bug ID: 51748 Summary: NIK Dfine2 crashes/hangs (worked before) Product: Wine Version: 6.15 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: pit@astro.su.se Distribution: ---
Created attachment 70633 --> https://bugs.winehq.org/attachment.cgi?id=70633 Backtrace of running Dfine2 from within GIMP
I'm using wine to run the (free) NIK collection from Google for image processing (version 1.2.11, e.g., from here: https://www.techspot.com/downloads/6809-google-nik-collection.html)
This was working great so far, for many years (at least 3). I run openSUSE Tumbleweed that regularly upgrades applications. After the last upgrade to Wine 6.15 this crashes when processing/saving the image. I use gimp and the plugin ShellOut.py as a wrapper. There, I get an error message from wine (Unhandled exception: page fault on read access, see attached backtrace_Dfine2_new.txt)
To check, I renamed my current ~/.wine and did a clean new install of NIK (wine nikcollection-full-1.2.11.exe). I get the same error (the backlog above is from this run). Finally I copied the temporary (16bit tif) file gimp saves and ran Dfine2 from command line, to catch the output. Irritatingly, this did not crash, but just hang hogging the CPU at 100%.... The console output is attached, too.
https://bugs.winehq.org/show_bug.cgi?id=51748
--- Comment #1 from Pit pit@astro.su.se --- Created attachment 70634 --> https://bugs.winehq.org/attachment.cgi?id=70634 Console output running dfine2 directly
https://bugs.winehq.org/show_bug.cgi?id=51748
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dark.shadow4@web.de
--- Comment #2 from Fabian Maurer dark.shadow4@web.de --- Could you provide detailed steps on how to reproduce the issue?
https://bugs.winehq.org/show_bug.cgi?id=51748
--- Comment #3 from Pit pit@astro.su.se --- Ah, my excuses. Install the NIK collection, then run Dfine2 and load a 16bit tif image. (I use a shell script, that is also called from GIMP: #!/bin/sh exec wine ~/.wine/drive_c/Program\ Files/Google/Nik\ Collection/Dfine\ 2/Dfine\ 2\ (64-Bit)/Dfine2.exe $* )
Dfine will analyse it and show a processed version. No need to do anything - just click 'Save' (this will overwrite the image). At around 80% of the progress bar it will crash. I tried with different tifs, different sizes etc, so I don't think a special file is needed (the ones I typically process are quite large, astronomical 6000x4000 images)
https://bugs.winehq.org/show_bug.cgi?id=51748
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- URL| |https://dl.google.com/edged | |l/photos/nikcollection-full | |-1.2.11.exe Keywords| |download
https://bugs.winehq.org/show_bug.cgi?id=51748
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Ever confirmed|0 |1 Status|UNCONFIRMED |NEW CC| |pgofman@codeweavers.com Regression SHA1| |7f88d691ad4824d10fff0fd47b6 | |0949ab7447856
--- Comment #4 from Fabian Maurer dark.shadow4@web.de --- Bisected to
commit 7f88d691ad4824d10fff0fd47b60949ab7447856 Author: Paul Gofman pgofman@codeweavers.com Date: Wed Jan 27 20:33:50 2021 +0300
windowscodecs: Implement CommonEncoderFrame_GetMetadataQueryWriter().
Reverting fixes the issue as of 6.17. To be exact, it's CommonEncoderFrame_GetMetadataQueryWriter, not the gif version.
https://bugs.winehq.org/show_bug.cgi?id=51748
--- Comment #5 from Fabian Maurer dark.shadow4@web.de --- Created attachment 70636 --> https://bugs.winehq.org/attachment.cgi?id=70636 Hack to work around the issue
Attaching a patch to stub mqr_GetEnumerator.
@Paul Gofman Could you please take a look and check whether a stub like this would be acceptable?
https://bugs.winehq.org/show_bug.cgi?id=51748
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |regression
https://bugs.winehq.org/show_bug.cgi?id=51748
--- Comment #6 from Paul Gofman pgofman@codeweavers.com --- So it is adding a query writer stub interface triggered the use of unimplemented stuff but its improving the query reader's _GetEnumerator stub which helps? Strange but why not.
I think it is Esme to decide but I don't see anything wrong in returning a stub string enumerator there.
The suggestions from reading the patch: - string_enumerator_Next(): should not it set '*num_returned' to 0? I guess such a stub should behave like the complete implementation for the case of no strings in enumeration; - maybe check for memory allocation failure in string_enumerator_create() and return an E_OUTOFMEMORY accordingly; - 'string_enumerator_create(void **ppv)': I think it is better to just return IEnumString ** directly instead of 'void **'.
https://bugs.winehq.org/show_bug.cgi?id=51748
--- Comment #7 from Paul Gofman pgofman@codeweavers.com --- Also, since it is a stub, it should have FIXMEs in methods which are supposed to return data.
https://bugs.winehq.org/show_bug.cgi?id=51748
--- Comment #8 from Pit pit@astro.su.se --- My excuses, I lost track of this due to local issues....
Did that hack make it into the main tree meanwhile? I just tried the latest distribution package (wine-6.19-1379.12.x86_64, openSUSE Tumbleweed), and it still crashes :(
https://bugs.winehq.org/show_bug.cgi?id=51748
--- Comment #9 from Paul Gofman pgofman@codeweavers.com --- The stubs are added in just released Wine 6.23, so this should hopefully be fixed now.
https://bugs.winehq.org/show_bug.cgi?id=51748
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |windowscodecs Resolution|--- |FIXED Fixed by SHA1| |3b3394bc8e5a8ecdb7992b6e023 | |c0da833203c2f Status|NEW |RESOLVED
--- Comment #10 from Fabian Maurer dark.shadow4@web.de --- Confirming fixed in wine-6.23.
See https://source.winehq.org/git/wine.git/?a=commit;h=3b3394bc8e5a8ecdb7992b6e0...
https://bugs.winehq.org/show_bug.cgi?id=51748
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #11 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 7.0-rc1.
https://bugs.winehq.org/show_bug.cgi?id=51748
--- Comment #12 from Pit pit@astro.su.se --- Sorry for delay in answering (as I opened the bug). TW now also has 6.23, and indeed it works again :) Thanks!