version: move GetFileVersionInfoSize(A/W) implemementation to GetFileVersionInfoSizeEx(A/W) (1/2)
Austin English
austinenglish at gmail.com
Fri May 22 14:37:00 CDT 2015
For https://bugs.winehq.org/show_bug.cgi?id=38090
--
-Austin
-------------- next part --------------
From e7ee2d53925030a961ffc359e05f1b3494275f71 Mon Sep 17 00:00:00 2001
From: Austin English <austin at gaikai.com>
Date: Thu, 21 May 2015 18:23:58 -0700
Subject: [PATCH 1/2] version: move GetFileVersionInfoSize(A/W)
implemementation to GetFileVersionInfoSizeEx(A/W)
---
dlls/version/version.c | 62 +++++++++++++++++++++++++++++++-------------------
1 file changed, 39 insertions(+), 23 deletions(-)
diff --git a/dlls/version/version.c b/dlls/version/version.c
index 68dab66..72710ed 100644
--- a/dlls/version/version.c
+++ b/dlls/version/version.c
@@ -602,16 +602,44 @@ typedef struct
(VS_VERSION_INFO_STRUCT32 *)( (LPBYTE)ver + (((ver)->wLength + 3) & ~3) )
-/***********************************************************************
- * GetFileVersionInfoSizeW [VERSION.@]
+/******************************************************************************
+ * GetFileVersionInfoSizeExA [VERSION.@]
*/
-DWORD WINAPI GetFileVersionInfoSizeW( LPCWSTR filename, LPDWORD handle )
+DWORD WINAPI GetFileVersionInfoSizeExA(DWORD flags, LPCSTR filename, LPDWORD handle)
+{
+ UNICODE_STRING filenameW;
+ DWORD retval;
+
+ TRACE("(%s,%p)\n", debugstr_a(filename), handle );
+
+ if(filename)
+ RtlCreateUnicodeStringFromAsciiz(&filenameW, filename);
+ else
+ filenameW.Buffer = NULL;
+
+ retval = GetFileVersionInfoSizeExW(0, filenameW.Buffer, handle);
+
+ RtlFreeUnicodeString(&filenameW);
+
+ return retval;
+}
+
+/******************************************************************************
+ * GetFileVersionInfoSizeExW [VERSION.@]
+ */
+DWORD WINAPI GetFileVersionInfoSizeExW( DWORD flags, LPCWSTR filename, LPDWORD handle )
{
DWORD len, offset, magic = 1;
HFILE lzfd;
HMODULE hModule;
OFSTRUCT ofs;
+ if(flags) {
+ FIXME("stub: %x %s %p\n", flags, wine_dbgstr_w(filename), handle);
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
+ }
+
TRACE("(%s,%p)\n", debugstr_w(filename), handle );
if (handle) *handle = 0;
@@ -677,6 +705,14 @@ DWORD WINAPI GetFileVersionInfoSizeW( LPCWSTR filename, LPDWORD handle )
}
/***********************************************************************
+ * GetFileVersionInfoSizeW [VERSION.@]
+ */
+DWORD WINAPI GetFileVersionInfoSizeW( LPCWSTR filename, LPDWORD handle )
+{
+ return GetFileVersionInfoSizeExW(0, filename, handle);
+}
+
+/***********************************************************************
* GetFileVersionInfoSizeA [VERSION.@]
*/
DWORD WINAPI GetFileVersionInfoSizeA( LPCSTR filename, LPDWORD handle )
@@ -1615,26 +1651,6 @@ DWORD WINAPI VerInstallFileW(
}
/******************************************************************************
- * GetFileVersionInfoSizeExA [VERSION.@]
- */
-DWORD WINAPI GetFileVersionInfoSizeExA(DWORD flags, LPCSTR filename, LPDWORD handle)
-{
- FIXME("stub: %u %s %p\n", flags, wine_dbgstr_a(filename), handle);
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
-}
-
-/******************************************************************************
- * GetFileVersionInfoSizeExW [VERSION.@]
- */
-DWORD WINAPI GetFileVersionInfoSizeExW(DWORD flags, LPCWSTR filename, LPDWORD handle)
-{
- FIXME("stub: %u %s %p\n", flags, wine_dbgstr_w(filename), handle);
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
-}
-
-/******************************************************************************
* GetFileVersionInfoExA [VERSION.@]
*/
BOOL WINAPI GetFileVersionInfoExA(DWORD flags, LPCSTR filename, DWORD handle, DWORD len, LPVOID data)
--
2.2.0
More information about the wine-patches
mailing list