Commit in reactos/subsys/win32k on MAIN
ldr/loader.c+74-11.15 -> 1.16
stubs/stubs.c+3281.29 -> 1.30
+402-1
2 modified files
- Implement NULL module case for EngFindImageProcAddress
- Add stubs for EngFindImageProcAddress()able not present yet

reactos/subsys/win32k/ldr
loader.c 1.15 -> 1.16
diff -u -r1.15 -r1.16
--- loader.c	9 Apr 2004 20:03:18 -0000	1.15
+++ loader.c	11 Apr 2004 09:09:38 -0000	1.16
@@ -16,7 +16,7 @@
  *  along with this program; if not, write to the Free Software
  *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
-/* $Id: loader.c,v 1.15 2004/04/09 20:03:18 navaraf Exp $
+/* $Id: loader.c,v 1.16 2004/04/11 09:09:38 gvg Exp $
  *
  */
 
@@ -151,6 +151,79 @@
   PVOID Function;
   NTSTATUS Status;
   ANSI_STRING ProcNameString;
+  unsigned i;
+  static struct
+    {
+      PCSTR ProcName;
+      PVOID ProcAddress;
+    }
+  Win32kExports[] =
+    {
+      { "BRUSHOBJ_hGetColorTransform",    BRUSHOBJ_hGetColorTransform    },
+      { "EngAlphaBlend",                  EngAlphaBlend                  }, 
+      { "EngClearEvent",                  EngClearEvent                  },
+      { "EngControlSprites",              EngControlSprites              },
+      { "EngCreateEvent",                 EngCreateEvent                 },
+      { "EngDeleteEvent",                 EngDeleteEvent                 },
+      { "EngDeleteFile",                  EngDeleteFile                  },
+      { "EngDeleteSafeSemaphore",         EngDeleteSafeSemaphore         },
+      { "EngDeleteWnd",                   EngDeleteWnd                   },
+      { "EngDitherColor",                 EngDitherColor                 },
+      { "EngGetPrinterDriver",            EngGetPrinterDriver            },
+      { "EngGradientFill",                EngGradientFill                },
+      { "EngHangNotification",            EngHangNotification            },
+      { "EngInitializeSafeSemaphore",     EngInitializeSafeSemaphore     },
+      { "EngLockDirectDrawSurface",       EngLockDirectDrawSurface       },
+      { "EngLpkInstalled",                EngLpkInstalled                },
+      { "EngMapEvent",                    EngMapEvent                    },
+      { "EngMapFile",                     EngMapFile                     },
+      { "EngMapFontFileFD",               EngMapFontFileFD               },
+      { "EngModifySurface",               EngModifySurface               },
+      { "EngMovePointer",                 EngMovePointer                 },
+      { "EngPlgBlt",                      EngPlgBlt                      },
+      { "EngQueryDeviceAttribute",        EngQueryDeviceAttribute        },
+      { "EngQueryPalette",                EngQueryPalette                },
+      { "EngQuerySystemAttribute",        EngQuerySystemAttribute        },
+      { "EngReadStateEvent",              EngReadStateEvent              },
+      { "EngRestoreFloatingPointState",   EngRestoreFloatingPointState   },
+      { "EngSaveFloatingPointState",      EngSaveFloatingPointState      },
+      { "EngSetEvent",                    EngSetEvent                    },
+      { "EngSetPointerShape",             EngSetPointerShape             },
+      { "EngSetPointerTag",               EngSetPointerTag               },
+      { "EngStretchBltROP",               EngStretchBltROP               },
+      { "EngTransparentBlt",              EngTransparentBlt              },
+      { "EngUnlockDirectDrawSurface",     EngUnlockDirectDrawSurface     },
+      { "EngUnmapEvent",                  EngUnmapEvent                  },
+      { "EngUnmapFile",                   EngUnmapFile                   },
+      { "EngUnmapFontFileFD",             EngUnmapFontFileFD             },
+      { "EngWaitForSingleObject",         EngWaitForSingleObject         },
+      { "FONTOBJ_pfdg",                   FONTOBJ_pfdg                   },
+      { "FONTOBJ_pjOpenTypeTablePointer", FONTOBJ_pjOpenTypeTablePointer },
+      { "FONTOBJ_pQueryGlyphAttrs",       FONTOBJ_pQueryGlyphAttrs       },
+      { "FONTOBJ_pwszFontFilePaths",      FONTOBJ_pwszFontFilePaths      },
+      { "HeapVidMemAllocAligned",         HeapVidMemAllocAligned         },
+      { "HT_Get8BPPMaskPalette",          HT_Get8BPPMaskPalette          },
+      { "STROBJ_bEnumPositionsOnly",      STROBJ_bEnumPositionsOnly      },
+      { "STROBJ_bGetAdvanceWidths",       STROBJ_bGetAdvanceWidths       },
+      { "STROBJ_fxBreakExtra",            STROBJ_fxBreakExtra            },
+      { "STROBJ_fxCharacterExtra",        STROBJ_fxCharacterExtra        },
+      { "VidMemFree",                     VidMemFree                     },
+      { "XLATEOBJ_hGetColorTransform",    XLATEOBJ_hGetColorTransform    }
+    };
+
+  if (NULL == Module)
+    {
+      DPRINT("Looking for win32k export %s\n", ProcName);
+      for (i = 0; i < sizeof(Win32kExports) / sizeof(Win32kExports[0]); i++)
+        {
+          if (0 == strcmp(ProcName, Win32kExports[i].ProcName))
+            {
+              DPRINT("Found it index %u address %p\n", i, Win32kExports[i].ProcName);
+              return Win32kExports[i].ProcAddress;
+            }
+        }
+      return NULL;
+    }
   RtlInitAnsiString(&ProcNameString, ProcName);
   Status = LdrGetProcedureAddress(Module, 
 				  &ProcNameString,

reactos/subsys/win32k/stubs
stubs.c 1.29 -> 1.30
diff -u -r1.29 -r1.30
--- stubs.c	9 Apr 2004 20:03:20 -0000	1.29
+++ stubs.c	11 Apr 2004 09:09:38 -0000	1.30
@@ -1263,3 +1263,331 @@
 {
    UNIMPLEMENTED;
 }
+
+/*
+ * @unimplemented
+ */
+HANDLE STDCALL
+BRUSHOBJ_hGetColorTransform(
+   IN BRUSHOBJ *Brush)
+{
+   UNIMPLEMENTED;
+   return NULL;
+}
+
+/*
+ * @unimplemented
+ */
+VOID STDCALL
+EngClearEvent(
+   IN PEVENT Event)
+{
+   UNIMPLEMENTED;
+}
+
+/*
+ * @unimplemented
+ */
+BOOL STDCALL
+EngDeleteFile(
+   IN LPWSTR FileName)
+{
+   UNIMPLEMENTED;
+   return FALSE;
+}
+
+/*
+ * @unimplemented
+ */
+VOID STDCALL
+EngDeleteSafeSemaphore(
+   IN OUT ENGSAFESEMAPHORE *Semaphore)
+{
+   UNIMPLEMENTED;
+}
+
+/*
+ * @unimplemented
+ */
+BOOL STDCALL
+EngGetPrinterDriver(
+   IN HANDLE Printer,
+   IN LPWSTR Environment,
+   IN DWORD Level,
+   OUT BYTE *DrvInfo,
+   IN DWORD Buf,
+   OUT DWORD *Needed)
+{
+   UNIMPLEMENTED;
+   return FALSE;
+}
+
+/*
+ * @unimplemented
+ */
+ULONG STDCALL
+EngHangNotification(
+   IN HDEV Dev,
+   IN PVOID Reserved)
+{
+   UNIMPLEMENTED;
+   return EHN_ERROR;
+}
+
+/*
+ * @unimplemented
+ */
+BOOL STDCALL
+EngInitializeSafeSemaphore(
+   OUT ENGSAFESEMAPHORE *Semaphore)
+{
+   UNIMPLEMENTED;
+   return FALSE;
+}
+
+/*
+ * @unimplemented
+ */
+PDD_SURFACE_LOCAL STDCALL
+EngLockDirectDrawSurface(
+   IN HANDLE Surface)
+{
+   UNIMPLEMENTED;
+   return NULL;
+}
+
+/*
+ * @unimplemented
+ */
+BOOL STDCALL
+EngLpkInstalled()
+{
+   UNIMPLEMENTED;
+   return FALSE;
+}
+
+/*
+ * @unimplemented
+ */
+PVOID STDCALL
+EngMapFile(
+   IN LPWSTR Filename,
+   IN ULONG Size,
+   OUT ULONG_PTR *File)
+{
+   UNIMPLEMENTED;
+   return NULL;
+}
+
+/*
+ * @unimplemented
+ */
+BOOL STDCALL
+EngPlgBlt(
+   IN SURFOBJ *Dest,
+   IN SURFOBJ *Source,
+   IN SURFOBJ *Mask,
+   IN CLIPOBJ *Clip,
+   IN XLATEOBJ *Xlate,
+   IN COLORADJUSTMENT *ColorAdjustment,
+   IN POINTL *BrusOrigin,
+   IN POINTFIX *DestPoints,
+   IN RECTL *SourceRect,
+   IN POINTL *MaskPoint,
+   IN ULONG Mode)
+{
+   UNIMPLEMENTED;
+   return FALSE;
+}
+
+/*
+ * @unimplemented
+ */
+BOOL STDCALL
+EngQueryDeviceAttribute(
+   IN HDEV Device,
+   IN ENG_DEVICE_ATTRIBUTE Attribute,
+   IN VOID *In,
+   IN ULONG InSize,
+   OUT VOID *Out,
+   OUT ULONG OutSize)
+{
+   UNIMPLEMENTED;
+   return FALSE;
+}
+
+/*
+ * @unimplemented
+ */
+LONG STDCALL
+EngReadStateEvent(
+   IN PEVENT Event)
+{
+   UNIMPLEMENTED;
+   return 0;
+}
+BOOL STDCALL
+EngStretchBltROP(
+   IN SURFOBJ *Dest,
+   IN SURFOBJ *Source,
+   IN SURFOBJ *Mask,
+   IN CLIPOBJ *Clip,
+   IN XLATEOBJ *Xlate,
+   IN COLORADJUSTMENT *ColorAdjustment,
+   IN POINTL *BrushOrigin,
+   IN RECTL *DestRect,
+   IN RECTL *SourceRect,
+   IN POINTL *MaskPoint,
+   IN ULONG Mode,
+   IN BRUSHOBJ *BrushObj,
+   IN DWORD ROP4)
+{
+   UNIMPLEMENTED;
+   return FALSE;
+}
+
+/*
+ * @unimplemented
+ */
+BOOL STDCALL
+EngUnlockDirectDrawSurface(
+   IN PDD_SURFACE_LOCAL Surface)
+{
+   UNIMPLEMENTED;
+   return FALSE;
+}
+
+/*
+ * @unimplemented
+ */
+BOOL STDCALL
+EngUnmapFile(
+   IN ULONG_PTR File)
+{
+   UNIMPLEMENTED;
+   return FALSE;
+}
+
+/*
+ * @unimplemented
+ */
+FD_GLYPHSET * STDCALL
+FONTOBJ_pfdg(
+   IN FONTOBJ *FontObj)
+{
+   UNIMPLEMENTED;
+   return NULL;
+}
+
+/*
+ * @unimplemented
+ */
+PBYTE STDCALL
+FONTOBJ_pjOpenTypeTablePointer(
+   IN FONTOBJ *FontObj,
+   IN ULONG Tag,
+   OUT ULONG *Table)
+{
+   UNIMPLEMENTED;
+   return NULL;
+}
+
+/*
+ * @unimplemented
+ */
+PFD_GLYPHATTR STDCALL
+FONTOBJ_pQueryGlyphAttrs(
+   IN FONTOBJ *FontObj,
+   IN ULONG Mode)
+{
+   UNIMPLEMENTED;
+   return NULL;
+}
+
+/*
+ * @unimplemented
+ */
+LPWSTR STDCALL
+FONTOBJ_pwszFontFilePaths(
+   IN FONTOBJ *FontObj,
+   OUT ULONG *PathLength)
+{
+   UNIMPLEMENTED;
+   return NULL;
+}
+
+/*
+ * @unimplemented
+ */
+LONG STDCALL
+HT_Get8BPPMaskPalette(
+   IN OUT LPPALETTEENTRY PaletteEntry,
+   IN BOOL Use8BPPMaskPal,
+   IN BYTE CMYMask,
+   IN USHORT RedGamma,
+   IN USHORT GreenGamma,
+   IN USHORT BlueGamma)
+{
+   UNIMPLEMENTED;
+   return 0;
+}
+
+/*
+ * @unimplemented
+ */
+BOOL STDCALL
+STROBJ_bEnumPositionsOnly(
+   IN STROBJ *StringObj,
+   OUT ULONG *Count,
+   OUT PGLYPHPOS *Pos)
+{
+   UNIMPLEMENTED;
+   return (BOOL) DDI_ERROR;
+}
+
+/*
+ * @unimplemented
+ */
+BOOL STDCALL
+STROBJ_bGetAdvanceWidths(
+   IN STROBJ *StringObj,
+   IN ULONG First,
+   IN ULONG Count,
+   OUT POINTQF *Widths)
+{
+   UNIMPLEMENTED;
+   return FALSE;
+}
+
+/*
+ * @unimplemented
+ */
+FIX STDCALL
+STROBJ_fxBreakExtra(
+   IN STROBJ *StringObj)
+{
+   UNIMPLEMENTED;
+   return (FIX) 0;
+}
+
+/*
+ * @unimplemented
+ */
+FIX STDCALL
+STROBJ_fxCharacterExtra(
+   IN STROBJ *StringObj)
+{
+   UNIMPLEMENTED;
+   return (FIX) 0;
+}
+
+/*
+ * @unimplemented
+ */
+HANDLE STDCALL
+XLATEOBJ_hGetColorTransform(
+   IN XLATEOBJ *XlateObj)
+{
+   UNIMPLEMENTED;
+   return NULL;
+}
CVSspam 0.2.8