diff --git a/reactos/dll/directx/ddraw/main.c b/reactos/dll/directx/ddraw/main.c index 3bf932e8e55..b8c899d10af 100644 --- a/reactos/dll/directx/ddraw/main.c +++ b/reactos/dll/directx/ddraw/main.c @@ -220,51 +220,28 @@ DirectDrawEnumerateExA(LPDDENUMCALLBACKEXA lpCallback, LONG rc; BOOL EnumerateAttachedSecondaries = FALSE; DWORD privateDWFlags = 0; - CHAR strMsg[RC_STRING_MAX_SIZE]; - HRESULT retVal = DDERR_INVALIDPARAMS; DX_WINDBG_trace(); - if ((IsBadCodePtr((LPVOID)lpCallback) == 0) && - ((dwFlags & ~(DDENUM_NONDISPLAYDEVICES | - DDENUM_DETACHEDSECONDARYDEVICES | - DDENUM_ATTACHEDSECONDARYDEVICES)) == 0)) + rc = RegOpenKeyA(HKEY_LOCAL_MACHINE, REGSTR_PATH_DDHW, &hKey); + if (rc == ERROR_SUCCESS) { - LoadStringA(hDllModule, STR_PRIMARY_DISPLAY, (LPSTR)&strMsg, RC_STRING_MAX_SIZE); - - rc = RegOpenKeyA(HKEY_LOCAL_MACHINE, REGSTR_PATH_DDHW, &hKey); + /* Enumerate Attached Secondaries */ + cbData = sizeof(DWORD); + rc = RegQueryValueExA(hKey, "EnumerateAttachedSecondaries", NULL, NULL, (LPBYTE)&Value, &cbData); if (rc == ERROR_SUCCESS) { - /* Enumerate Attached Secondaries */ - cbData = sizeof(DWORD); - rc = RegQueryValueExA(hKey, "EnumerateAttachedSecondaries", NULL, NULL, (LPBYTE)&Value, &cbData); - if (rc == ERROR_SUCCESS) - { - if (Value != 0) - { - EnumerateAttachedSecondaries = TRUE; - privateDWFlags = DDENUM_ATTACHEDSECONDARYDEVICES; - } - } - RegCloseKey(hKey); - } - - /* Call the user supplyed callback function */ - rc = lpCallback(NULL, strMsg, "display", lpContext, NULL); - - /* If the callback function returns DDENUMRET_CANCEL, we will stop enumerating devices now */ - if(rc == DDENUMRET_CANCEL) - { - retVal = DD_OK; - } - else - { - // not finish - retVal = DDERR_UNSUPPORTED; + if (Value != 0) + { + EnumerateAttachedSecondaries = TRUE; + privateDWFlags = DDENUM_ATTACHEDSECONDARYDEVICES; + } } + RegCloseKey(hKey); } - return retVal; + // not finish + return DDERR_UNSUPPORTED; } HRESULT