https://bugs.winehq.org/show_bug.cgi?id=42825
Bug ID: 42825 Summary: Propellerhead Reason 5 drawn mostly in black and white Product: Wine Version: 2.2 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: uxtheme Assignee: wine-bugs@winehq.org Reporter: z.biberle@gmail.com Regression SHA1: 35ae7c8f5939c0ba77b4023a14596706852f5acd Distribution: ArchLinux
Created attachment 57899 --> https://bugs.winehq.org/attachment.cgi?id=57899 Screenshot of a fresh installation of Reason 5
Propellerhead Reason 5 running on Wine versions after 2.1 draws its custom UI elements in black and white, sometimes with dithering. Standard UI elements (such as scrollbars, buttons and menus) are drawn correctly.
A few other, possibly related, rendering issues exist, such as parts of the UI being drawn in the wrong place. These are not as easily reproducible.
I did a bisection and the issues seem to have begun with commit 35ae7c8f5939c0ba77b4023a14596706852f5acd.
Tested on a fresh 64bit wineprefix and later bisected on a mostly fresh 64bit wineprefix.
https://bugs.winehq.org/show_bug.cgi?id=42825
--- Comment #1 from Zdeněk B. z.biberle@gmail.com --- Created attachment 57900 --> https://bugs.winehq.org/attachment.cgi?id=57900 stderr running on wine 2.5
https://bugs.winehq.org/show_bug.cgi?id=42825
Zdeněk B. z.biberle@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |z.biberle@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=42825
Matteo Bruni matteo.mystral@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |bunglehead@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=42825
--- Comment #2 from Nikolay Sivov bunglehead@gmail.com --- Hi, Zdeněk.
Thanks for the report. Could you attach +uxtheme,+dc,+bitmap,+tid log? It will be better for me to test myself of course, but I don't see Reason 5 trial easily available, do you know where I can find it? If not, does current Reason 9 show the same issue for you?
https://bugs.winehq.org/show_bug.cgi?id=42825
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |regression
https://bugs.winehq.org/show_bug.cgi?id=42825
--- Comment #3 from Zdeněk B. z.biberle@gmail.com --- Created attachment 57941 --> https://bugs.winehq.org/attachment.cgi?id=57941 log with requested debug switches
https://bugs.winehq.org/show_bug.cgi?id=42825
--- Comment #4 from Zdeněk B. z.biberle@gmail.com --- Hi Nikolay,
unfortunately, I couldn't get Reason 9's demo to even run, probably something to do with the authorizer.
As for demo version of Reason 5, I found this: http://reason.software.informer.com/5.0/
It seems to be legit, I tried installing it and running it and it's got the same problem.
Anyway, I've attached a log of a very short session (it's still 3 megs though) of the full version of Reason 5 running under Wine 2.5 with the switches you requested.
https://bugs.winehq.org/show_bug.cgi?id=42825
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Ever confirmed|0 |1 Status|UNCONFIRMED |NEW Assignee|wine-bugs@winehq.org |bunglehead@gmail.com
--- Comment #5 from Nikolay Sivov bunglehead@gmail.com --- Thanks.
What it seems to be doing is:
--- hdc = BeginPaint(...); buffer = BeginBufferedPaint(hdc, ..., BPBF_COMPATIBLEBITMAP, NULL, ...); ... paint to buffered hdc presumably ... EndBufferedPaint(buffer, TRUE); EndPaint(...); ---
Compatible bitmap for buffer context is created with 1 bpp depth, that's why result is b/w dithered like that. Confirming, I'll send a fix soon.
https://bugs.winehq.org/show_bug.cgi?id=42825
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |14d81d9eb9cd78206e950446acd | |06cfe0c96ae4d Resolution|--- |FIXED Assignee|bunglehead@gmail.com |wine-bugs@winehq.org Status|NEW |RESOLVED
--- Comment #6 from Nikolay Sivov bunglehead@gmail.com --- This should be fixed with http://source.winehq.org/git/wine.git/?a=commit;h=14d81d9eb9cd78206e950446ac.... Please reopen if it still does not work for you.
https://bugs.winehq.org/show_bug.cgi?id=42825
--- Comment #7 from Zdeněk B. z.biberle@gmail.com --- Created attachment 57965 --> https://bugs.winehq.org/attachment.cgi?id=57965 A compressed log of Reason 5 running for a few seconds
https://bugs.winehq.org/show_bug.cgi?id=42825
--- Comment #8 from Zdeněk B. z.biberle@gmail.com --- Created attachment 57966 --> https://bugs.winehq.org/attachment.cgi?id=57966 Reason 5 demo window after a few seconds
https://bugs.winehq.org/show_bug.cgi?id=42825
--- Comment #9 from Zdeněk B. z.biberle@gmail.com --- Thank you for the patch. This seems to have fixed the drawing being done in black and white, but the visual glitches I mentioned are still there, now even more prominent.
I've attached a screenshot and a compressed log of the Reason 5 demo playing for a few seconds and as you can see, it's not a pretty sight. If I let it run for a bit longer it seems to just give up, draws a mostly black window a displays a message box saying it has run out of memory.
I have a feeling that this problem has also been caused by the changes to BufferedPaint, but it is a different issue. Should I file a new bug?
https://bugs.winehq.org/show_bug.cgi?id=42825
--- Comment #10 from Nikolay Sivov bunglehead@gmail.com --- Created attachment 57967 --> https://bugs.winehq.org/attachment.cgi?id=57967 patch
(In reply to Zdeněk B. from comment #9)
Thank you for the patch. This seems to have fixed the drawing being done in black and white, but the visual glitches I mentioned are still there, now even more prominent.
I've attached a screenshot and a compressed log of the Reason 5 demo playing for a few seconds and as you can see, it's not a pretty sight. If I let it run for a bit longer it seems to just give up, draws a mostly black window a displays a message box saying it has run out of memory.
This sounds like a leak. Please try this patch, on top of current wine-git.
I have a feeling that this problem has also been caused by the changes to BufferedPaint, but it is a different issue. Should I file a new bug?
Yes, it is a different issue, and usually we ask for a separate report. I don't mind to track it here too.
https://bugs.winehq.org/show_bug.cgi?id=42825
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC|bunglehead@gmail.com |
https://bugs.winehq.org/show_bug.cgi?id=42825
--- Comment #11 from Zdeněk B. z.biberle@gmail.com --- Created attachment 57968 --> https://bugs.winehq.org/attachment.cgi?id=57968 Reason 5 demo sequencer
The patch seems to have resolved the leak, I've had it playing for about fifteen minutes and it just keeps on going, although what gets drawn is still a mess.
I've noticed that the glitches disappear when I resize the window, as it probably gets fully redrawn.
I've also attached a screenshot of Reason's sequencer and you can actually see that as the playhead moves forward, it leaves behind parts of the area to the left. Also, the window itself has been drawn inside the left area and inside a few of the buttons at the top when I hovered over them. Quite strange.
https://bugs.winehq.org/show_bug.cgi?id=42825
--- Comment #12 from Nikolay Sivov bunglehead@gmail.com --- Ok, thank you for testing. If you can, please keep it running for longer to make sure it doesn't run out of memory or gdi handles. For the mess, please open a new bug, and attach a log there with +dc,+bitmap,+win,+uxtheme,+tid. Was repainting also broken when it was black and white?
https://bugs.winehq.org/show_bug.cgi?id=42825
--- Comment #13 from Zdeněk B. z.biberle@gmail.com --- So I let it run for about two hours straight and I'm pretty sure the leak is gone.
For the mess, please open a new bug, and attach a log there with +dc,+bitmap,+win,+uxtheme,+tid.
I'll do that in a moment.
Was repainting also broken when it was black and white?
Yes, it was. You can see it the first screenshot I posted, part of the hardware interface and the mixer gets drawn around the bottom right part of the mixer. The sequencer is also all kinds of weird.
https://bugs.winehq.org/show_bug.cgi?id=42825
--- Comment #14 from Nikolay Sivov bunglehead@gmail.com --- (In reply to Zdeněk B. from comment #13)
Was repainting also broken when it was black and white?
Yes, it was. You can see it the first screenshot I posted, part of the hardware interface and the mixer gets drawn around the bottom right part of the mixer. The sequencer is also all kinds of weird.
Ok, just to be clear, this never happened before initial regression commit 35ae7c8f5939c0ba77b4023a14596706852f5acd?
https://bugs.winehq.org/show_bug.cgi?id=42825
--- Comment #15 from Zdeněk B. z.biberle@gmail.com --- Just to be sure, I just did a few tests, and 35ae7c8f5939c0ba77b4023a14596706852f5acd is really where the problems began. Although technically with this commit, it basically renders just a black screen.
Since the commit right after that (9d4a00399548f50517d790c7678ebf34327c56d4) the issues are the same as with the latest version.
https://bugs.winehq.org/show_bug.cgi?id=42825
--- Comment #16 from Nikolay Sivov bunglehead@gmail.com --- (In reply to Zdeněk B. from comment #15)
Just to be sure, I just did a few tests, and 35ae7c8f5939c0ba77b4023a14596706852f5acd is really where the problems began. Although technically with this commit, it basically renders just a black screen.
Since the commit right after that (9d4a00399548f50517d790c7678ebf34327c56d4) the issues are the same as with the latest version.
That's expected, because 35ae7c8f introduces Begin* function, and 9d4a0039 - End* function, that actually does screen update. What is interesting to see if you build at commit 78ee7f57fa45957eed1e7335a5f1822cb0745174 (that's the one right before 35ae7c8f), do you have proper rendering? Meaning do you see such tearing and messed up window updates?
https://bugs.winehq.org/show_bug.cgi?id=42825
--- Comment #17 from Zdeněk B. z.biberle@gmail.com --- I tested that and the answer is, rendering is done without these problems before 35ae7c8f5939c0ba77b4023a14596706852f5acd.
https://bugs.winehq.org/show_bug.cgi?id=42825
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #18 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 2.7.