Author: jimtabor
Date: Sat Dec 15 11:08:11 2007
New Revision: 31229
URL:
http://svn.reactos.org/svn/reactos?rev=31229&view=rev
Log:
Start using gdi shared handle table.
Modified:
trunk/reactos/dll/win32/gdi32/include/gdi32p.h
trunk/reactos/dll/win32/gdi32/main/dllmain.c
trunk/reactos/dll/win32/gdi32/misc/gdientry.c
trunk/reactos/dll/win32/gdi32/misc/misc.c
Modified: trunk/reactos/dll/win32/gdi32/include/gdi32p.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/include/gd…
==============================================================================
--- trunk/reactos/dll/win32/gdi32/include/gdi32p.h (original)
+++ trunk/reactos/dll/win32/gdi32/include/gdi32p.h Sat Dec 15 11:08:11 2007
@@ -10,9 +10,11 @@
/* DATA **********************************************************************/
extern PGDI_TABLE_ENTRY GdiHandleTable;
+extern PGDI_SHARED_HANDLE_TABLE GdiSharedHandleTable;
extern HANDLE hProcessHeap;
extern HANDLE CurrentProcessId;
extern DWORD GDI_BatchLimit;
+extern PDEVCAPS GdiDevCaps;
typedef INT
(CALLBACK* EMFPLAYPROC)(
Modified: trunk/reactos/dll/win32/gdi32/main/dllmain.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/main/dllma…
==============================================================================
--- trunk/reactos/dll/win32/gdi32/main/dllmain.c (original)
+++ trunk/reactos/dll/win32/gdi32/main/dllmain.c Sat Dec 15 11:08:11 2007
@@ -11,6 +11,7 @@
extern HGDIOBJ stock_objects[];
BOOL SetStockObjects = FALSE;
+PDEVCAPS GdiDevCaps = NULL;
/*
* GDI32.DLL doesn't have an entry point. The initialization is done by a call
@@ -36,6 +37,8 @@
/* map the gdi handle table to user space */
GdiHandleTable = NtCurrentTeb()->ProcessEnvironmentBlock->GdiSharedHandleTable;
+ GdiSharedHandleTable =
NtCurrentTeb()->ProcessEnvironmentBlock->GdiSharedHandleTable;
+ GdiDevCaps = &GdiSharedHandleTable->DevCaps;
CurrentProcessId = NtCurrentTeb()->Cid.UniqueProcess;
GDI_BatchLimit = (DWORD)
NtCurrentTeb()->ProcessEnvironmentBlock->GdiDCAttributeList;
}
Modified: trunk/reactos/dll/win32/gdi32/misc/gdientry.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/misc/gdien…
==============================================================================
--- trunk/reactos/dll/win32/gdi32/misc/gdientry.c (original)
+++ trunk/reactos/dll/win32/gdi32/misc/gdientry.c Sat Dec 15 11:08:11 2007
@@ -406,7 +406,6 @@
}
/* PRIVATE FUNCTIONS *********************************************************/
-static ULONG RemberDdQueryDisplaySettingsUniquenessID = 0;
BOOL
WINAPI
@@ -987,8 +986,7 @@
STDCALL
DdQueryDisplaySettingsUniqueness()
{
- /* FIXME share memory */
- return RemberDdQueryDisplaySettingsUniquenessID;
+ return GdiSharedHandleTable->flDeviceUniq;
}
/*
Modified: trunk/reactos/dll/win32/gdi32/misc/misc.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/misc/misc.…
==============================================================================
--- trunk/reactos/dll/win32/gdi32/misc/misc.c (original)
+++ trunk/reactos/dll/win32/gdi32/misc/misc.c Sat Dec 15 11:08:11 2007
@@ -29,6 +29,7 @@
#include "precomp.h"
PGDI_TABLE_ENTRY GdiHandleTable = NULL;
+PGDI_SHARED_HANDLE_TABLE GdiSharedHandleTable = NULL;
HANDLE CurrentProcessId = NULL;
DWORD GDI_BatchLimit = 1;