winex11.drv: Mark drawable as dirty when setting pixel format.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55341
This commit is contained in:
Anton Baskanov 2023-08-14 16:04:33 +07:00 committed by Alexandre Julliard
parent 31e5218286
commit b9db434034

View file

@ -1393,17 +1393,27 @@ static struct gl_drawable *create_gl_drawable( HWND hwnd, const struct wgl_pixel
*/
static BOOL set_win_format( HWND hwnd, const struct wgl_pixel_format *format, BOOL internal )
{
struct gl_drawable *gl;
struct gl_drawable *old, *gl;
if (!format->visual) return FALSE;
if (!(gl = create_gl_drawable( hwnd, format, FALSE, internal ))) return FALSE;
old = get_gl_drawable( hwnd, 0 );
if (!(gl = create_gl_drawable( hwnd, format, FALSE, internal )))
{
release_gl_drawable( old );
return FALSE;
}
TRACE( "created GL drawable %lx for win %p %s\n",
gl->drawable, hwnd, debugstr_fbconfig( format->fbconfig ));
if (old)
mark_drawable_dirty( old, gl );
XFlush( gdi_display );
release_gl_drawable( gl );
release_gl_drawable( old );
win32u_set_window_pixel_format( hwnd, pixel_format_index( format ), internal );
return TRUE;