http://bugs.winehq.org/show_bug.cgi?id=26512
Summary: winex11 : pixelformat_from_fbconfig_id() : crashes when calling GetDC() with OpenGL window Product: Wine Version: 1.3.16 Platform: x86-64 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: pquiring@gmail.com
Created an attachment (id=33755) --> (http://bugs.winehq.org/attachment.cgi?id=33755) wine test app (captures another window by title)
When an app tries to capture the window of other apps it works with simple 2d apps but with 3D apps (OpenGL/DX) it causes wine to crash.
The crash seems to happen in pixelformat_from_fbconfig_id() function which is in wine/dlls/winex11.drv/opengl.c
I've create a sample app to show this bug (winetest.cpp)
Run wine's notepad and then run: winetest.exe "Untitled - Notepad" and it generates winetest.bmp no problem. But if you run a 3d app (say SuperTux for Windows in OpenGL mode) it crashes. winetest.exe "Supertux 0.1.3"
You can download SuperTux from http://supertux.lethargik.org/download.html for testing, or any other 3d app should work. Make sure to download the Win32 version and go into options and turn off full screen mode and turn on OpenGL mode then try the winetest.exe above.
I'll attach winetest.cpp, winetest.errlog and winetest.exe compiled with cygwin (if permited).
To compile with cygwin : "gcc-3 winetest.cpp -o winetest.exe -l gdi32 -mno-cygwin" Or try winegcc (doesn't work on x64 systems).
Thanks!
http://bugs.winehq.org/show_bug.cgi?id=26512
--- Comment #1 from Peter Quiring pquiring@gmail.com 2011-03-21 18:39:53 CDT --- Created an attachment (id=33756) --> (http://bugs.winehq.org/attachment.cgi?id=33756) error log generated
http://bugs.winehq.org/show_bug.cgi?id=26512
--- Comment #2 from Peter Quiring pquiring@gmail.com 2011-03-21 18:40:29 CDT --- Created an attachment (id=33757) --> (http://bugs.winehq.org/attachment.cgi?id=33757) compiled winetest.cpp
http://bugs.winehq.org/show_bug.cgi?id=26512
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, testcase
http://bugs.winehq.org/show_bug.cgi?id=26512
--- Comment #3 from Peter Quiring pquiring@gmail.com 2011-03-22 14:33:40 CDT --- Putting return 0; in the first line of pixelformat_from_fbconfig_id() function in dlls/winex11.drv/opengl.c makes it work. So the problem is in one of the functions it calls. Obviously this is not a fix but it narrows down the problem.
http://bugs.winehq.org/show_bug.cgi?id=26512
--- Comment #4 from Peter Quiring pquiring@gmail.com 2011-03-22 15:38:20 CDT --- The call to pglXGetFBConfigs() is where the crash occurs. It's an OpenGL function.
http://bugs.winehq.org/show_bug.cgi?id=26512
--- Comment #5 from Peter Quiring pquiring@gmail.com 2011-03-22 17:54:41 CDT --- If I create a Direct3D window in winetest.cpp before I try to capture SuperTux it works.
Looks like OpenGL isn't initialized before winetest calls GetDC().
http://bugs.winehq.org/show_bug.cgi?id=26512
Roderick Colenbrander thunderbird2k@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |thunderbird2k@gmail.com
--- Comment #6 from Roderick Colenbrander thunderbird2k@gmail.com 2011-03-22 23:25:40 CDT --- I haven't noticed a OpenGL / D3D situation like this before and I have no idea if it could work at all. That said, try to add a line like this to the start of pixelformat_from_fbconfig_id: if (!has_opengl()) return 0;
It would trigger initialization of the OpenGL code. Though I have no idea what will happen ..
http://bugs.winehq.org/show_bug.cgi?id=26512
--- Comment #7 from Peter Quiring pquiring@gmail.com 2011-03-23 10:30:01 CDT --- Yes, that works.
http://bugs.winehq.org/show_bug.cgi?id=26512
--- Comment #8 from Peter Quiring pquiring@gmail.com 2011-03-23 10:45:37 CDT --- I think this would also fix one of codeweavers reported bugs.
http://www.codeweavers.com/support/tickets/browse/?ticket_id=838475;list=16;...
http://bugs.winehq.org/show_bug.cgi?id=26512
--- Comment #9 from Roderick Colenbrander thunderbird2k@gmail.com 2011-03-23 12:01:55 CDT --- Except for the crash does it capture the 3D output correctly? Try a bunch of different games to be sure. We don't hit the same code path for everything.
http://bugs.winehq.org/show_bug.cgi?id=26512
--- Comment #10 from Peter Quiring pquiring@gmail.com 2011-03-23 14:14:20 CDT --- I tried another game and it's just the same as SuperTux.
http://bugs.winehq.org/show_bug.cgi?id=26512
--- Comment #11 from Peter Quiring pquiring@gmail.com 2011-03-24 12:46:54 CDT --- I wouldn't worry about this bug. The program that crashes is my own and I know how to work around the issue. I doubt many other non-gui apps do window captures. It's just a utility that I made. If the fix might degrade performance I wouldn't implement it.
Thanks.
http://bugs.winehq.org/show_bug.cgi?id=26512
--- Comment #12 from butraxz@gmail.com 2013-09-15 07:43:47 CDT --- This ticket has not been updated for over 900 days. Development recommends to check the status on your bug every release or two and let to be known if the bug is still present. If not, mark it fixed. If you are no longer able to put effort to this ticket, you can abandon it.
Is this still an issue with 1.7.2 or higher ?
http://bugs.winehq.org/show_bug.cgi?id=26512
--- Comment #13 from Peter Quiring pquiring@gmail.com 2013-09-15 11:30:26 CDT --- I am unable to test this bug anymore, but it no longer effects me. You may close if you like.
https://bugs.winehq.org/show_bug.cgi?id=26512
Bruno Jesus 00cpxxx@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |ABANDONED
--- Comment #14 from Bruno Jesus 00cpxxx@gmail.com --- (In reply to Peter Quiring from comment #13)
I am unable to test this bug anymore, but it no longer effects me. You may close if you like.
Resolving abandoned then..
https://bugs.winehq.org/show_bug.cgi?id=26512
Béla Gyebrószki gyebro69@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #15 from Béla Gyebrószki gyebro69@gmail.com --- Closing all abandoned/duplicated/invalid bugs.