browseui: Improved a FIXME in DllGetVersion
K. Wartke
kwartke at gmail.com
Fri Aug 13 09:30:58 CDT 2010
---
dlls/browseui/browseui_main.c | 29 +++++++++++++++++++++--------
1 files changed, 21 insertions(+), 8 deletions(-)
diff --git a/dlls/browseui/browseui_main.c b/dlls/browseui/browseui_main.c
index f09d817..d8b0ac3 100644
--- a/dlls/browseui/browseui_main.c
+++ b/dlls/browseui/browseui_main.c
@@ -183,15 +183,28 @@ HRESULT WINAPI DllCanUnloadNow(void)
*/
HRESULT WINAPI DllGetVersion(DLLVERSIONINFO *info)
{
- if (info->cbSize != sizeof(DLLVERSIONINFO)) FIXME("support DLLVERSIONINFO2\n");
-
- /* this is what IE6 on Windows 98 reports */
- info->dwMajorVersion = 6;
- info->dwMinorVersion = 0;
- info->dwBuildNumber = 2600;
- info->dwPlatformID = DLLVER_PLATFORM_WINDOWS;
+ if(info->cbSize == sizeof(DLLVERSIONINFO) ||
+ info->cbSize == sizeof(DLLVERSIONINFO2))
+ {
+ /* this is what IE6 on Windows 98 reports */
+ info->dwMajorVersion = 6;
+ info->dwMinorVersion = 0;
+ info->dwBuildNumber = 2600;
+ info->dwPlatformID = DLLVER_PLATFORM_WINDOWS;
+ if(info->cbSize == sizeof(DLLVERSIONINFO2))
+ {
+ DLLVERSIONINFO2 *info2 = (DLLVERSIONINFO2*) info;
+ info2->dwFlags = 0;
+ info2->ullVersion = MAKEDLLVERULL(info->dwMajorVersion,
+ info->dwMinorVersion,
+ info->dwBuildNumber,
+ 0); /* FIXME: correct hotfix number */
+ }
+ return S_OK;
+ }
- return NOERROR;
+ WARN("wrong DLLVERSIONINFO size from app.\n");
+ return E_INVALIDARG;
}
/***********************************************************************
--
1.7.1
------------1BUvgYOd4Vqx6TJmPM2Dy4--
More information about the wine-patches
mailing list