ntdll-WRITECOPY: Fix some additional issues, disable this patch by default since it might trigger additional Wine bugs.

This commit is contained in:
Sebastian Lackner
2014-10-04 03:24:43 +02:00
parent 7f43d57d01
commit e273769702
11 changed files with 474 additions and 283 deletions

View File

@@ -742,21 +742,28 @@ ntdll-Pipe_SpecialCharacters.ok:
# Patchset ntdll-WRITECOPY
# |
# | Included patches:
# | * Change WRITECOPY memory protection to WRITE on first write. [rev 2, by Michael Müller]
# | * Change WRITECOPY memory protection to WRITE on first write. [rev 3, by Michael Müller]
# |
# | This patchset fixes the following Wine bugs:
# | * [#29384] Voobly expects correct handling of WRITECOPY memory protection
# |
# | Modified files:
# | * dlls/kernel32/tests/virtual.c, dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_arm.c,
# | dlls/ntdll/signal_arm64.c, dlls/ntdll/signal_i386.c, dlls/ntdll/signal_powerpc.c, dlls/ntdll/signal_x86_64.c,
# | dlls/ntdll/thread.c, dlls/ntdll/virtual.c
# | * dlls/advapi32/crypt.c, dlls/kernel32/tests/virtual.c, dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/server.c,
# | dlls/ntdll/signal_arm.c, dlls/ntdll/signal_arm64.c, dlls/ntdll/signal_i386.c, dlls/ntdll/signal_powerpc.c,
# | dlls/ntdll/signal_x86_64.c, dlls/ntdll/thread.c, dlls/ntdll/virtual.c
# |
.INTERMEDIATE: ntdll-WRITECOPY.ok
ntdll-WRITECOPY.ok:
$(call APPLY_FILE,ntdll-WRITECOPY/0001-ntdll-Change-WRITECOPY-memory-protection-to-WRITE-on.patch)
$(call APPLY_FILE,ntdll-WRITECOPY/0001-ntdll-Trigger-write-watches-before-passing-userdata-.patch)
$(call APPLY_FILE,ntdll-WRITECOPY/0002-advapi-Trigger-write-watches-before-passing-userdata.patch)
$(call APPLY_FILE,ntdll-WRITECOPY/0003-ntdll-Fix-handling-of-page-fault-if-a-guard-page-and.patch)
$(call APPLY_FILE,ntdll-WRITECOPY/0004-ntdll-Avoid-race-condition-if-two-threads-trigger-a-.patch)
$(call APPLY_FILE,ntdll-WRITECOPY/0005-ntdll-Wait-until-builtin-dlls-are-unloaded-before-re.patch)
$(call APPLY_FILE,ntdll-WRITECOPY/0006-ntdll-Setup-a-temporary-signal-handler-during-proces.patch)
$(call APPLY_FILE,ntdll-WRITECOPY/0007-ntdll-Properly-handle-PAGE_WRITECOPY-protection.patch)
$(call APPLY_FILE,ntdll-WRITECOPY/0008-ntdll-Only-enable-true-WRITECOPY-protection-when-a-s.patch)
@( \
echo '+ { "ntdll-WRITECOPY", "Michael Müller", "Change WRITECOPY memory protection to WRITE on first write. [rev 2]" },'; \
echo '+ { "ntdll-WRITECOPY", "Michael Müller", "Change WRITECOPY memory protection to WRITE on first write. [rev 3]" },'; \
) > ntdll-WRITECOPY.ok
# Patchset ntdll-loader_EntryPoint