Skip to content

Commit dacf595

Browse files
committed
[ARWINSS]
- Stubplement some gdi32 OpenGL functions, imported by opengl.dll. - Get rid of NONAMELESSUNION in exticon.c. I'm tired of changing those u2.s2 every time they change. svn path=/branches/arwinss/; revision=64715
1 parent 3b60a34 commit dacf595

File tree

3 files changed

+41
-10
lines changed

3 files changed

+41
-10
lines changed

arwinss/client/gdi32/gdi32.spec

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -280,7 +280,7 @@
280280
@ stdcall GdiDeleteLocalDC(ptr)
281281
@ stub GdiDeleteLocalObject
282282
@ stub GdiDeleteSpoolFileHandle
283-
@ stub GdiDescribePixelFormat
283+
@ stdcall GdiDescribePixelFormat(ptr long long ptr)
284284
@ stub GdiDllInitialize
285285
@ stub GdiDrawStream
286286
@ stub GdiEndDocEMF
@@ -340,11 +340,11 @@
340340
@ stdcall GdiSetAttrs(ptr)
341341
@ stdcall GdiSetBatchLimit(long)
342342
@ stub GdiSetLastError
343-
@ stub GdiSetPixelFormat
343+
@ stdcall GdiSetPixelFormat(ptr long)
344344
@ stub GdiSetServerAttr
345345
@ stub GdiStartDocEMF
346346
@ stub GdiStartPageEMF
347-
@ stub GdiSwapBuffers
347+
@ stdcall GdiSwapBuffers(ptr)
348348
@ stdcall GdiTransparentBlt(long long long long long long long long long long long)
349349
@ stub GdiValidateHandle
350350
@ stub GdiWinWatchClose

arwinss/client/gdi32/opengl.c

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -395,3 +395,34 @@ PROC WINAPI wglGetProcAddress(LPCSTR func)
395395

396396
return ret;
397397
}
398+
399+
INT
400+
WINAPI
401+
GdiDescribePixelFormat(
402+
HDC hdc,
403+
INT ipfd,
404+
UINT cjpfd,
405+
PPIXELFORMATDESCRIPTOR ppfd)
406+
{
407+
UNIMPLEMENTED;
408+
return 0;
409+
}
410+
411+
BOOL
412+
WINAPI
413+
GdiSetPixelFormat(
414+
HDC hdc,
415+
INT ipfd)
416+
{
417+
UNIMPLEMENTED;
418+
return FALSE;
419+
}
420+
421+
BOOL
422+
WINAPI
423+
GdiSwapBuffers(
424+
HDC hdc)
425+
{
426+
UNIMPLEMENTED;
427+
return FALSE;
428+
}

arwinss/client/user32/exticon.c

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
# include <unistd.h>
3333
#endif
3434

35-
#define NONAMELESSUNION
35+
//#define NONAMELESSUNION
3636
#define NONAMELESSSTRUCT
3737
#include "windef.h"
3838
#include "winbase.h"
@@ -119,9 +119,9 @@ static const IMAGE_RESOURCE_DIRECTORY *find_entry_by_id( const IMAGE_RESOURCE_DI
119119
while (min <= max)
120120
{
121121
pos = (min + max) / 2;
122-
if (entry[pos].u1.Id == id)
123-
return (const IMAGE_RESOURCE_DIRECTORY *)((const char *)root + entry[pos].u2.s2.OffsetToDirectory);
124-
if (entry[pos].u1.Id > id) max = pos - 1;
122+
if (entry[pos].Id == id)
123+
return (const IMAGE_RESOURCE_DIRECTORY *)((const char *)root + entry[pos].OffsetToDirectory);
124+
if (entry[pos].Id > id) max = pos - 1;
125125
else min = pos + 1;
126126
}
127127
return NULL;
@@ -138,7 +138,7 @@ static const IMAGE_RESOURCE_DIRECTORY *find_entry_default( const IMAGE_RESOURCE_
138138
{
139139
const IMAGE_RESOURCE_DIRECTORY_ENTRY *entry;
140140
entry = (const IMAGE_RESOURCE_DIRECTORY_ENTRY *)(dir + 1);
141-
return (const IMAGE_RESOURCE_DIRECTORY *)((const char *)root + entry->u2.s2.OffsetToDirectory);
141+
return (const IMAGE_RESOURCE_DIRECTORY *)((const char *)root + entry->OffsetToDirectory);
142142
}
143143

144144
/*************************************************************************
@@ -488,7 +488,7 @@ static UINT ICO_ExtractIconExW(
488488

489489
while(n<iconDirCount && xprdeTmp)
490490
{
491-
if(xprdeTmp->u1.Id == iId)
491+
if(xprdeTmp->Id == iId)
492492
{
493493
nIconIndex = n;
494494
break;
@@ -524,7 +524,7 @@ static UINT ICO_ExtractIconExW(
524524
const IMAGE_RESOURCE_DIRECTORY *resdir;
525525

526526
/* go down this resource entry, name */
527-
resdir = (const IMAGE_RESOURCE_DIRECTORY *)((const char *)rootresdir + xresent->u2.s2.OffsetToDirectory);
527+
resdir = (const IMAGE_RESOURCE_DIRECTORY *)((const char *)rootresdir + xresent->OffsetToDirectory);
528528

529529
/* default language (0) */
530530
resdir = find_entry_default(resdir,rootresdir);

0 commit comments

Comments
 (0)