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/obj... ============================================================================== --- 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; }