https://bugs.winehq.org/show_bug.cgi?id=51561
Bug ID: 51561 Summary: Wine's built-in gdiplus.dll lags in Paint.NET compared to native (Win 7) gdiplus.dll Product: Wine Version: 6.14 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: gdiplus Assignee: wine-bugs@winehq.org Reporter: kle@bluewin.ch Distribution: ---
After intensive testing I can confirm that the built-in gdiplus.dll "lags" in Paint.NET 3.5.11 and Wine 6.13 / 6.14.
When the native gdiplus.dll from Windows 7 is used (through winetricks) the performance is clearly better, no lag is present. Unfortunately the native gdiplus.dll works not stable, Paint.NET 3.5.11 crashes reproducible after some time. So this is therefore not an usable alternative.
Maybe this bug report here is related to bug 24653: https://bugs.winehq.org/show_bug.cgi?id=24653
https://bugs.winehq.org/show_bug.cgi?id=51561
Zebediah Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |z.figura12@gmail.com
--- Comment #1 from Zebediah Figura z.figura12@gmail.com --- Can you please describe exactly what you are doing to provoke poor performance?
https://bugs.winehq.org/show_bug.cgi?id=51561
--- Comment #2 from C. Leu kle@bluewin.ch --- Hi Zebediah Figura
Yes it should be simple to reproduce, - just paint a normal line in Paint.NET 3.5.11. You should notice that there is some lag during drawing the line and in my case there is also a small delay during the drawing. (The mouse cursor looks to be "faster" and the drawn line follows it with around one second "lateness".) This reminds me to bug 24653.
As mentioned this does not happen with native gdiplus.dll, - the line is written 1:1 with no lag or delay and exactly were you want to draw it. Unfortunately the native gdiplus.dll runs not stable, it crashes reproducibility after some time. The built-in gdiplus.dll runs otherwise stable and reliable.
It should be noted that I have used a clean 64bit Wine prefix. More information can be found here: https://appdb.winehq.org/objectManager.php?sClass=version&iId=19822
I can upload the Paint.NET crash report for the native Win 7 gdiplus.dll.
https://bugs.winehq.org/show_bug.cgi?id=51561
--- Comment #3 from C. Leu kle@bluewin.ch --- A new little addition, the described issue still exists also under Wine 6.20.
When a line is drawn in Paint.NET 3.5.11 (and the built-in gdiplus.dll is used) the operation always takes place with a delay.
This is not the case when the native gdiplus.dll is used, - the drawn line is painted 1:1 without any delay. Unfortunately Paint.NET 3.5.11 runs not stable when the native gdiplus.dll is used, - it crashes reproducible after some time.
However, in conjunction with the built-in gdiplus.dll Paint.NET 3.5.11 runs otherwise stable and reliable. It could be said, that Paint.NET 3.5.11 runs apart from this gdiplus.dll delay-issue effectively platinum-like. ;-)
https://bugs.winehq.org/show_bug.cgi?id=51561
--- Comment #4 from C. Leu kle@bluewin.ch --- And now follows a short December update.
The situation here has changed somewhat in Wine 7.0-rc2. The described lag (when a line is drawn in Paint.NET 3.5.11) is somehow smaller then in previous versions of Wine.
It is still present, especially when compared with the native gdiplus.dll were the functionality is smooth. However, the delay when a line is draw is definitely shorter then previously.
The crash of Paint.NET 3.5.11 in conjunction with the native gdiplus.dll is as well present and reproducible. This doesn't occur with the built-in gdiplus.dll.
Finally I wish all those reading happy holidays and a good switch into the new year 2022! :-)
https://bugs.winehq.org/show_bug.cgi?id=51561
Bernhard Kölbl besentv@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |besentv@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=51561
Bartosz gang65@poczta.onet.pl changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |gang65@poczta.onet.pl
https://bugs.winehq.org/show_bug.cgi?id=51561
--- Comment #5 from Bartosz gang65@poczta.onet.pl --- @C. Leu Unfortunately I was not able to install Paint.NET 3.5 (Paint.NET 3.0 is working perfectly without lag).
Could you run Paint.NET 3.5 with WINEDEBUG, and attach logs from it:
WINEDEBUG=+timestamp,+gdiplus wine PaintDotNet.exe
https://bugs.winehq.org/show_bug.cgi?id=51561
--- Comment #6 from Bartosz gang65@poczta.onet.pl --- After enabling Paint.NET with logging, try to reproduce the issue, and interrupt application. I would like to check which functions is causing lags.
https://bugs.winehq.org/show_bug.cgi?id=51561
--- Comment #7 from C. Leu kle@bluewin.ch --- Okay, here we go. Note, the Paint.NET log file is HUGE. I had to upload it to Google Drive:
https://drive.google.com/file/d/1dlx0wtJhS1LNo18huYuVM7o11QnqiSEd/view?usp=s...
I have also uploaded my Wine prefix (Wine devel 8.13) containing Paint.NET 3.5.11:
https://drive.google.com/file/d/1Pua6kuT9CdCf8pi7lmhuahxxonPVuKw7/view?usp=s...
And by the way you may contact about that gdiplus topic developer 9ary from this thread here:
https://github.com/cryinkfly/Autodesk-Fusion-360-for-Linux/issues/311
He has much more technical knowledge and he has noticed some similar issues with Autodesk Fusion 360. Furthermore he has also made some Wine MRs which are improving the situation regarding Autodesk Fusion. (But those are not directly related to the gdiplus behavior reported here.) ;-)
https://bugs.winehq.org/show_bug.cgi?id=51561
--- Comment #8 from C. Leu kle@bluewin.ch --- Great news, the lag regarding the gdiplus.dll file is no longer present on Wine 8.15 devel! :-)
Unfortunately there exist a new regression. I can confirm that it is not possible to install Paint.NET 3.5.11 under Wine 8.15 devel. It looks that this problem is present since some time and most likely it affects also Wine 8.14 and earlier.
But the installation works fine in Wine 8.0.2 stable. So this was the solution in my case. I have simply installed Paint.NET 3.5.11 under Wine stable. Then I have copied over the whole prefix to my newer computer and upgraded it to Wine 8.15 devel. This worked perfectly well.
As mentioned, the lag regarding the gdiplus.dll file is no longer present. But according to my first testing Paint.NET runs less stable. Unlike to the previous situation with the "lagging operation", the program is sometimes crashing. This behavior is very similar to the case when the native gdiplus.dll file is used. So while the performance of the built-in gdiplus.dll is now on par with the native one, the stability has gotten worse.
@Bartosz Should I now close this issue here? I can open a new one which explicitly targets the crash of Paint.NET 3.5.11 with the built-in gdiplus.dll.
https://bugs.winehq.org/show_bug.cgi?id=51561
--- Comment #9 from Bartosz gang65@poczta.onet.pl --- Please close this bug report as fixed, and open a new one.
https://bugs.winehq.org/show_bug.cgi?id=51561
Bartosz gang65@poczta.onet.pl changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |madewokherd@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=51561
C. Leu kle@bluewin.ch changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Status|UNCONFIRMED |RESOLVED
--- Comment #10 from C. Leu kle@bluewin.ch --- Closing, the lag when painting a line in Paint.NET 3.5.11 is no longer present under Wine 8.15.
https://bugs.winehq.org/show_bug.cgi?id=51561
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #11 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 8.16.