user.exe16: Releasing DC does not disable it.

ReleaseDC in user32 marks cache DCs as disabled.  For user.exe (the
16-bit equivalent), this causes DCs to become inaccessible after
release.  On Windows, they are still accessible after release.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=44408
Signed-off-by: Jeff Smith <whydoubt@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
(cherry picked from commit 0778945e34)
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
oldstable
Jeff Smith 2020-01-12 14:54:10 -06:00 committed by Michael Stefaniuc
parent 501eb50def
commit 4818f65c04
1 changed files with 4 additions and 1 deletions

View File

@ -23,6 +23,7 @@
#include "user_private.h"
#include "wine/list.h"
#include "wine/server.h"
#include "wine/gdi_driver.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(win);
@ -675,7 +676,9 @@ HDC16 WINAPI GetWindowDC16( HWND16 hwnd )
*/
INT16 WINAPI ReleaseDC16( HWND16 hwnd, HDC16 hdc )
{
return (INT16)ReleaseDC( WIN_Handle32(hwnd), HDC_32(hdc) );
INT16 ret = (INT16)ReleaseDC( WIN_Handle32(hwnd), HDC_32(hdc) );
SetHookFlags( HDC_32(hdc), DCHF_ENABLEDC );
return ret;
}