47 "SelectObject(NULL DC) expected 0, ERROR_INVALID_HANDLE, got %p, %u\n",
54 "SelectObject(NULL obj) expected 0, NO_ERROR, got %p, %u\n",
61 "SelectObject(post NULL) expected non-null, NO_ERROR, got %p, %u\n",
68 "GetCurrentObject(NULL DC) expected 0, NO_ERROR, got %p, %u\n",
74 "DeleteObject(NULL obj), expected 0, NO_ERROR, got %d, %u\n",
81 "GetObject(NULL obj), expected 0, NO_ERROR, got %d, %u\n",
89 "GetObject(invalid buff), expected 0, ERROR_NOACCESS, got %d, %u\n",
96 "GetObjectType(NULL obj), expected 0, ERROR_INVALID_HANDLE, got %d, %u\n",
103 "UnrealizeObject(NULL obj), expected 0, NO_ERROR, got %d, %u\n",
222 ok(hobj ==
hpen,
"OBJ_PEN is wrong: %p\n", hobj);
224 ok(hobj ==
hpen,
"OBJ_EXTPEN is wrong: %p\n", hobj);
230 ok(hobj ==
hbrush,
"OBJ_BRUSH is wrong: %p\n", hobj);
236 ok(hobj == hpal,
"OBJ_PAL is wrong: %p\n", hobj);
244 ok(hobj ==
hfont,
"OBJ_FONT is wrong: %p\n", hobj);
250 ok(hobj ==
hbmp,
"OBJ_BITMAP is wrong: %p\n", hobj);
258 ok(hobj ==
hpen,
"OBJ_PEN is wrong: %p\n", hobj);
260 ok(hobj ==
hpen,
"OBJ_EXTPEN is wrong: %p\n", hobj);
265 trace(
"current color space is not NULL\n");
268 ok(hcs != 0,
"CreateColorSpace failed\n");
271 ok(hobj == hcs,
"OBJ_COLORSPACE is wrong: %p\n", hobj);
278 ok(!hobj,
"OBJ_REGION is wrong: %p\n", hobj);
286 RECT rc = { 5, 5, 15, 15 };
288 ok(
ret,
"RectInRegion should return TRUE\n");
292 ok(
ret,
"RectInRegion should return TRUE\n");
296 ok(
ret,
"RectInRegion should return TRUE\n");
300 ok(
ret,
"RectInRegion should return TRUE\n");
306 ok(
ret,
"RectInRegion should return TRUE\n");
310 ok(
ret,
"RectInRegion should return TRUE\n");
314 ok(
ret,
"RectInRegion should return TRUE\n");
318 ok(
ret,
"RectInRegion should return TRUE\n");
327 HRGN
hrgn, hrgn_test;
336 { 0x00000000, 0x00000000,
TRUE },
337 { 0x00000000, 0x0000ffe0,
FALSE },
338 { 0x00000000, 0x0000ffb0,
FALSE },
339 { 0xffffffff, 0xffff0000,
FALSE },
340 { 0xffffffff, 0x00000000,
TRUE },
341 { 0xdeadbeef, 0x00000000,
TRUE },
342 { 0xcccccccc, 0xcccccccc,
FALSE }
345 if (
sizeof(
void*) != 8)
348 for (
i = 0;
i <
sizeof(cases)/
sizeof(cases[0]);
i++)
358 ok( cases[
i].
ret ==
ret,
"DeleteObject should return %s (%p)\n",
359 cases[
i].
ret ?
"TRUE" :
"FALSE", hrgn_test);
#define ERROR_INVALID_PARAMETER
HGDIOBJ WINAPI GetStockObject(INT fnObject)
HPEN WINAPI CreatePen(_In_ int, _In_ int, _In_ COLORREF)
HDC WINAPI GetDC(_In_opt_ HWND)
int WINAPI GetObjectA(_In_ HGDIOBJ hGdiObj, _In_ int cbSize, _Out_ LPVOID lpBuffer)
static DWORD WINAPI thread_proc(void *param)
#define ERROR_INVALID_HANDLE
HGDIOBJ WINAPI SelectObject(_In_ HDC, _In_ HGDIOBJ)
BOOL WINAPI DECLSPEC_HOTPATCH SetEvent(IN HANDLE hEvent)
DWORD WINAPI GetLastError(VOID)
HDC WINAPI CreateCompatibleDC(_In_opt_ HDC hdc)
static void test_GetCurrentObject(void)
static void test_region(void)
DWORD WINAPI WaitForSingleObject(IN HANDLE hHandle, IN DWORD dwMilliseconds)
#define CLIP_DEFAULT_PRECIS
int WINAPI ReleaseDC(_In_opt_ HWND, _In_ HDC)
static void test_gdi_objects(void)
HANDLE WINAPI DECLSPEC_HOTPATCH CreateThread(IN LPSECURITY_ATTRIBUTES lpThreadAttributes, IN DWORD dwStackSize, IN LPTHREAD_START_ROUTINE lpStartAddress, IN LPVOID lpParameter, IN DWORD dwCreationFlags, OUT LPDWORD lpThreadId)
HPALETTE WINAPI SelectPalette(_In_ HDC, _In_ HPALETTE, _In_ BOOL)
HANDLE WINAPI DECLSPEC_HOTPATCH CreateEventA(IN LPSECURITY_ATTRIBUTES lpEventAttributes OPTIONAL, IN BOOL bManualReset, IN BOOL bInitialState, IN LPCSTR lpName OPTIONAL)
HRGN WINAPI CreateRectRgn(_In_ int, _In_ int, _In_ int, _In_ int)
BOOL WINAPI GetLogColorSpaceA(_In_ HCOLORSPACE hColorSpace, _Out_writes_bytes_(nSize) LPLOGCOLORSPACEA lpBuffer, _In_ DWORD nSize)
DWORD WINAPI GetObjectType(HGDIOBJ h)
HCOLORSPACE WINAPI CreateColorSpaceA(_In_ LPLOGCOLORSPACEA pLogColorSpace)
BOOL WINAPI UnrealizeObject(_In_ HGDIOBJ)
BOOL WINAPI DeleteObject(HGDIOBJ hObject)
#define OUT_DEFAULT_PRECIS
int WINAPI GetDeviceCaps(_In_opt_ HDC, _In_ int)
HFONT WINAPI CreateFontA(_In_ int, _In_ int, _In_ int, _In_ int, _In_ int, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_opt_ LPCSTR)
HCOLORSPACE WINAPI GetColorSpace(_In_ HDC)
BOOL WINAPI SetRect(_Out_ LPRECT, _In_ int, _In_ int, _In_ int, _In_ int)
static void test_thread_objects(void)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
BOOL WINAPI DeleteDC(_In_ HDC)
HBRUSH WINAPI CreateSolidBrush(_In_ COLORREF)
static DWORD *static HFONT(WINAPI *pCreateFontIndirectExA)(const ENUMLOGFONTEXDVA *)
static void test_handles_on_win64(void)
HPEN WINAPI ExtCreatePen(_In_ DWORD iPenStyle, _In_ DWORD cWidth, _In_ const LOGBRUSH *plbrush, _In_ DWORD cStyle, _In_reads_opt_(cStyle) const DWORD *pstyle)
GLuint GLuint GLsizei GLenum type
HDC WINAPI CreateDCA(_In_opt_ LPCSTR pszDriver, _In_opt_ LPCSTR pszDevice, _In_opt_ LPCSTR pszOutput, _In_opt_ const DEVMODEA *pdmInit)
static SERVICE_STATUS status
static unsigned char buff[32768]
HGDIOBJ WINAPI GetCurrentObject(_In_ HDC, _In_ UINT)
BOOL WINAPI RectInRegion(_In_ HRGN, _In_ LPCRECT)
HBITMAP WINAPI CreateBitmap(_In_ INT cx, _In_ INT cy, _In_ UINT cPlanes, _In_ UINT cBitsPerPel, _In_opt_ const VOID *pvBits)
HPALETTE WINAPI CreateHalftonePalette(_In_opt_ HDC)