* Sync up to trunk HEAD (r62975).
[reactos.git] / dll / directx / wine / dxgi / dxgi_main.c
index e20be15..a12f3a6 100644 (file)
@@ -43,55 +43,35 @@ static void dxgi_main_cleanup(void)
     DeleteCriticalSection(&dxgi_cs);
 }
 
-BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD fdwReason, LPVOID lpv)
+BOOL WINAPI DllMain(HINSTANCE inst, DWORD reason, void *reserved)
 {
-    TRACE("fdwReason %u\n", fdwReason);
-
-    switch(fdwReason)
+    switch (reason)
     {
         case DLL_PROCESS_ATTACH:
-            DisableThreadLibraryCalls(hInstDLL);
+            DisableThreadLibraryCalls(inst);
             break;
 
         case DLL_PROCESS_DETACH:
-            if (lpv) break;
-            dxgi_main_cleanup();
+            if (!reserved)
+                dxgi_main_cleanup();
             break;
     }
 
     return TRUE;
 }
 
-HRESULT WINAPI CreateDXGIFactory(REFIID riid, void **factory)
+HRESULT WINAPI CreateDXGIFactory1(REFIID riid, void **factory)
 {
-    struct dxgi_factory *object;
-    HRESULT hr;
-
     TRACE("riid %s, factory %p\n", debugstr_guid(riid), factory);
 
-    object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*object));
-    if (!object)
-    {
-        ERR("Failed to allocate DXGI factory object memory\n");
-        *factory = NULL;
-        return E_OUTOFMEMORY;
-    }
-
-    hr = dxgi_factory_init(object);
-    if (FAILED(hr))
-    {
-        WARN("Failed to initialize swapchain, hr %#x.\n", hr);
-        HeapFree(GetProcessHeap(), 0, object);
-        *factory = NULL;
-        return hr;
-    }
-
-    TRACE("Created IDXGIFactory %p\n", object);
+    return dxgi_factory_create(riid, factory, TRUE);
+}
 
-    hr = IDXGIFactory_QueryInterface((IDXGIFactory *)object, riid, factory);
-    IDXGIFactory_Release((IDXGIFactory *)object);
+HRESULT WINAPI CreateDXGIFactory(REFIID riid, void **factory)
+{
+    TRACE("riid %s, factory %p\n", debugstr_guid(riid), factory);
 
-    return hr;
+    return dxgi_factory_create(riid, factory, FALSE);
 }
 
 static BOOL get_layer(enum dxgi_device_layer_id id, struct dxgi_device_layer *layer)
@@ -125,8 +105,7 @@ static HRESULT register_d3d10core_layers(HMODULE d3d10core)
         HMODULE mod;
         BOOL ret;
 
-        ret = GetModuleHandleExA(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS, (LPCSTR)d3d10core, &mod);
-        if (!ret)
+        if (!(ret = GetModuleHandleExA(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS, (const char *)d3d10core, &mod)))
         {
             LeaveCriticalSection(&dxgi_cs);
             return E_FAIL;