From ea6d6ce494f06b8a0a2c47980691f44848686c2b Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Sat, 21 Feb 2015 11:10:51 +0100 Subject: [PATCH] Added patches to implement semi-stubs for GetFileVersionInfoSizeExA/W and GetFileVersionInfoExA/W. --- README.md | 4 +- debian/changelog | 2 + patches/patchinstall.sh | 22 ++++++++++ ...y-implement-GetFileVersionInfoSizeEx.patch | 42 +++++++++++++++++++ ...ly-implement-GetFileVersionInfoExA-W.patch | 39 +++++++++++++++++ patches/version-VersionInfoEx/definition | 2 + 6 files changed, 110 insertions(+), 1 deletion(-) create mode 100644 patches/version-VersionInfoEx/0001-version-Partially-implement-GetFileVersionInfoSizeEx.patch create mode 100644 patches/version-VersionInfoEx/0002-version-Partially-implement-GetFileVersionInfoExA-W.patch create mode 100644 patches/version-VersionInfoEx/definition diff --git a/README.md b/README.md index e30e5449..1e457151 100644 --- a/README.md +++ b/README.md @@ -38,8 +38,10 @@ Wine. All those differences are also documented on the Included bug fixes and improvements =================================== -**Bugfixes and features included in the next upcoming release [10]:** +**Bugfixes and features included in the next upcoming release [12]:** +* Add semi-stub for GetFileVersionInfoExA/W ([Wine Bug #38098](https://bugs.winehq.org/show_bug.cgi?id=38098)) +* Add semi-stub for GetFileVersionInfoSizeExA/W ([Wine Bug #38090](https://bugs.winehq.org/show_bug.cgi?id=38090)) * Add stub for ntoskrnl.ExAcquireResourceExclusiveLite * Add stub for ntoskrnl.ExDeleteResourceLite * Add stub for ntoskrnl.ExReleaseResourceForThread diff --git a/debian/changelog b/debian/changelog index aa65f043..2c48a102 100644 --- a/debian/changelog +++ b/debian/changelog @@ -14,6 +14,8 @@ wine-staging (1.7.37) UNRELEASED; urgency=low * Added patch to implement IApplicationAssociationRegistration::QueryCurrentDefault. * Added patch to improve stubs for AEV_{Get,Set}MasterVolumeLevel. * Added patch to improve stubs for AEV_{Get,Set}Mute. + * Added patch to implement semi-stub for GetFileVersionInfoSizeExA/W. + * Added patch to implement semi-stub for GetFileVersionInfoExA/W. * Removed patches for UTF7 support (accepted upstream). * Removed patches for SIO_ADDRESS_LIST_CHANGE ioctl (accepted upstream). * Removed patch for IApplicationAssociationRegistration::QueryCurrentDefault (accepted upstream). diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 39026628..1000e7d1 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -178,6 +178,7 @@ patch_enable_all () enable_user32_ScrollWindowEx="$1" enable_user32_WndProc="$1" enable_vcomp_Stub_Functions="$1" + enable_version_VersionInfoEx="$1" enable_windowscodecs_TGA_Decoder="$1" enable_wine_inf_Performance="$1" enable_wineboot_HKEY_DYN_DATA="$1" @@ -562,6 +563,9 @@ patch_enable () vcomp-Stub_Functions) enable_vcomp_Stub_Functions="$2" ;; + version-VersionInfoEx) + enable_version_VersionInfoEx="$2" + ;; windowscodecs-TGA_Decoder) enable_windowscodecs_TGA_Decoder="$2" ;; @@ -3092,6 +3096,24 @@ if test "$enable_vcomp_Stub_Functions" -eq 1; then ) >> "$patchlist" fi +# Patchset version-VersionInfoEx +# | +# | This patchset fixes the following Wine bugs: +# | * [#38098] Add semi-stub for GetFileVersionInfoExA/W +# | * [#38090] Add semi-stub for GetFileVersionInfoSizeExA/W +# | +# | Modified files: +# | * dlls/version/version.c +# | +if test "$enable_version_VersionInfoEx" -eq 1; then + patch_apply version-VersionInfoEx/0001-version-Partially-implement-GetFileVersionInfoSizeEx.patch + patch_apply version-VersionInfoEx/0002-version-Partially-implement-GetFileVersionInfoExA-W.patch + ( + echo '+ { "Sebastian Lackner", "version: Partially implement GetFileVersionInfoSizeExA/W.", 1 },'; + echo '+ { "Sebastian Lackner", "version: Partially implement GetFileVersionInfoExA/W.", 1 },'; + ) >> "$patchlist" +fi + # Patchset windowscodecs-TGA_Decoder # | # | Modified files: diff --git a/patches/version-VersionInfoEx/0001-version-Partially-implement-GetFileVersionInfoSizeEx.patch b/patches/version-VersionInfoEx/0001-version-Partially-implement-GetFileVersionInfoSizeEx.patch new file mode 100644 index 00000000..71a26ace --- /dev/null +++ b/patches/version-VersionInfoEx/0001-version-Partially-implement-GetFileVersionInfoSizeEx.patch @@ -0,0 +1,42 @@ +From 4f229be6791dc87236ef8fc9941a5c0ecbe16f1f Mon Sep 17 00:00:00 2001 +From: Sebastian Lackner +Date: Sat, 21 Feb 2015 10:56:43 +0100 +Subject: version: Partially implement GetFileVersionInfoSizeExA/W. + +Based on a patch by Austin English. +--- + dlls/version/version.c | 11 +++++------ + 1 file changed, 5 insertions(+), 6 deletions(-) + +diff --git a/dlls/version/version.c b/dlls/version/version.c +index 680fa31..18bf74c 100644 +--- a/dlls/version/version.c ++++ b/dlls/version/version.c +@@ -1619,9 +1619,9 @@ DWORD WINAPI VerInstallFileW( + */ + 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; ++ FIXME("semi-stub: %u %s %p\n", flags, wine_dbgstr_a(filename), handle); ++ return GetFileVersionInfoSizeA(filename, handle); ++ + } + + /****************************************************************************** +@@ -1629,9 +1629,8 @@ DWORD WINAPI GetFileVersionInfoSizeExA(DWORD flags, LPCSTR filename, LPDWORD han + */ + 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; ++ FIXME("semi-stub: %u %s %p\n", flags, wine_dbgstr_w(filename), handle); ++ return GetFileVersionInfoSizeW(filename, handle); + } + + /****************************************************************************** +-- +2.3.0 + diff --git a/patches/version-VersionInfoEx/0002-version-Partially-implement-GetFileVersionInfoExA-W.patch b/patches/version-VersionInfoEx/0002-version-Partially-implement-GetFileVersionInfoExA-W.patch new file mode 100644 index 00000000..3840db2a --- /dev/null +++ b/patches/version-VersionInfoEx/0002-version-Partially-implement-GetFileVersionInfoExA-W.patch @@ -0,0 +1,39 @@ +From 219afe0784e5177b592da4e4ab9b42efc155f1e4 Mon Sep 17 00:00:00 2001 +From: Sebastian Lackner +Date: Sat, 21 Feb 2015 11:07:14 +0100 +Subject: version: Partially implement GetFileVersionInfoExA/W. + +Based on a patch by Austin English. +--- + dlls/version/version.c | 10 ++++------ + 1 file changed, 4 insertions(+), 6 deletions(-) + +diff --git a/dlls/version/version.c b/dlls/version/version.c +index 18bf74c..2189445 100644 +--- a/dlls/version/version.c ++++ b/dlls/version/version.c +@@ -1638,9 +1638,8 @@ DWORD WINAPI GetFileVersionInfoSizeExW(DWORD flags, LPCWSTR filename, LPDWORD ha + */ + 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; ++ FIXME("semi-stub: %u %s %u %u %p\n", flags, wine_dbgstr_a(filename), handle, len, data); ++ return GetFileVersionInfoA(filename, handle, len, data); + } + + /****************************************************************************** +@@ -1648,7 +1647,6 @@ BOOL WINAPI GetFileVersionInfoExA(DWORD flags, LPCSTR filename, DWORD handle, DW + */ + 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; ++ FIXME("semi-stub: %u %s %u %u %p\n", flags, wine_dbgstr_w(filename), handle, len, data); ++ return GetFileVersionInfoW(filename, handle, len, data); + } +-- +2.3.0 + diff --git a/patches/version-VersionInfoEx/definition b/patches/version-VersionInfoEx/definition new file mode 100644 index 00000000..085b01e5 --- /dev/null +++ b/patches/version-VersionInfoEx/definition @@ -0,0 +1,2 @@ +Fixes: [38098] Add semi-stub for GetFileVersionInfoExA/W +Fixes: [38090] Add semi-stub for GetFileVersionInfoSizeExA/W