[WIN32K]
authorTimo Kreuzer <timo.kreuzer@reactos.org>
Mon, 16 Aug 2010 01:29:13 +0000 (01:29 +0000)
committerTimo Kreuzer <timo.kreuzer@reactos.org>
Mon, 16 Aug 2010 01:29:13 +0000 (01:29 +0000)
- Remove IntEngExtEscape stub. This function is completely useless. If the driver doesn't provide a DrvEscape, the function should simply fail and must return 0, not -1.
- If a NULL surface is passed, pass on NULL pso to the driver function

See issue #4563 for more details.

svn path=/trunk/; revision=48555

reactos/subsystems/win32/win32k/objects/print.c

index bf21047..6377c5e 100644 (file)
@@ -87,23 +87,6 @@ NtGdiEscape(HDC  hDC,
   return ret;
 }
 
   return ret;
 }
 
-INT
-APIENTRY
-IntEngExtEscape(
-   SURFOBJ *Surface,
-   INT      Escape,
-   INT      InSize,
-   LPVOID   InData,
-   INT      OutSize,
-   LPVOID   OutData)
-{
-   if (Escape == QUERYESCSUPPORT)
-      return FALSE;
-
-   DPRINT1("IntEngExtEscape is unimplemented. - Keep going and have a nice day\n");
-   return -1;
-}
-
 INT
 APIENTRY
 IntGdiExtEscape(
 INT
 APIENTRY
 IntGdiExtEscape(
@@ -117,22 +100,14 @@ IntGdiExtEscape(
    SURFACE *psurf = dc->dclevel.pSurface;
    INT Result;
 
    SURFACE *psurf = dc->dclevel.pSurface;
    INT Result;
 
-   /* FIXME - Handle psurf == NULL !!!!!! */
-
-   if ( NULL == dc->ppdev->DriverFunctions.Escape )
+   if (!dc->ppdev->DriverFunctions.Escape)
    {
    {
-      Result = IntEngExtEscape(
-         &psurf->SurfObj,
-         Escape,
-         InSize,
-         (PVOID)((ULONG_PTR)InData),
-         OutSize,
-         (PVOID)OutData);
+      Result = 0;
    }
    else
    {
       Result = dc->ppdev->DriverFunctions.Escape(
    }
    else
    {
       Result = dc->ppdev->DriverFunctions.Escape(
-         &psurf->SurfObj,
+         psurf ? &psurf->SurfObj : NULL,
          Escape,
          InSize,
          (PVOID)InData,
          Escape,
          InSize,
          (PVOID)InData,