version: move GetFileVersionInfo(A/W) implementation to GetFileVersionInfoEx(A/W) (2/2)
Austin English
austinenglish at gmail.com
Fri May 22 14:38:38 CDT 2015
For https://bugs.winehq.org/show_bug.cgi?id=38098
--
-Austin
-------------- next part --------------
From 3475ee1ab55d46f10ce021ea270d39dbe791b933 Mon Sep 17 00:00:00 2001
From: Austin English <austinenglish at gmail.com>
Date: Thu, 21 May 2015 18:32:17 -0700
Subject: [PATCH 2/2] version: move GetFileVersionInfo(A/W) implementation to
GetFileVersionInfoEx(A/W)
---
dlls/version/version.c | 71 +++++++++++++++++++++++++++++++-------------------
1 file changed, 44 insertions(+), 27 deletions(-)
diff --git a/dlls/version/version.c b/dlls/version/version.c
index 72710ed..8ab47c8 100644
--- a/dlls/version/version.c
+++ b/dlls/version/version.c
@@ -734,11 +734,34 @@ DWORD WINAPI GetFileVersionInfoSizeA( LPCSTR filename, LPDWORD handle )
return retval;
}
-/***********************************************************************
- * GetFileVersionInfoW [VERSION.@]
+
+/******************************************************************************
+ * GetFileVersionInfoExA [VERSION.@]
+ */
+BOOL WINAPI GetFileVersionInfoExA( DWORD flags, LPCSTR filename, DWORD handle, DWORD datasize, LPVOID data )
+{
+ UNICODE_STRING filenameW;
+ BOOL retval;
+
+ TRACE("(%s,%d,size=%d,data=%p)\n",
+ debugstr_a(filename), handle, datasize, data );
+
+ if(filename)
+ RtlCreateUnicodeStringFromAsciiz(&filenameW, filename);
+ else
+ filenameW.Buffer = NULL;
+
+ retval = GetFileVersionInfoExW(flags, filenameW.Buffer, handle, datasize, data);
+
+ RtlFreeUnicodeString(&filenameW);
+
+ return retval;
+}
+
+/******************************************************************************
+ * GetFileVersionInfoExW [VERSION.@]
*/
-BOOL WINAPI GetFileVersionInfoW( LPCWSTR filename, DWORD handle,
- DWORD datasize, LPVOID data )
+BOOL WINAPI GetFileVersionInfoExW( DWORD flags, LPCWSTR filename, DWORD handle, DWORD datasize, LPVOID data )
{
static const char signature[4] = "FE2X";
DWORD len, offset, magic = 1;
@@ -747,6 +770,13 @@ BOOL WINAPI GetFileVersionInfoW( LPCWSTR filename, DWORD handle,
HMODULE hModule;
VS_VERSION_INFO_STRUCT32* vvis = data;
+ if (flags)
+ {
+ FIXME("stub: %x %s %u %u %p\n", flags, wine_dbgstr_w(filename), handle, datasize, data);
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return 0;
+ }
+
TRACE("(%s,%d,size=%d,data=%p)\n",
debugstr_w(filename), handle, datasize, data );
@@ -810,10 +840,17 @@ BOOL WINAPI GetFileVersionInfoW( LPCWSTR filename, DWORD handle,
}
/***********************************************************************
+ * GetFileVersionInfoW [VERSION.@]
+ */
+BOOL WINAPI GetFileVersionInfoW( LPCWSTR filename, DWORD handle, DWORD datasize, LPVOID data )
+{
+ return GetFileVersionInfoExW(0, filename, handle, datasize, data);
+}
+
+/***********************************************************************
* GetFileVersionInfoA [VERSION.@]
*/
-BOOL WINAPI GetFileVersionInfoA( LPCSTR filename, DWORD handle,
- DWORD datasize, LPVOID data )
+BOOL WINAPI GetFileVersionInfoA( LPCSTR filename, DWORD handle, DWORD datasize, LPVOID data )
{
UNICODE_STRING filenameW;
BOOL retval;
@@ -826,7 +863,7 @@ BOOL WINAPI GetFileVersionInfoA( LPCSTR filename, DWORD handle,
else
filenameW.Buffer = NULL;
- retval = GetFileVersionInfoW(filenameW.Buffer, handle, datasize, data);
+ retval = GetFileVersionInfoExW(0, filenameW.Buffer, handle, datasize, data);
RtlFreeUnicodeString(&filenameW);
@@ -1649,23 +1686,3 @@ DWORD WINAPI VerInstallFileW(
HeapFree( GetProcessHeap(), 0, wcurd );
return ret;
}
-
-/******************************************************************************
- * GetFileVersionInfoExA [VERSION.@]
- */
-BOOL WINAPI GetFileVersionInfoExA(DWORD flags, LPCSTR filename, DWORD handle, DWORD len, LPVOID data)
-{
- FIXME("stub: %u %s %u %u %p\n", flags, wine_dbgstr_a(filename), handle, len, data);
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
-}
-
-/******************************************************************************
- * GetFileVersionInfoExW [VERSION.@]
- */
-BOOL WINAPI GetFileVersionInfoExW(DWORD flags, LPCWSTR filename, DWORD handle, DWORD len, LPVOID data)
-{
- FIXME("stub: %u %s %u %u %p\n", flags, wine_dbgstr_w(filename), handle, len, data);
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- return 0;
-}
--
2.2.0
More information about the wine-patches
mailing list