Merge 15329:15546 from trunk
[reactos.git] / reactos / lib / user32 / misc / display.c
index dc2e510..bca76e7 100644 (file)
@@ -200,15 +200,7 @@ EnumDisplaySettingsExA(
 {
   BOOL rc;
   UNICODE_STRING DeviceName;
-  LPDEVMODEW lpDevModeW;
-
-  lpDevModeW = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY,
-                         sizeof(DEVMODEW) + lpDevMode->dmDriverExtra);
-  if ( lpDevModeW == NULL )
-    {
-      SetLastError ( ERROR_OUTOFMEMORY );
-      return FALSE;
-    }
+  DEVMODEW lpDevModeW;
 
   if ( !RtlCreateUnicodeStringFromAsciiz ( &DeviceName, (PCSZ)lpszDeviceName ) )
     {
@@ -216,16 +208,16 @@ EnumDisplaySettingsExA(
       return FALSE;
     }
 
-  lpDevModeW->dmSize = sizeof(DEVMODEW);
-  lpDevModeW->dmDriverExtra = 0;
-
-  rc = NtUserEnumDisplaySettings ( &DeviceName, iModeNum, lpDevModeW,
+  memset(&lpDevModeW,0,sizeof(DEVMODEW));
+  lpDevModeW.dmSize = sizeof(DEVMODEW);
+  rc = NtUserEnumDisplaySettings ( &DeviceName, iModeNum, &lpDevModeW,
                                    dwFlags );
 
-  RosRtlDevModeW2A ( lpDevMode, lpDevModeW );
+  RosRtlDevModeW2A ( lpDevMode, &lpDevModeW );
 
   RtlFreeUnicodeString ( &DeviceName );
-  HeapFree ( GetProcessHeap(), 0, lpDevModeW );
+
 
   return rc;
 }