Author: jimtabor
Date: Wed Mar 26 18:49:18 2008
New Revision: 32767
URL:
http://svn.reactos.org/svn/reactos?rev=32767&view=rev
Log:
Help Stefan out with SEH. It seems to run faster. I guess.
Modified:
trunk/reactos/subsystems/win32/win32k/objects/dcutil.c
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 [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/objects/dcutil.c [iso-8859-1] Wed Mar 26
18:49:18 2008
@@ -112,10 +112,24 @@
VOID
CopytoUserDcAttr(PDC dc, PDC_ATTR Dc_Attr)
{
+ NTSTATUS Status = STATUS_SUCCESS;
XForm2MatrixS( &dc->Dc_Attr.mxWorldToDevice, &dc->w.xformWorld2Vport);
XForm2MatrixS( &dc->Dc_Attr.mxDevicetoWorld, &dc->w.xformVport2World);
XForm2MatrixS( &dc->Dc_Attr.mxWorldToPage, &dc->w.xformWorld2Wnd);
- MmCopyToCaller(Dc_Attr, &dc->Dc_Attr, sizeof(DC_ATTR));
+ _SEH_TRY
+ {
+ ProbeForWrite( Dc_Attr,
+ sizeof(DC_ATTR),
+ 1);
+ RtlCopyMemory( Dc_Attr,
+ &dc->Dc_Attr,
+ sizeof(DC_ATTR));
+ }
+ _SEH_HANDLE
+ {
+ Status = _SEH_GetExceptionCode();
+ }
+ _SEH_END;
}