Author: jimtabor
Date: Wed Aug 22 03:27:44 2007
New Revision: 28449
URL:
http://svn.reactos.org/svn/reactos?rev=28449&view=rev
Log:
Cleanup, dont call inside SEH with SEH. IntGdiModifyWorldTransform calls DC_UpdateXforms
which calls DCU_UpdateUserXForms and it calls SEH. Moved NtGdiFlush to dcutil.c
Modified:
trunk/reactos/subsystems/win32/win32k/objects/coord.c
trunk/reactos/subsystems/win32/win32k/objects/dc.c
trunk/reactos/subsystems/win32/win32k/objects/dcutil.c
trunk/reactos/subsystems/win32/win32k/objects/paintobj.c
trunk/reactos/subsystems/win32/win32k/objects/path.c
Modified: trunk/reactos/subsystems/win32/win32k/objects/coord.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ob…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/objects/coord.c (original)
+++ trunk/reactos/subsystems/win32/win32k/objects/coord.c Wed Aug 22 03:27:44 2007
@@ -200,7 +200,6 @@
SetLastWin32Error(ERROR_INVALID_PARAMETER);
return FALSE;
}
-
DC_UpdateXforms(pDc);
return TRUE;
}
@@ -445,8 +444,6 @@
{
ProbeForRead(UnsafeXForm, sizeof(XFORM), 1);
RtlCopyMemory(&SafeXForm, UnsafeXForm, sizeof(XFORM));
-
- Ret = IntGdiModifyWorldTransform(dc, &SafeXForm, Mode);
}
_SEH_HANDLE
{
@@ -454,7 +451,8 @@
}
_SEH_END;
- DCU_UpdateUserXForms(dc,
WORLD_TO_PAGE_IDENTITY|DEVICE_TO_WORLD_INVALID|WORLD_XFORM_CHANGED );
+ // Safe to handle kernel mode data.
+ Ret = IntGdiModifyWorldTransform(dc, &SafeXForm, Mode);
DC_UnlockDc(dc);
return Ret;
}
@@ -503,7 +501,6 @@
dc->Dc_Attr.ptlViewportOrg.x += XOffset;
dc->Dc_Attr.ptlViewportOrg.y += YOffset;
DC_UpdateXforms(dc);
- DCU_UpdateUserXForms(dc,
WORLD_TO_PAGE_IDENTITY|DEVICE_TO_WORLD_INVALID|WORLD_XFORM_CHANGED );
DC_UnlockDc(dc);
return TRUE;
}
@@ -554,7 +551,6 @@
dc->Dc_Attr.ptlWindowOrg.y += YOffset;
DC_UpdateXforms(dc);
- DCU_UpdateUserXForms(dc,
WORLD_TO_PAGE_IDENTITY|DEVICE_TO_WORLD_INVALID|WORLD_XFORM_CHANGED );
DC_UnlockDc(dc);
return TRUE;
@@ -683,7 +679,6 @@
}
DC_UpdateXforms(dc);
- DCU_UpdateUserXForms(dc,
WORLD_TO_PAGE_IDENTITY|DEVICE_TO_WORLD_INVALID|WORLD_XFORM_CHANGED );
}
return PrevMapMode;
@@ -756,7 +751,6 @@
DC_UpdateXforms(dc);
- DCU_UpdateUserXForms(dc,
WORLD_TO_PAGE_IDENTITY|DEVICE_TO_WORLD_INVALID|WORLD_XFORM_CHANGED );
DC_UnlockDc(dc);
return TRUE;
@@ -808,7 +802,6 @@
dc->Dc_Attr.ptlViewportOrg.y = Y;
DC_UpdateXforms(dc);
- DCU_UpdateUserXForms(dc,
WORLD_TO_PAGE_IDENTITY|DEVICE_TO_WORLD_INVALID|WORLD_XFORM_CHANGED );
DC_UnlockDc(dc);
return TRUE;
@@ -872,7 +865,6 @@
dc->Dc_Attr.szlWindowExt.cy = YExtent;
DC_UpdateXforms(dc);
- DCU_UpdateUserXForms(dc,
WORLD_TO_PAGE_IDENTITY|DEVICE_TO_WORLD_INVALID|WORLD_XFORM_CHANGED );
DC_UnlockDc(dc);
return TRUE;
@@ -924,7 +916,6 @@
dc->Dc_Attr.ptlWindowOrg.y = Y;
DC_UpdateXforms(dc);
- DCU_UpdateUserXForms(dc,
WORLD_TO_PAGE_IDENTITY|DEVICE_TO_WORLD_INVALID|WORLD_XFORM_CHANGED );
DC_UnlockDc(dc);
return TRUE;
Modified: trunk/reactos/subsystems/win32/win32k/objects/dc.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ob…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/objects/dc.c (original)
+++ trunk/reactos/subsystems/win32/win32k/objects/dc.c Wed Aug 22 03:27:44 2007
@@ -2540,6 +2540,7 @@
/* Create inverse of world-to-viewport transformation */
dc->w.vport2WorldValid = DC_InvertXform(&dc->w.xformWorld2Vport,
&dc->w.xformVport2World);
+ DCU_UpdateUserXForms(dc,
WORLD_TO_PAGE_IDENTITY|DEVICE_TO_WORLD_INVALID|WORLD_XFORM_CHANGED );
}
BOOL FASTCALL
Modified: trunk/reactos/subsystems/win32/win32k/objects/dcutil.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ob…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/objects/dcutil.c (original)
+++ trunk/reactos/subsystems/win32/win32k/objects/dcutil.c Wed Aug 22 03:27:44 2007
@@ -47,3 +47,11 @@
return TRUE;
}
+
+VOID
+APIENTRY
+NtGdiFlush(VOID)
+{
+ UNIMPLEMENTED;
+}
+
Modified: trunk/reactos/subsystems/win32/win32k/objects/paintobj.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ob…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/objects/paintobj.c (original)
+++ trunk/reactos/subsystems/win32/win32k/objects/paintobj.c Wed Aug 22 03:27:44 2007
@@ -23,13 +23,6 @@
#define NDEBUG
#include <debug.h>
-VOID
-APIENTRY
-NtGdiFlush(VOID)
-{
- UNIMPLEMENTED;
-}
-
DWORD
APIENTRY
NtGdiGetBoundsRect(
Modified: trunk/reactos/subsystems/win32/win32k/objects/path.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ob…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/objects/path.c (original)
+++ trunk/reactos/subsystems/win32/win32k/objects/path.c Wed Aug 22 03:27:44 2007
@@ -453,7 +453,6 @@
dc->Dc_Attr.iGraphicsMode = GM_ADVANCED;
IntGdiModifyWorldTransform( dc, &xform, MWT_MAX+1 );
dc->Dc_Attr.iGraphicsMode = graphicsMode;
-// DCU_UpdateUserXForms(dc,
WORLD_TO_PAGE_IDENTITY|DEVICE_TO_WORLD_INVALID|WORLD_XFORM_CHANGED );
return TRUE;
}
return FALSE;