Added patch to support FIND_FIRST_EX_LARGE_FETCH flag in FindFirstFileExW.

This commit is contained in:
Sebastian Lackner 2014-09-13 01:43:56 +02:00
parent 4fb2477927
commit 42f18b7237
5 changed files with 70 additions and 0 deletions

View File

@ -35,6 +35,11 @@ Wine. All those differences are also documented on the
Included bugfixes and improvements
==================================
**Bugfixes and features included in the next upcoming release [1]:**
* Support for FIND_FIRST_EX_LARGE_FETCH flag in FindFirstFileExW ([Wine Bug #35121](http://bugs.winehq.org/show_bug.cgi?id=35121 "Multiple applications/games fail to start with WinVer set to 'Windows 7' (FindFirstFileExW needs FIND_FIRST_EX_LARGE_FETCH support)(FotoQuelle Fotosoftware v4.13, QT5)"))
**Bugs fixed in Wine-Compholio 1.7.26 [58]:**
* ATL IOCS data should not be stored in GWLP_USERDATA ([Wine Bug #21767](http://bugs.winehq.org/show_bug.cgi?id=21767 "Multiple applications storing AxHostWindow instance pointer in GWLP_USERDATA crash on startup (Wine uses GWLP_USERDATA to store IOCS)(JLC's Internet TV, Anime Studio Pro 10.x)"))

1
debian/changelog vendored
View File

@ -1,5 +1,6 @@
wine-compholio (1.7.27) UNRELEASED; urgency=low
* Fixed some issues in the patches for GetSystemTimes.
* Added patch to support FIND_FIRST_EX_LARGE_FETCH flag in FindFirstFileExW.
* Removed patch to use assembly wrapper for TLS callbacks (accepted upstream).
* Removed patch to fix uninitialized cch struct member in GetMenuItemInfo.
-- Erich E. Hoover <erich.e.hoover@gmail.com> Mon, 08 Sep 2014 21:14:36 +0200

View File

@ -30,6 +30,7 @@ PATCHLIST := \
dsound-Fast_Mixer.ok \
fonts-Missing_Fonts.ok \
iphlpapi-TCP_Table.ok \
kernel32-FindFirstFile-LargeFetch.ok \
kernel32-GetFinalPathNameByHandle.ok \
kernel32-GetSystemTimes.ok \
kernel32-GetVolumePathName.ok \
@ -342,6 +343,24 @@ iphlpapi-TCP_Table.ok:
echo '+ { "iphlpapi-TCP_Table", "Erich E. Hoover", "Implement AllocateAndGetTcpExTableFromStack." },'; \
) > iphlpapi-TCP_Table.ok
# Patchset kernel32-FindFirstFile-LargeFetch
# |
# | Included patches:
# | * Ignore FIND_FIRST_EX_LARGE_FETCH flag in FindFirstFileExW. [by Sebastian Lackner]
# |
# | This patchset fixes the following Wine bugs:
# | * [#35121] Support for FIND_FIRST_EX_LARGE_FETCH flag in FindFirstFileExW
# |
# | Modified files:
# | * dlls/kernel32/file.c, include/winbase.h
# |
.INTERMEDIATE: kernel32-FindFirstFile-LargeFetch.ok
kernel32-FindFirstFile-LargeFetch.ok:
$(call APPLY_FILE,kernel32-FindFirstFile-LargeFetch/0001-kernel32-Ignore-FIND_FIRST_EX_LARGE_FETCH-flag-in-Fi.patch)
@( \
echo '+ { "kernel32-FindFirstFile-LargeFetch", "Sebastian Lackner", "Ignore FIND_FIRST_EX_LARGE_FETCH flag in FindFirstFileExW." },'; \
) > kernel32-FindFirstFile-LargeFetch.ok
# Patchset kernel32-GetFinalPathNameByHandle
# |
# | Included patches:

View File

@ -0,0 +1,41 @@
From a4e0737b05a26a85215c06c5c9fe615353540e50 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Sat, 13 Sep 2014 01:35:08 +0200
Subject: kernel32: Ignore FIND_FIRST_EX_LARGE_FETCH flag in FindFirstFileExW.
---
dlls/kernel32/file.c | 3 +++
include/winbase.h | 3 +++
2 files changed, 6 insertions(+)
diff --git a/dlls/kernel32/file.c b/dlls/kernel32/file.c
index 412659b..b277fb9 100644
--- a/dlls/kernel32/file.c
+++ b/dlls/kernel32/file.c
@@ -1859,6 +1859,9 @@ HANDLE WINAPI FindFirstFileExW( LPCWSTR filename, FINDEX_INFO_LEVELS level,
TRACE("%s %d %p %d %p %x\n", debugstr_w(filename), level, data, search_op, filter, flags);
+ /* ignore FIND_FIRST_EX_LARGE_FETCH, only a hint for performance optimization */
+ flags &= ~FIND_FIRST_EX_LARGE_FETCH;
+
if ((search_op != FindExSearchNameMatch && search_op != FindExSearchLimitToDirectories)
|| flags != 0)
{
diff --git a/include/winbase.h b/include/winbase.h
index dd5e816..edd6ad6 100644
--- a/include/winbase.h
+++ b/include/winbase.h
@@ -289,6 +289,9 @@ typedef enum _FINDEX_INFO_LEVELS
FindExInfoMaxInfoLevel
} FINDEX_INFO_LEVELS;
+#define FIND_FIRST_EX_CASE_SENSITIVE 1
+#define FIND_FIRST_EX_LARGE_FETCH 2
+
typedef enum _FINDEX_SEARCH_OPS
{
FindExSearchNameMatch,
--
2.1.0

View File

@ -0,0 +1,4 @@
Author: Sebastian Lackner
Subject: Ignore FIND_FIRST_EX_LARGE_FETCH flag in FindFirstFileExW.
Revision: 1
Fixes: [35121] Support for FIND_FIRST_EX_LARGE_FETCH in FindFirstFileExW.