Rebase against aaddf1365a3371263827206eedf1464a83562c00.

[msi-Fix_Stack_Alignment]
Removed patch to fix stack alignment in CUSTOMPROC_wrapper function (accepted
upstream).

[ntdll-FSCTL_PIPE_LISTEN]
Removed patch to avoid updating iosb.Status after FSCTL_PIPE_LISTEN call
(accepted upstream).

[user32-FlashWindowEx]
Removed patch to avoid dereferencing NULL pointer in a trace (accepted
upstream).

[windowscodecs-PNG_Fixes]
Removed patch to fix a copy/paste mistake (accepted upstream).

[winex11-Desktop_Resolution]
Removed patch to allow 320x240 as supported resolution in desktop mode
(accepted upstream).
This commit is contained in:
Sebastian Lackner 2016-04-08 01:43:22 +02:00
parent e8ef34b3a1
commit 57dde8e88f
14 changed files with 122 additions and 640 deletions

View File

@ -1,15 +1,15 @@
From 613105807eab97c1dfb68dc5497c007d8d92d417 Mon Sep 17 00:00:00 2001
From cee15830660362c97d886ab9cc4e9a535b65491a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Fri, 15 Jan 2016 13:01:15 +0100
Subject: kernelbase: Add dll and add stub for QuirkIsEnabled.
---
dlls/kernelbase/Makefile.in | 3 +
dlls/kernelbase/kernelbase.spec | 1309 +++++++++++++++++++++++++++++++++++----
dlls/kernelbase/kernelbase.spec | 1127 ++++++++++++++++++++++++++++++++++++++-
dlls/kernelbase/misc.c | 37 ++
dlls/shlwapi/shlwapi.spec | 2 +-
tools/make_specfiles | 8 +-
5 files changed, 1250 insertions(+), 109 deletions(-)
tools/make_specfiles | 1 +
5 files changed, 1153 insertions(+), 17 deletions(-)
create mode 100644 dlls/kernelbase/misc.c
diff --git a/dlls/kernelbase/Makefile.in b/dlls/kernelbase/Makefile.in
@ -22,67 +22,40 @@ index b9caed0..2beb34b 100644
+C_SRCS = \
+ misc.c
diff --git a/dlls/kernelbase/kernelbase.spec b/dlls/kernelbase/kernelbase.spec
index b9e95ca..8fdb80d 100644
index 53ed586..8fdb80d 100644
--- a/dlls/kernelbase/kernelbase.spec
+++ b/dlls/kernelbase/kernelbase.spec
@@ -1,53 +1,131 @@
-@ stub AccessCheck
-@ stub AccessCheckAndAuditAlarmW
-@ stub AccessCheckByType
@@ -1,3 +1,6 @@
+# On Windows 10 kernelbase contains the implementation and kernel32 is redirected
+# but this breaks some old applications which can't handle redirections.
+
+@ stdcall AccessCheck(ptr long long ptr ptr ptr ptr ptr) advapi32.AccessCheck
+@ stdcall AccessCheckAndAuditAlarmW(wstr ptr wstr wstr ptr long ptr long ptr ptr ptr) advapi32.AccessCheckAndAuditAlarmW
+@ stdcall AccessCheckByType(ptr ptr long long ptr long ptr ptr ptr ptr ptr) advapi32.AccessCheckByType
@ stub AccessCheckByTypeAndAuditAlarmW
@ stub AccessCheckByTypeResultList
@ stub AccessCheckByTypeResultListAndAuditAlarmByHandleW
@ stdcall AccessCheck(ptr long long ptr ptr ptr ptr ptr) advapi32.AccessCheck
@ stdcall AccessCheckAndAuditAlarmW(wstr ptr wstr wstr ptr long ptr long ptr ptr ptr) advapi32.AccessCheckAndAuditAlarmW
@ stdcall AccessCheckByType(ptr ptr long long ptr long ptr ptr ptr ptr ptr) advapi32.AccessCheckByType
@@ -7,6 +10,8 @@
@ stub AccessCheckByTypeResultListAndAuditAlarmW
@ stdcall AcquireSRWLockExclusive(ptr) kernel32.AcquireSRWLockExclusive
@ stdcall AcquireSRWLockShared(ptr) kernel32.AcquireSRWLockShared
-@ stub AddAccessAllowedAce
-@ stub AddAccessAllowedAceEx
-@ stub AddAccessAllowedObjectAce
-@ stub AddAccessDeniedAce
-@ stub AddAccessDeniedAceEx
-@ stub AddAccessDeniedObjectAce
-@ stub AddAce
-@ stub AddAuditAccessAce
-@ stub AddAuditAccessAceEx
-@ stub AddAuditAccessObjectAce
+@ stub AcquireStateLock
+@ stdcall ActivateActCtx(ptr ptr) kernel32.ActivateActCtx
+@ stdcall AddAccessAllowedAce(ptr long long ptr) advapi32.AddAccessAllowedAce
+@ stdcall AddAccessAllowedAceEx(ptr long long long ptr) advapi32.AddAccessAllowedAceEx
+@ stdcall AddAccessAllowedObjectAce(ptr long long long ptr ptr ptr) advapi32.AddAccessAllowedObjectAce
+@ stdcall AddAccessDeniedAce(ptr long long ptr) advapi32.AddAccessDeniedAce
+@ stdcall AddAccessDeniedAceEx(ptr long long long ptr) advapi32.AddAccessDeniedAceEx
+@ stdcall AddAccessDeniedObjectAce(ptr long long long ptr ptr ptr) advapi32.AddAccessDeniedObjectAce
+@ stdcall AddAce(ptr long long ptr long) advapi32.AddAce
+@ stdcall AddAuditAccessAce(ptr long long ptr long long) advapi32.AddAuditAccessAce
+@ stdcall AddAuditAccessAceEx(ptr long long long ptr long long) advapi32.AddAuditAccessAceEx
+@ stdcall AddAuditAccessObjectAce(ptr long long long ptr ptr ptr long long) advapi32.AddAuditAccessObjectAce
@ stdcall AddAccessAllowedAce(ptr long long ptr) advapi32.AddAccessAllowedAce
@ stdcall AddAccessAllowedAceEx(ptr long long long ptr) advapi32.AddAccessAllowedAceEx
@ stdcall AddAccessAllowedObjectAce(ptr long long long ptr ptr ptr) advapi32.AddAccessAllowedObjectAce
@@ -19,35 +24,108 @@
@ stdcall AddAuditAccessObjectAce(ptr long long long ptr ptr ptr long long) advapi32.AddAuditAccessObjectAce
@ stub AddDllDirectory
-@ stub AddMandatoryAce
-@ stub AdjustTokenGroups
-@ stub AdjustTokenPrivileges
-@ stub AllocateAndInitializeSid
-@ stub AllocateLocallyUniqueId
-@ stub AreAllAccessesGranted
-@ stub AreAnyAccessesGranted
+@ stdcall AddMandatoryAce(ptr long long long ptr) advapi32.AddMandatoryAce
@ stdcall AddMandatoryAce(ptr long long long ptr) advapi32.AddMandatoryAce
+@ stdcall AddRefActCtx(ptr) kernel32.AddRefActCtx
+@ stub AddResourceAttributeAce
+@ stub AddSIDToBoundaryDescriptor
+@ stub AddScopedPolicyIDAce
+@ stdcall AddVectoredContinueHandler(long ptr) kernel32.AddVectoredContinueHandler
+@ stdcall AddVectoredExceptionHandler(long ptr) kernel32.AddVectoredExceptionHandler
+@ stdcall AdjustTokenGroups(long long ptr long ptr ptr) advapi32.AdjustTokenGroups
+@ stdcall AdjustTokenPrivileges(long long ptr long ptr ptr) advapi32.AdjustTokenPrivileges
@ stdcall AdjustTokenGroups(long long ptr long ptr ptr) advapi32.AdjustTokenGroups
@ stdcall AdjustTokenPrivileges(long long ptr long ptr ptr) advapi32.AdjustTokenPrivileges
+@ stdcall AllocConsole() kernel32.AllocConsole
+@ stdcall AllocateAndInitializeSid(ptr long long long long long long long long long ptr) advapi32.AllocateAndInitializeSid
+@ stdcall AllocateLocallyUniqueId(ptr) advapi32.AllocateLocallyUniqueId
@ stdcall AllocateAndInitializeSid(ptr long long long long long long long long long ptr) advapi32.AllocateAndInitializeSid
@ stdcall AllocateLocallyUniqueId(ptr) advapi32.AllocateLocallyUniqueId
+@ stdcall AllocateUserPhysicalPages(long ptr ptr) kernel32.AllocateUserPhysicalPages
+@ stub AllocateUserPhysicalPagesNuma
+@ stub AppContainerDeriveSidFromMoniker
@ -105,8 +78,8 @@ index b9e95ca..8fdb80d 100644
+@ stub AppXReleaseAppXContext
+@ stub AppXUpdatePackageCapabilities
+@ stub ApplicationUserModelIdFromProductId
+@ stdcall AreAllAccessesGranted(long long) advapi32.AreAllAccessesGranted
+@ stdcall AreAnyAccessesGranted(long long) advapi32.AreAnyAccessesGranted
@ stdcall AreAllAccessesGranted(long long) advapi32.AreAllAccessesGranted
@ stdcall AreAnyAccessesGranted(long long) advapi32.AreAnyAccessesGranted
@ stdcall AreFileApisANSI() kernel32.AreFileApisANSI
+@ stub AreThereVisibleLogoffScriptsInternal
+@ stub AreThereVisibleShutdownScriptsInternal
@ -167,11 +140,10 @@ index b9e95ca..8fdb80d 100644
+@ stdcall CharUpperBuffW(wstr long) user32.CharUpperBuffW
+@ stdcall CharUpperW(wstr) user32.CharUpperW
@ stub CheckGroupPolicyEnabled
-@ stub CheckTokenMembership
+@ stub CheckIfStateChangeNotificationExists
+@ stdcall CheckRemoteDebuggerPresent(long ptr) kernel32.CheckRemoteDebuggerPresent
+@ stub CheckTokenCapability
+@ stdcall CheckTokenMembership(long ptr ptr) advapi32.CheckTokenMembership
@ stdcall CheckTokenMembership(long ptr ptr) advapi32.CheckTokenMembership
+@ stub CheckTokenMembershipEx
+@ stdcall ChrCmpIA(long long) shlwapi.ChrCmpIA
+@ stdcall ChrCmpIW(long long) shlwapi.ChrCmpIW
@ -203,17 +175,15 @@ index b9e95ca..8fdb80d 100644
@ stdcall ConnectNamedPipe(long ptr) kernel32.ConnectNamedPipe
+@ stdcall ContinueDebugEvent(long long long) kernel32.ContinueDebugEvent
@ stdcall ConvertDefaultLocale(long) kernel32.ConvertDefaultLocale
-@ stub ConvertToAutoInheritPrivateObjectSecurity
-@ stub CopySid
+@ stdcall ConvertFiberToThread() kernel32.ConvertFiberToThread
+@ stdcall ConvertThreadToFiber(ptr) kernel32.ConvertThreadToFiber
+@ stdcall ConvertThreadToFiberEx(ptr long) kernel32.ConvertThreadToFiberEx
+@ stdcall ConvertToAutoInheritPrivateObjectSecurity(ptr ptr ptr ptr long ptr) advapi32.ConvertToAutoInheritPrivateObjectSecurity
@ stdcall ConvertToAutoInheritPrivateObjectSecurity(ptr ptr ptr ptr long ptr) advapi32.ConvertToAutoInheritPrivateObjectSecurity
+@ stub CopyContext
+@ stub CopyFile2
+@ stdcall CopyFileExW(wstr wstr ptr ptr ptr long) kernel32.CopyFileExW
+@ stdcall CopyFileW(wstr wstr long) kernel32.CopyFileW
+@ stdcall CopySid(long ptr ptr) advapi32.CopySid
@ stdcall CopySid(long ptr ptr) advapi32.CopySid
+@ stdcall CreateActCtxW(ptr) kernel32.CreateActCtxW
+@ stub CreateAppContainerToken
+@ stub CreateBoundaryDescriptorW
@ -243,13 +213,10 @@ index b9e95ca..8fdb80d 100644
@ stdcall CreateMutexW(ptr long wstr) kernel32.CreateMutexW
@ stdcall CreateNamedPipeW(wstr long long long long long long ptr) kernel32.CreateNamedPipeW
@ stdcall CreatePipe(ptr ptr ptr long) kernel32.CreatePipe
-@ stub CreatePrivateObjectSecurity
-@ stub CreatePrivateObjectSecurityEx
-@ stub CreatePrivateObjectSecurityWithMultipleInheritance
+@ stub CreatePrivateNamespaceW
+@ stdcall CreatePrivateObjectSecurity(ptr ptr ptr long long ptr) advapi32.CreatePrivateObjectSecurity
+@ stdcall CreatePrivateObjectSecurityEx(ptr ptr ptr ptr long long long ptr) advapi32.CreatePrivateObjectSecurityEx
+@ stdcall CreatePrivateObjectSecurityWithMultipleInheritance(ptr ptr ptr ptr long long long long ptr) advapi32.CreatePrivateObjectSecurityWithMultipleInheritance
@ stdcall CreatePrivateObjectSecurity(ptr ptr ptr long long ptr) advapi32.CreatePrivateObjectSecurity
@ stdcall CreatePrivateObjectSecurityEx(ptr ptr ptr ptr long long long ptr) advapi32.CreatePrivateObjectSecurityEx
@ stdcall CreatePrivateObjectSecurityWithMultipleInheritance(ptr ptr ptr ptr long long long long ptr) advapi32.CreatePrivateObjectSecurityWithMultipleInheritance
+@ stdcall CreateProcessA(str str ptr ptr long long ptr str ptr ptr) kernel32.CreateProcessA
+@ stdcall CreateProcessAsUserA(long str str ptr ptr long long ptr str ptr ptr) advapi32.CreateProcessAsUserA
+@ stdcall CreateProcessAsUserW(long wstr wstr ptr ptr long long ptr wstr ptr ptr) advapi32.CreateProcessAsUserW
@ -258,8 +225,7 @@ index b9e95ca..8fdb80d 100644
+@ stdcall CreateProcessW(wstr wstr ptr ptr long long ptr wstr ptr ptr) kernel32.CreateProcessW
@ stdcall CreateRemoteThread(long ptr long ptr long long ptr) kernel32.CreateRemoteThread
@ stub CreateRemoteThreadEx
-@ stub CreateRestrictedToken
+@ stdcall CreateRestrictedToken(long long long ptr long ptr long ptr ptr) advapi32.CreateRestrictedToken
@ stdcall CreateRestrictedToken(long long long ptr long ptr long ptr ptr) advapi32.CreateRestrictedToken
@ stdcall CreateSemaphoreExW(ptr long long wstr long long) kernel32.CreateSemaphoreExW
+@ stdcall CreateSemaphoreW(ptr long long wstr) kernel32.CreateSemaphoreW
+@ stub CreateStateAtom
@ -275,9 +241,8 @@ index b9e95ca..8fdb80d 100644
@ stdcall CreateTimerQueue() kernel32.CreateTimerQueue
@ stdcall CreateTimerQueueTimer(ptr long ptr ptr long long long) kernel32.CreateTimerQueueTimer
@ stdcall CreateWaitableTimerExW(ptr wstr long long) kernel32.CreateWaitableTimerExW
-@ stub CreateWellKnownSid
+@ stdcall CreateWaitableTimerW(ptr long wstr) kernel32.CreateWaitableTimerW
+@ stdcall CreateWellKnownSid(long ptr ptr ptr) advapi32.CreateWellKnownSid
@ stdcall CreateWellKnownSid(long ptr ptr ptr) advapi32.CreateWellKnownSid
+@ stub CtrlRoutine
+@ stdcall DeactivateActCtx(long ptr) kernel32.DeactivateActCtx
+@ stdcall DebugActiveProcess(long) kernel32.DebugActiveProcess
@ -287,10 +252,9 @@ index b9e95ca..8fdb80d 100644
+@ stub DecodeRemotePointer
@ stub DecodeSystemPointer
@ stdcall DefineDosDeviceW(long wstr wstr) kernel32.DefineDosDeviceW
-@ stub DeleteAce
+@ stdcall DelayLoadFailureHook(str str) kernel32.DelayLoadFailureHook
+@ stub DelayLoadFailureHookLookup
+@ stdcall DeleteAce(ptr long) advapi32.DeleteAce
@ stdcall DeleteAce(ptr long) advapi32.DeleteAce
+@ stub DeleteBoundaryDescriptor
@ stdcall DeleteCriticalSection(ptr) kernel32.DeleteCriticalSection
+@ stdcall DeleteFiber(ptr) kernel32.DeleteFiber
@ -304,8 +268,7 @@ index b9e95ca..8fdb80d 100644
@ stdcall DeleteTimerQueueEx(long long) kernel32.DeleteTimerQueueEx
@ stdcall DeleteTimerQueueTimer(long long long) kernel32.DeleteTimerQueueTimer
@ stdcall DeleteVolumeMountPointW(wstr) kernel32.DeleteVolumeMountPointW
-@ stub DestroyPrivateObjectSecurity
+@ stdcall DestroyPrivateObjectSecurity(ptr) advapi32.DestroyPrivateObjectSecurity
@ stdcall DestroyPrivateObjectSecurity(ptr) advapi32.DestroyPrivateObjectSecurity
@ stdcall DeviceIoControl(long long ptr long ptr long ptr ptr) kernel32.DeviceIoControl
+@ stub DisablePredefinedHandleTableInternal
@ stdcall DisableThreadLibraryCalls(long) kernel32.DisableThreadLibraryCalls
@ -325,11 +288,9 @@ index b9e95ca..8fdb80d 100644
+@ stub DsUnBindW
+@ stub DsWriteNgcKeyW
@ stdcall DuplicateHandle(long long long ptr long long long) kernel32.DuplicateHandle
-@ stub DuplicateToken
-@ stub DuplicateTokenEx
+@ stub DuplicateStateContainerHandle
+@ stdcall DuplicateToken(long long ptr) advapi32.DuplicateToken
+@ stdcall DuplicateTokenEx(long long ptr long long ptr) advapi32.DuplicateTokenEx
@ stdcall DuplicateToken(long long ptr) advapi32.DuplicateToken
@ stdcall DuplicateTokenEx(long long ptr long long ptr) advapi32.DuplicateTokenEx
+@ stub EmptyWorkingSet
@ stdcall EncodePointer(ptr) kernel32.EncodePointer
+@ stub EncodeRemotePointer
@ -370,10 +331,8 @@ index b9e95ca..8fdb80d 100644
+@ stub EnumerateStateAtomValues
+@ stub EnumerateStateContainerItems
@ stub EqualDomainSid
-@ stub EqualPrefixSid
-@ stub EqualSid
+@ stdcall EqualPrefixSid(ptr ptr) advapi32.EqualPrefixSid
+@ stdcall EqualSid(ptr ptr) advapi32.EqualSid
@ stdcall EqualPrefixSid(ptr ptr) advapi32.EqualPrefixSid
@ stdcall EqualSid(ptr ptr) advapi32.EqualSid
+@ stdcall EscapeCommFunction(long long) kernel32.EscapeCommFunction
+@ stdcall EventActivityIdControl(long ptr) advapi32.EventActivityIdControl
+@ stdcall EventEnabled(int64 ptr) advapi32.EventEnabled
@ -406,8 +365,7 @@ index b9e95ca..8fdb80d 100644
@ stdcall FindFirstFileExW(wstr long ptr long ptr long) kernel32.FindFirstFileExW
+@ stub FindFirstFileNameW
@ stdcall FindFirstFileW(wstr ptr) kernel32.FindFirstFileW
-@ stub FindFirstFreeAce
+@ stdcall FindFirstFreeAce(ptr ptr) advapi32.FindFirstFreeAce
@ stdcall FindFirstFreeAce(ptr ptr) advapi32.FindFirstFreeAce
+@ stub FindFirstStreamW
@ stdcall FindFirstVolumeW(ptr long) kernel32.FindFirstVolumeW
@ stub FindNLSString
@ -446,18 +404,15 @@ index b9e95ca..8fdb80d 100644
@ stdcall FreeLibraryAndExitThread(long long) kernel32.FreeLibraryAndExitThread
@ stdcall FreeLibraryWhenCallbackReturns(ptr ptr) kernel32.FreeLibraryWhenCallbackReturns
@ stdcall FreeResource(long) kernel32.FreeResource
-@ stub FreeSid
+@ stdcall FreeSid(ptr) advapi32.FreeSid
@ stdcall FreeSid(ptr) advapi32.FreeSid
+@ stdcall FreeUserPhysicalPages(long ptr ptr) kernel32.FreeUserPhysicalPages
+@ stdcall GenerateConsoleCtrlEvent(long long) kernel32.GenerateConsoleCtrlEvent
+@ stub GenerateGPNotificationInternal
@ stdcall GetACP() kernel32.GetACP
-@ stub GetAce
-@ stub GetAclInformation
+@ stdcall GetAcceptLanguagesA(ptr ptr) shlwapi.GetAcceptLanguagesA
+@ stdcall GetAcceptLanguagesW(ptr ptr) shlwapi.GetAcceptLanguagesW
+@ stdcall GetAce(ptr long ptr) advapi32.GetAce
+@ stdcall GetAclInformation(ptr ptr long long) advapi32.GetAclInformation
@ stdcall GetAce(ptr long ptr) advapi32.GetAce
@ stdcall GetAclInformation(ptr ptr long long) advapi32.GetAclInformation
+@ stub GetAdjustObjectAttributesForPrivateNamespaceRoutine
+@ stub GetAlternatePackageRoots
+@ stub GetAppContainerAce
@ -546,16 +501,15 @@ index b9e95ca..8fdb80d 100644
@ stdcall GetEnvironmentStrings() kernel32.GetEnvironmentStrings
@ stdcall GetEnvironmentStringsA() kernel32.GetEnvironmentStringsA
@ stdcall GetEnvironmentStringsW() kernel32.GetEnvironmentStringsW
@@ -228,21 +485,38 @@
@@ -228,6 +485,7 @@
@ stdcall GetFileAttributesExW(wstr long ptr) kernel32.GetFileAttributesExW
@ stdcall GetFileAttributesW(wstr) kernel32.GetFileAttributesW
@ stdcall GetFileInformationByHandle(long ptr) kernel32.GetFileInformationByHandle
+@ stdcall GetFileInformationByHandleEx(long long ptr long) kernel32.GetFileInformationByHandleEx
@ stdcall GetFileMUIInfo(long wstr ptr ptr) kernel32.GetFileMUIInfo
@ stdcall GetFileMUIPath(long wstr wstr ptr ptr ptr ptr) kernel32.GetFileMUIPath
-@ stub GetFileSecurityW
+@ stdcall GetFileSecurityW(wstr long ptr long ptr) advapi32.GetFileSecurityW
@ stdcall GetFileSize(long ptr) kernel32.GetFileSize
@ stdcall GetFileSecurityW(wstr long ptr long ptr) advapi32.GetFileSecurityW
@@ -235,12 +493,28 @@
@ stdcall GetFileSizeEx(long ptr) kernel32.GetFileSizeEx
@ stdcall GetFileTime(long ptr ptr ptr) kernel32.GetFileTime
@ stdcall GetFileType(long) kernel32.GetFileType
@ -576,19 +530,15 @@ index b9e95ca..8fdb80d 100644
+@ stub GetGPOListInternalW
+@ stdcall GetGeoInfoW(long long ptr long long) kernel32.GetGeoInfoW
@ stdcall GetHandleInformation(long ptr) kernel32.GetHandleInformation
-@ stub GetKernelObjectSecurity
+@ stub GetHivePath
+@ stub GetIntegratedDisplaySize
+@ stdcall GetKernelObjectSecurity(long long ptr long ptr) advapi32.GetKernelObjectSecurity
@ stdcall GetKernelObjectSecurity(long long ptr long ptr) advapi32.GetKernelObjectSecurity
+@ stub GetLargePageMinimum
+@ stdcall GetLargestConsoleWindowSize(long) kernel32.GetLargestConsoleWindowSize
@ stdcall GetLastError() kernel32.GetLastError
-@ stub GetLengthSid
+@ stdcall GetLengthSid(ptr) advapi32.GetLengthSid
@ stdcall GetLengthSid(ptr) advapi32.GetLengthSid
@ stdcall GetLocalTime(ptr) kernel32.GetLocalTime
@ stdcall GetLocaleInfoA(long long ptr long) kernel32.GetLocaleInfoA
@ stdcall GetLocaleInfoEx(wstr long ptr long) kernel32.GetLocaleInfoEx
@@ -254,98 +528,221 @@
@@ -254,35 +528,102 @@
@ stdcall GetLogicalProcessorInformationEx(long ptr ptr) kernel32.GetLogicalProcessorInformationEx
@ stdcall GetLongPathNameA(str long long) kernel32.GetLongPathNameA
@ stdcall GetLongPathNameW(wstr long long) kernel32.GetLongPathNameW
@ -657,8 +607,7 @@ index b9e95ca..8fdb80d 100644
+@ stdcall GetPhysicallyInstalledSystemMemory(ptr) kernel32.GetPhysicallyInstalledSystemMemory
+@ stub GetPreviousFgPolicyRefreshInfoInternal
@ stdcall GetPriorityClass(long) kernel32.GetPriorityClass
-@ stub GetPrivateObjectSecurity
+@ stdcall GetPrivateObjectSecurity(ptr long ptr long ptr) advapi32.GetPrivateObjectSecurity
@ stdcall GetPrivateObjectSecurity(ptr long ptr long ptr) advapi32.GetPrivateObjectSecurity
@ stdcall GetProcAddress(long str) kernel32.GetProcAddress
+@ stub GetProcAddressForCaller
+@ stub GetProcessDefaultCpuSets
@ -687,32 +636,22 @@ index b9e95ca..8fdb80d 100644
+@ stub GetPublisherRootFolder
@ stdcall GetQueuedCompletionStatus(long ptr ptr ptr long) kernel32.GetQueuedCompletionStatus
@ stub GetQueuedCompletionStatusEx
-@ stub GetSecurityDescriptorControl
-@ stub GetSecurityDescriptorDacl
-@ stub GetSecurityDescriptorGroup
-@ stub GetSecurityDescriptorLength
-@ stub GetSecurityDescriptorOwner
+@ stub GetRegistryExtensionFlags
+@ stub GetRoamingLastObservedChangeTime
+@ stdcall GetSecurityDescriptorControl(ptr ptr ptr) advapi32.GetSecurityDescriptorControl
+@ stdcall GetSecurityDescriptorDacl(ptr ptr ptr ptr) advapi32.GetSecurityDescriptorDacl
+@ stdcall GetSecurityDescriptorGroup(ptr ptr ptr) advapi32.GetSecurityDescriptorGroup
+@ stdcall GetSecurityDescriptorLength(ptr) advapi32.GetSecurityDescriptorLength
+@ stdcall GetSecurityDescriptorOwner(ptr ptr ptr) advapi32.GetSecurityDescriptorOwner
@ stdcall GetSecurityDescriptorControl(ptr ptr ptr) advapi32.GetSecurityDescriptorControl
@ stdcall GetSecurityDescriptorDacl(ptr ptr ptr ptr) advapi32.GetSecurityDescriptorDacl
@ stdcall GetSecurityDescriptorGroup(ptr ptr ptr) advapi32.GetSecurityDescriptorGroup
@@ -290,62 +631,118 @@
@ stdcall GetSecurityDescriptorOwner(ptr ptr ptr) advapi32.GetSecurityDescriptorOwner
@ stub GetSecurityDescriptorRMControl
-@ stub GetSecurityDescriptorSacl
+@ stdcall GetSecurityDescriptorSacl(ptr ptr ptr ptr) advapi32.GetSecurityDescriptorSacl
@ stdcall GetSecurityDescriptorSacl(ptr ptr ptr ptr) advapi32.GetSecurityDescriptorSacl
+@ stub GetSerializedAtomBytes
+@ stub GetSharedLocalFolder
@ stdcall GetShortPathNameW(wstr ptr long) kernel32.GetShortPathNameW
-@ stub GetSidIdentifierAuthority
-@ stub GetSidLengthRequired
-@ stub GetSidSubAuthority
-@ stub GetSidSubAuthorityCount
+@ stdcall GetSidIdentifierAuthority(ptr) advapi32.GetSidIdentifierAuthority
+@ stdcall GetSidLengthRequired(long) advapi32.GetSidLengthRequired
+@ stdcall GetSidSubAuthority(ptr long) advapi32.GetSidSubAuthority
+@ stdcall GetSidSubAuthorityCount(ptr) advapi32.GetSidSubAuthorityCount
@ stdcall GetSidIdentifierAuthority(ptr) advapi32.GetSidIdentifierAuthority
@ stdcall GetSidLengthRequired(long) advapi32.GetSidLengthRequired
@ stdcall GetSidSubAuthority(ptr long) advapi32.GetSidSubAuthority
@ stdcall GetSidSubAuthorityCount(ptr) advapi32.GetSidSubAuthorityCount
+@ stub GetStagedPackageOrigin
+@ stub GetStagedPackagePathByFullName
@ stdcall GetStartupInfoW(ptr) kernel32.GetStartupInfoW
@ -780,8 +719,7 @@ index b9e95ca..8fdb80d 100644
+@ stdcall GetTimeFormatW(long long ptr wstr ptr long) kernel32.GetTimeFormatW
@ stdcall GetTimeZoneInformation(ptr) kernel32.GetTimeZoneInformation
@ stdcall GetTimeZoneInformationForYear(long ptr ptr) kernel32.GetTimeZoneInformationForYear
-@ stub GetTokenInformation
+@ stdcall GetTokenInformation(long long ptr long ptr) advapi32.GetTokenInformation
@ stdcall GetTokenInformation(long long ptr long ptr) advapi32.GetTokenInformation
+@ stdcall GetTraceEnableFlags(int64) advapi32.GetTraceEnableFlags
+@ stdcall GetTraceEnableLevel(int64) advapi32.GetTraceEnableLevel
+@ stdcall -ret64 GetTraceLoggerHandle(ptr) advapi32.GetTraceLoggerHandle
@ -806,9 +744,8 @@ index b9e95ca..8fdb80d 100644
@ stdcall GetVolumeInformationW(wstr ptr long ptr ptr ptr ptr long) kernel32.GetVolumeInformationW
+@ stdcall GetVolumeNameForVolumeMountPointW(wstr ptr long) kernel32.GetVolumeNameForVolumeMountPointW
@ stdcall GetVolumePathNameW(wstr ptr long) kernel32.GetVolumePathNameW
-@ stub GetWindowsAccountDomainSid
+@ stdcall GetVolumePathNamesForVolumeNameW(wstr ptr long ptr) kernel32.GetVolumePathNamesForVolumeNameW
+@ stdcall GetWindowsAccountDomainSid(ptr ptr ptr) advapi32.GetWindowsAccountDomainSid
@ stdcall GetWindowsAccountDomainSid(ptr ptr ptr) advapi32.GetWindowsAccountDomainSid
@ stdcall GetWindowsDirectoryA(ptr long) kernel32.GetWindowsDirectoryA
@ stdcall GetWindowsDirectoryW(ptr long) kernel32.GetWindowsDirectoryW
+@ stdcall GetWriteWatch(long ptr long ptr ptr ptr) kernel32.GetWriteWatch
@ -827,24 +764,19 @@ index b9e95ca..8fdb80d 100644
@ stdcall HeapUnlock(long) kernel32.HeapUnlock
@ stdcall HeapValidate(long long ptr) kernel32.HeapValidate
@ stdcall HeapWalk(long ptr) kernel32.HeapWalk
-@ stub ImpersonateAnonymousToken
-@ stub ImpersonateLoggedOnUser
-@ stub ImpersonateNamedPipeClient
-@ stub ImpersonateSelf
-@ stub InitializeAcl
+@ stdcall IdnToAscii(long wstr long ptr long) kernel32.IdnToAscii
+@ stdcall IdnToNameprepUnicode(long wstr long ptr long) kernel32.IdnToNameprepUnicode
+@ stdcall IdnToUnicode(long wstr long ptr long) kernel32.IdnToUnicode
+@ stdcall ImpersonateAnonymousToken(long) advapi32.ImpersonateAnonymousToken
+@ stdcall ImpersonateLoggedOnUser(long) advapi32.ImpersonateLoggedOnUser
+@ stdcall ImpersonateNamedPipeClient(long) advapi32.ImpersonateNamedPipeClient
+@ stdcall ImpersonateSelf(long) advapi32.ImpersonateSelf
@ stdcall ImpersonateAnonymousToken(long) advapi32.ImpersonateAnonymousToken
@ stdcall ImpersonateLoggedOnUser(long) advapi32.ImpersonateLoggedOnUser
@ stdcall ImpersonateNamedPipeClient(long) advapi32.ImpersonateNamedPipeClient
@ stdcall ImpersonateSelf(long) advapi32.ImpersonateSelf
+@ stub IncrementPackageStatusVersion
+@ stdcall InitOnceBeginInitialize(ptr long ptr ptr) kernel32.InitOnceBeginInitialize
+@ stdcall InitOnceComplete(ptr long ptr) kernel32.InitOnceComplete
+@ stdcall InitOnceExecuteOnce(ptr ptr ptr ptr) kernel32.InitOnceExecuteOnce
+@ stdcall InitOnceInitialize(ptr) kernel32.InitOnceInitialize
+@ stdcall InitializeAcl(ptr long long) advapi32.InitializeAcl
@ stdcall InitializeAcl(ptr long long) advapi32.InitializeAcl
+@ stdcall InitializeConditionVariable(ptr) kernel32.InitializeConditionVariable
+@ stub InitializeContext
@ stdcall InitializeCriticalSection(ptr) kernel32.InitializeCriticalSection
@ -854,10 +786,8 @@ index b9e95ca..8fdb80d 100644
+@ stub InitializeProcessForWsWatch
@ stdcall InitializeSListHead(ptr) kernel32.InitializeSListHead
@ stdcall InitializeSRWLock(ptr) kernel32.InitializeSRWLock
-@ stub InitializeSecurityDescriptor
-@ stub InitializeSid
+@ stdcall InitializeSecurityDescriptor(ptr long) advapi32.InitializeSecurityDescriptor
+@ stdcall InitializeSid(ptr ptr long) advapi32.InitializeSid
@ stdcall InitializeSecurityDescriptor(ptr long) advapi32.InitializeSecurityDescriptor
@ stdcall InitializeSid(ptr ptr long) advapi32.InitializeSid
+@ stub InitializeSynchronizationBarrier
+@ stub InstallELAMCertificateInfo
+@ stdcall -arch=i386 InterlockedCompareExchange(ptr long long) kernel32.InterlockedCompareExchange
@ -874,7 +804,7 @@ index b9e95ca..8fdb80d 100644
@ stub InternalLcidToName
@ stub Internal_EnumCalendarInfo
@ stub Internal_EnumDateFormats
@@ -386,38 +803,101 @@
@@ -386,33 +803,96 @@
@ stub Internal_EnumSystemLocales
@ stub Internal_EnumTimeFormats
@ stub Internal_EnumUILanguages
@ -915,23 +845,18 @@ index b9e95ca..8fdb80d 100644
+@ stub IsSyncForegroundPolicyRefresh
+@ stdcall IsThreadAFiber() kernel32.IsThreadAFiber
@ stdcall IsThreadpoolTimerSet(ptr) kernel32.IsThreadpoolTimerSet
-@ stub IsTokenRestricted
-@ stub IsValidAcl
+@ stub IsTimeZoneRedirectionEnabled
+@ stdcall IsTokenRestricted(long) advapi32.IsTokenRestricted
+@ stdcall IsValidAcl(ptr) advapi32.IsValidAcl
@ stdcall IsTokenRestricted(long) advapi32.IsTokenRestricted
@ stdcall IsValidAcl(ptr) advapi32.IsValidAcl
@ stdcall IsValidCodePage(long) kernel32.IsValidCodePage
@ stdcall IsValidLanguageGroup(long long) kernel32.IsValidLanguageGroup
@ stdcall IsValidLocale(long long) kernel32.IsValidLocale
@ stdcall IsValidLocaleName(wstr) kernel32.IsValidLocaleName
+@ stub IsValidNLSVersion
@ stub IsValidRelativeSecurityDescriptor
-@ stub IsValidSecurityDescriptor
-@ stub IsValidSid
-@ stub IsWellKnownSid
+@ stdcall IsValidSecurityDescriptor(ptr) advapi32.IsValidSecurityDescriptor
+@ stdcall IsValidSid(ptr) advapi32.IsValidSid
+@ stdcall IsWellKnownSid(ptr long) advapi32.IsWellKnownSid
@ stdcall IsValidSecurityDescriptor(ptr) advapi32.IsValidSecurityDescriptor
@ stdcall IsValidSid(ptr) advapi32.IsValidSid
@ stdcall IsWellKnownSid(ptr long) advapi32.IsWellKnownSid
@ stdcall IsWow64Process(ptr ptr) kernel32.IsWow64Process
+@ stdcall K32EmptyWorkingSet(long) kernel32.K32EmptyWorkingSet
+@ stdcall K32EnumDeviceDrivers(ptr long ptr) kernel32.K32EnumDeviceDrivers
@ -975,16 +900,9 @@ index b9e95ca..8fdb80d 100644
+@ stdcall LoadLibraryW(wstr) kernel32.LoadLibraryW
+@ stub LoadPackagedLibrary
@ stdcall LoadResource(long long) kernel32.LoadResource
-@ stub LoadStringA
+@ stdcall LoadStringA(long long ptr long) user32.LoadStringA
@ stdcall LoadStringA(long long ptr long) user32.LoadStringA
@ stub LoadStringBaseExW
@ stub LoadStringByReference
-@ stub LoadStringW
+@ stdcall LoadStringW(long long ptr long) user32.LoadStringW
@ stdcall LocalAlloc(long long) kernel32.LocalAlloc
@ stdcall LocalFileTimeToFileTime(ptr ptr) kernel32.LocalFileTimeToFileTime
@ stdcall LocalFree(long) kernel32.LocalFree
@@ -425,17 +905,27 @@
@@ -425,6 +905,7 @@
@ stdcall LocalReAlloc(long long long) kernel32.LocalReAlloc
@ stdcall LocalUnlock(long) kernel32.LocalUnlock
@ stdcall LocaleNameToLCID(wstr long) kernel32.LocaleNameToLCID
@ -992,13 +910,10 @@ index b9e95ca..8fdb80d 100644
@ stdcall LockFile(long long long long long) kernel32.LockFile
@ stdcall LockFileEx(long long long long long ptr) kernel32.LockFileEx
@ stdcall LockResource(long) kernel32.LockResource
-@ stub MakeAbsoluteSD
+@ stdcall MakeAbsoluteSD(ptr ptr ptr ptr ptr ptr ptr ptr ptr ptr ptr) advapi32.MakeAbsoluteSD
@@ -432,10 +913,19 @@
@ stub MakeAbsoluteSD2
-@ stub MakeSelfRelativeSD
-@ stub MapGenericMask
+@ stdcall MakeSelfRelativeSD(ptr ptr ptr) advapi32.MakeSelfRelativeSD
+@ stdcall MapGenericMask(ptr ptr) advapi32.MapGenericMask
@ stdcall MakeSelfRelativeSD(ptr ptr ptr) advapi32.MakeSelfRelativeSD
@ stdcall MapGenericMask(ptr ptr) advapi32.MapGenericMask
+@ stub MapPredefinedHandleInternal
+@ stub MapUserPhysicalPages
@ stdcall MapViewOfFile(long long long long long) kernel32.MapViewOfFile
@ -1022,14 +937,10 @@ index b9e95ca..8fdb80d 100644
+@ stdcall NormalizeString(long wstr long ptr long) kernel32.NormalizeString
@ stub NotifyMountMgr
@ stub NotifyRedirectedStringChange
-@ stub ObjectCloseAuditAlarmW
-@ stub ObjectDeleteAuditAlarmW
-@ stub ObjectOpenAuditAlarmW
-@ stub ObjectPrivilegeAuditAlarmW
+@ stdcall ObjectCloseAuditAlarmW(wstr ptr long) advapi32.ObjectCloseAuditAlarmW
+@ stdcall ObjectDeleteAuditAlarmW(wstr ptr long) advapi32.ObjectDeleteAuditAlarmW
+@ stdcall ObjectOpenAuditAlarmW(wstr ptr wstr wstr ptr long long long ptr long long ptr) advapi32.ObjectOpenAuditAlarmW
+@ stdcall ObjectPrivilegeAuditAlarmW(wstr ptr long long ptr long) advapi32.ObjectPrivilegeAuditAlarmW
@ stdcall ObjectCloseAuditAlarmW(wstr ptr long) advapi32.ObjectCloseAuditAlarmW
@ stdcall ObjectDeleteAuditAlarmW(wstr ptr long) advapi32.ObjectDeleteAuditAlarmW
@ stdcall ObjectOpenAuditAlarmW(wstr ptr wstr wstr ptr long long long ptr long long ptr) advapi32.ObjectOpenAuditAlarmW
@ stdcall ObjectPrivilegeAuditAlarmW(wstr ptr long long ptr long) advapi32.ObjectPrivilegeAuditAlarmW
+@ stub OfferVirtualMemory
@ stdcall OpenEventA(long long str) kernel32.OpenEventA
@ stdcall OpenEventW(long long wstr) kernel32.OpenEventW
@ -1042,8 +953,7 @@ index b9e95ca..8fdb80d 100644
+@ stub OpenPackageInfoByFullNameForUser
+@ stub OpenPrivateNamespaceW
@ stdcall OpenProcess(long long long) kernel32.OpenProcess
-@ stub OpenProcessToken
+@ stdcall OpenProcessToken(long long ptr) advapi32.OpenProcessToken
@ stdcall OpenProcessToken(long long ptr) advapi32.OpenProcessToken
@ stub OpenRegKey
@ stdcall OpenSemaphoreW(long long wstr) kernel32.OpenSemaphoreW
+@ stub OpenState
@ -1052,8 +962,7 @@ index b9e95ca..8fdb80d 100644
+@ stub OpenStateExplicitForUserSid
+@ stub OpenStateExplicitForUserSidString
@ stdcall OpenThread(long long long) kernel32.OpenThread
-@ stub OpenThreadToken
+@ stdcall OpenThreadToken(long long long ptr) advapi32.OpenThreadToken
@ stdcall OpenThreadToken(long long long ptr) advapi32.OpenThreadToken
@ stdcall OpenWaitableTimerW(long long wstr) kernel32.OpenWaitableTimerW
@ stdcall OutputDebugStringA(str) kernel32.OutputDebugStringA
@ stdcall OutputDebugStringW(wstr) kernel32.OutputDebugStringW
@ -1213,12 +1122,10 @@ index b9e95ca..8fdb80d 100644
+@ stub PerfStopProvider
+@ stub PoolPerAppKeyStateInternal
@ stdcall PostQueuedCompletionStatus(long long ptr ptr) kernel32.PostQueuedCompletionStatus
-@ stub PrivilegeCheck
-@ stub PrivilegedServiceAuditAlarmW
+@ stub PrefetchVirtualMemory
+@ stub PrivCopyFileExW
+@ stdcall PrivilegeCheck(ptr ptr ptr) advapi32.PrivilegeCheck
+@ stdcall PrivilegedServiceAuditAlarmW(wstr wstr long ptr long) advapi32.PrivilegedServiceAuditAlarmW
@ stdcall PrivilegeCheck(ptr ptr ptr) advapi32.PrivilegeCheck
@ stdcall PrivilegedServiceAuditAlarmW(wstr wstr long ptr long) advapi32.PrivilegedServiceAuditAlarmW
@ stdcall ProcessIdToSessionId(long ptr) kernel32.ProcessIdToSessionId
+@ stub ProductIdFromPackageFamilyName
+@ stub PsmCreateKey
@ -1401,8 +1308,7 @@ index b9e95ca..8fdb80d 100644
@ stub ResolveLocaleName
+@ stdcall RestoreLastError(long) kernel32.RestoreLastError
@ stdcall ResumeThread(long) kernel32.ResumeThread
-@ stub RevertToSelf
+@ stdcall RevertToSelf() advapi32.RevertToSelf
@ stdcall RevertToSelf() advapi32.RevertToSelf
+@ stub RsopLoggingEnabledInternal
+@ stub SHCoCreateInstance
+@ stdcall SHExpandEnvironmentStringsA(str ptr long) kernel32.ExpandEnvironmentStringsA
@ -1441,8 +1347,7 @@ index b9e95ca..8fdb80d 100644
+@ stdcall ScrollConsoleScreenBufferW(long ptr ptr ptr ptr) kernel32.ScrollConsoleScreenBufferW
+@ stdcall SearchPathA(str str str long ptr ptr) kernel32.SearchPathA
@ stdcall SearchPathW(wstr wstr wstr long ptr ptr) kernel32.SearchPathW
-@ stub SetAclInformation
+@ stdcall SetAclInformation(ptr ptr long long) advapi32.SetAclInformation
@ stdcall SetAclInformation(ptr ptr long long) advapi32.SetAclInformation
+@ stub SetCachedSigningLevel
@ stdcall SetCalendarInfoW(long long long wstr) kernel32.SetCalendarInfoW
+@ stub SetClientDynamicTimeZoneInformation
@ -1479,31 +1384,27 @@ index b9e95ca..8fdb80d 100644
@ stdcall SetEndOfFile(long) kernel32.SetEndOfFile
@ stub SetEnvironmentStringsW
@ stdcall SetEnvironmentVariableA(str str) kernel32.SetEnvironmentVariableA
@@ -519,85 +1397,257 @@
@@ -519,6 +1397,7 @@
@ stdcall SetFileAttributesA(str long) kernel32.SetFileAttributesA
@ stdcall SetFileAttributesW(wstr long) kernel32.SetFileAttributesW
@ stdcall SetFileInformationByHandle(long long ptr long) kernel32.SetFileInformationByHandle
+@ stub SetFileIoOverlappedRange
@ stdcall SetFilePointer(long long ptr long) kernel32.SetFilePointer
@ stdcall SetFilePointerEx(long int64 ptr long) kernel32.SetFilePointerEx
-@ stub SetFileSecurityW
+@ stdcall SetFileSecurityW(wstr long ptr) advapi32.SetFileSecurityW
@ stdcall SetFileTime(long ptr ptr ptr) kernel32.SetFileTime
@ stdcall SetFileSecurityW(wstr long ptr) advapi32.SetFileSecurityW
@@ -526,7 +1405,10 @@
@ stdcall SetFileValidData(ptr int64) kernel32.SetFileValidData
@ stdcall SetHandleCount(long) kernel32.SetHandleCount
@ stdcall SetHandleInformation(long long long) kernel32.SetHandleInformation
-@ stub SetKernelObjectSecurity
+@ stub SetIsDeveloperModeEnabled
+@ stub SetIsSideloadingEnabled
+@ stdcall SetKernelObjectSecurity(long long ptr) advapi32.SetKernelObjectSecurity
@ stdcall SetKernelObjectSecurity(long long ptr) advapi32.SetKernelObjectSecurity
+@ stub SetLastConsoleEventActive
@ stdcall SetLastError(long) kernel32.SetLastError
@ stdcall SetLocalTime(ptr) kernel32.SetLocalTime
@ stdcall SetLocaleInfoW(long long wstr) kernel32.SetLocaleInfoW
@ stdcall SetNamedPipeHandleState(long ptr ptr ptr) kernel32.SetNamedPipeHandleState
@ stdcall SetPriorityClass(long long) kernel32.SetPriorityClass
-@ stub SetPrivateObjectSecurity
+@ stdcall SetPrivateObjectSecurity(long ptr ptr ptr long) advapi32.SetPrivateObjectSecurity
@@ -535,7 +1417,17 @@
@ stdcall SetPrivateObjectSecurity(long ptr ptr ptr long) advapi32.SetPrivateObjectSecurity
@ stub SetPrivateObjectSecurityEx
@ stub SetProcessAffinityUpdateMode
+@ stub SetProcessDefaultCpuSets
@ -1518,17 +1419,12 @@ index b9e95ca..8fdb80d 100644
+@ stub SetProtectedPolicy
+@ stub SetRoamingLastObservedChangeTime
@ stub SetSecurityAccessMask
-@ stub SetSecurityDescriptorControl
-@ stub SetSecurityDescriptorDacl
-@ stub SetSecurityDescriptorGroup
-@ stub SetSecurityDescriptorOwner
+@ stdcall SetSecurityDescriptorControl(ptr long long) advapi32.SetSecurityDescriptorControl
+@ stdcall SetSecurityDescriptorDacl(ptr long ptr long) advapi32.SetSecurityDescriptorDacl
+@ stdcall SetSecurityDescriptorGroup(ptr ptr long) advapi32.SetSecurityDescriptorGroup
+@ stdcall SetSecurityDescriptorOwner(ptr ptr long) advapi32.SetSecurityDescriptorOwner
@ stdcall SetSecurityDescriptorControl(ptr long long) advapi32.SetSecurityDescriptorControl
@ stdcall SetSecurityDescriptorDacl(ptr long ptr long) advapi32.SetSecurityDescriptorDacl
@@ -543,61 +1435,219 @@
@ stdcall SetSecurityDescriptorOwner(ptr ptr long) advapi32.SetSecurityDescriptorOwner
@ stub SetSecurityDescriptorRMControl
-@ stub SetSecurityDescriptorSacl
+@ stdcall SetSecurityDescriptorSacl(ptr long ptr long) advapi32.SetSecurityDescriptorSacl
@ stdcall SetSecurityDescriptorSacl(ptr long ptr long) advapi32.SetSecurityDescriptorSacl
+@ stub SetStateVersion
@ stdcall SetStdHandle(long long) kernel32.SetStdHandle
@ stub SetStdHandleEx
@ -1547,8 +1443,7 @@ index b9e95ca..8fdb80d 100644
@ stdcall SetThreadPriorityBoost(long long) kernel32.SetThreadPriorityBoost
+@ stub SetThreadSelectedCpuSets
@ stdcall SetThreadStackGuarantee(ptr) kernel32.SetThreadStackGuarantee
-@ stub SetThreadToken
+@ stdcall SetThreadToken(ptr ptr) advapi32.SetThreadToken
@ stdcall SetThreadToken(ptr ptr) advapi32.SetThreadToken
+@ stdcall SetThreadUILanguage(long) kernel32.SetThreadUILanguage
@ stub SetThreadpoolStackInformation
@ stdcall SetThreadpoolThreadMaximum(ptr long) kernel32.SetThreadpoolThreadMaximum
@ -1556,10 +1451,9 @@ index b9e95ca..8fdb80d 100644
@ stdcall SetThreadpoolTimer(ptr ptr long long) kernel32.SetThreadpoolTimer
+@ stub SetThreadpoolTimerEx
@ stdcall SetThreadpoolWait(ptr long ptr) kernel32.SetThreadpoolWait
-@ stub SetTokenInformation
+@ stub SetThreadpoolWaitEx
+@ stdcall SetTimeZoneInformation(ptr) kernel32.SetTimeZoneInformation
+@ stdcall SetTokenInformation(long long ptr long) advapi32.SetTokenInformation
@ stdcall SetTokenInformation(long long ptr long) advapi32.SetTokenInformation
+@ stdcall SetUnhandledExceptionFilter(ptr) kernel32.SetUnhandledExceptionFilter
+@ stdcall SetUserGeoID(long) kernel32.SetUserGeoID
@ stdcall SetWaitableTimer(long ptr long ptr ptr long) kernel32.SetWaitableTimer
@ -1876,31 +1770,17 @@ index 6b6ead2..7c2a9d1 100644
422 stdcall -noname SHGlobalCounterCreateNamedA(str long)
423 stdcall -noname SHGlobalCounterCreateNamedW(wstr long)
diff --git a/tools/make_specfiles b/tools/make_specfiles
index b0a7b0a..43d12c3 100755
index 774687e..7c097c4 100755
--- a/tools/make_specfiles
+++ b/tools/make_specfiles
@@ -214,7 +214,6 @@ my @dll_groups =
"api-ms-win-core-wow64-l1-1-0",
"api-ms-win-core-xstate-l2-1-0",
"api-ms-win-core-errorhandling-l1-1-2",
- "kernelbase",
],
@@ -232,6 +232,7 @@ my @dll_groups =
[
"kernel32",
@@ -231,6 +230,13 @@ my @dll_groups =
"api-ms-win-core-processthreads-l1-1-1",
],
[
+ "kernel32",
+ "advapi32",
"advapi32",
+ "shlwapi",
+ "user32",
+ "kernelbase",
+ ],
+ [
"ole32",
"api-ms-win-downlevel-ole32-l1-1-0",
"api-ms-win-core-com-l1-1-0",
"user32",
"kernelbase",
],
--
2.7.1

View File

@ -4,5 +4,4 @@ Fixes: Set NamedPipeState to FILE_PIPE_CLOSING_STATE on broken pipe in NtQueryIn
FIxes: Return proper status codes when NtReadFile/NtWriteFile is called on closed (but not disconnected) pipe
Depends: rpcrt4-Pipe_Transport
Depends: server-Desktop_Refcount
Depends: ntdll-FSCTL_PIPE_LISTEN
Category: stable

View File

@ -1,25 +0,0 @@
From 2e8e5ea86b19ca4f95c0f07b79c6f201b61f7b09 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Tue, 15 Mar 2016 17:41:24 +0100
Subject: msi: Fix stack alignment in CUSTOMPROC_wrapper.
Spotted by Dmitry Timoshkov.
---
dlls/msi/custom.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/dlls/msi/custom.c b/dlls/msi/custom.c
index 4e934bd..35a1b5c 100644
--- a/dlls/msi/custom.c
+++ b/dlls/msi/custom.c
@@ -539,6 +539,7 @@ __ASM_GLOBAL_FUNC( CUSTOMPROC_wrapper,
__ASM_CFI(".cfi_rel_offset %ebp,0\n\t")
"movl %esp,%ebp\n\t"
__ASM_CFI(".cfi_def_cfa_register %ebp\n\t")
+ "subl $4,%esp\n\t"
"pushl 12(%ebp)\n\t"
"movl 8(%ebp),%eax\n\t"
"call *%eax\n\t"
--
2.7.1

View File

@ -1,55 +0,0 @@
From 82da5b425ae379825eecd6a3437a2d2e6b88890e Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Sun, 13 Mar 2016 20:28:15 +0100
Subject: ntdll/tests: Add tests for iosb.Status value after pending
FSCTL_PIPE_LISTEN call.
---
dlls/ntdll/tests/pipe.c | 20 +++++++++++++++++---
1 file changed, 17 insertions(+), 3 deletions(-)
diff --git a/dlls/ntdll/tests/pipe.c b/dlls/ntdll/tests/pipe.c
index 7c30408..5b19ad3 100644
--- a/dlls/ntdll/tests/pipe.c
+++ b/dlls/ntdll/tests/pipe.c
@@ -277,10 +277,9 @@ static void test_overlapped(void)
ok(!res, "NtCreateNamedPipeFile returned %x\n", res);
memset(&iosb, 0x55, sizeof(iosb));
-
-/* try with event and apc */
res = listen_pipe(hPipe, hEvent, &iosb, TRUE);
ok(res == STATUS_PENDING, "NtFsControlFile returned %x\n", res);
+ ok(U(iosb).Status == 0x55555555, "iosb.Status got changed to %x\n", U(iosb).Status);
hClient = CreateFileW(testpipe, GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, 0, 0);
ok(hClient != INVALID_HANDLE_VALUE, "can't open pipe, GetLastError: %x\n", GetLastError());
@@ -294,9 +293,24 @@ static void test_overlapped(void)
ok(ioapc_called, "IOAPC didn't run\n");
- CloseHandle(hEvent);
CloseHandle(hPipe);
CloseHandle(hClient);
+
+ res = create_pipe(&hPipe, FILE_SHARE_READ | FILE_SHARE_WRITE, 0 /* OVERLAPPED */);
+ ok(!res, "NtCreateNamedPipeFile returned %x\n", res);
+
+ hClient = CreateFileW(testpipe, GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, 0, 0);
+ ok(hClient != INVALID_HANDLE_VALUE, "can't open pipe, GetLastError: %x\n", GetLastError());
+
+ memset(&iosb, 0x55, sizeof(iosb));
+ res = listen_pipe(hPipe, hEvent, &iosb, TRUE);
+ ok(res == STATUS_PIPE_CONNECTED, "NtFsControlFile returned %x\n", res);
+ todo_wine ok(U(iosb).Status == 0x55555555, "iosb.Status got changed to %x\n", U(iosb).Status);
+
+ CloseHandle(hPipe);
+ CloseHandle(hClient);
+
+ CloseHandle(hEvent);
}
static BOOL userapc_called;
--
2.7.1

View File

@ -1,90 +0,0 @@
From 8617c09525a481c382abe15d7a6c9386e80f49ae Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sun, 13 Mar 2016 20:38:10 +0100
Subject: kernel32/tests: Add additional tests for overlapped handling of
CreateNamedPipe.
---
dlls/kernel32/tests/pipe.c | 59 ++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)
diff --git a/dlls/kernel32/tests/pipe.c b/dlls/kernel32/tests/pipe.c
index 60336f8..77381f2 100644
--- a/dlls/kernel32/tests/pipe.c
+++ b/dlls/kernel32/tests/pipe.c
@@ -2091,6 +2091,64 @@ static void test_overlapped(void)
CloseHandle(thread);
}
+static void test_overlapped_error(void)
+{
+ HANDLE pipe, file, event;
+ DWORD err, numbytes;
+ OVERLAPPED overlapped;
+ BOOL ret;
+
+ event = CreateEventA(NULL, TRUE, FALSE, NULL);
+ ok(event != NULL, "CreateEventA failed with %u\n", GetLastError());
+
+ pipe = CreateNamedPipeA(PIPENAME, PIPE_ACCESS_DUPLEX | FILE_FLAG_OVERLAPPED,
+ PIPE_TYPE_MESSAGE | PIPE_READMODE_MESSAGE | PIPE_WAIT,
+ 1, 1024, 1024, NMPWAIT_WAIT_FOREVER, NULL);
+ ok(pipe != INVALID_HANDLE_VALUE, "CreateNamedPipe failed with %u\n", GetLastError());
+
+ memset(&overlapped, 0, sizeof(overlapped));
+ overlapped.hEvent = event;
+ ret = ConnectNamedPipe(pipe, &overlapped);
+ err = GetLastError();
+ ok(ret == FALSE, "ConnectNamedPipe succeeded\n");
+ ok(err == ERROR_IO_PENDING, "expected ERROR_IO_PENDING, got %u\n", err);
+
+ file = CreateFileA(PIPENAME, GENERIC_READ | GENERIC_WRITE, 0, NULL,
+ OPEN_EXISTING, FILE_FLAG_OVERLAPPED, 0);
+ ok(file != INVALID_HANDLE_VALUE, "CreateFile failed with %u\n", GetLastError());
+
+ numbytes = 0xdeadbeef;
+ ret = GetOverlappedResult(pipe, &overlapped, &numbytes, TRUE);
+ ok(ret == TRUE, "GetOverlappedResult failed\n");
+ ok(numbytes == 0, "expected 0, got %u\n", numbytes);
+ ok(overlapped.Internal == STATUS_SUCCESS, "expected STATUS_SUCCESS, got %08lx\n", overlapped.Internal);
+
+ CloseHandle(file);
+ CloseHandle(pipe);
+
+ pipe = CreateNamedPipeA(PIPENAME, PIPE_ACCESS_DUPLEX | FILE_FLAG_OVERLAPPED,
+ PIPE_TYPE_MESSAGE | PIPE_READMODE_MESSAGE | PIPE_WAIT,
+ 1, 1024, 1024, NMPWAIT_WAIT_FOREVER, NULL);
+ ok(pipe != INVALID_HANDLE_VALUE, "CreateNamedPipe failed with %u\n", GetLastError());
+
+ file = CreateFileA(PIPENAME, GENERIC_READ | GENERIC_WRITE, 0, NULL,
+ OPEN_EXISTING, FILE_FLAG_OVERLAPPED, 0);
+ ok(file != INVALID_HANDLE_VALUE, "CreateFile failed with %u\n", GetLastError());
+
+ memset(&overlapped, 0, sizeof(overlapped));
+ overlapped.hEvent = event;
+ ret = ConnectNamedPipe(pipe, &overlapped);
+ err = GetLastError();
+ ok(ret == FALSE, "ConnectNamedPipe succeeded\n");
+ ok(err == ERROR_PIPE_CONNECTED, "expected ERROR_PIPE_CONNECTED, got %u\n", err);
+ todo_wine ok(overlapped.Internal == STATUS_PENDING, "expected STATUS_PENDING, got %08lx\n", overlapped.Internal);
+
+ CloseHandle(file);
+ CloseHandle(pipe);
+
+ CloseHandle(event);
+}
+
static void test_NamedPipeHandleState(void)
{
HANDLE server, client;
@@ -2372,6 +2430,7 @@ START_TEST(pipe)
test_CloseHandle();
test_impersonation();
test_overlapped();
+ test_overlapped_error();
test_NamedPipeHandleState();
test_readfileex_pending();
}
--
2.7.1

View File

@ -1,62 +0,0 @@
From 98592ff61773a99e32b58e9da7df0fd221bcb9c0 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Sun, 13 Mar 2016 20:42:03 +0100
Subject: ntdll: Do not update iosb.Status after FSCTL_PIPE_LISTEN call.
---
dlls/kernel32/tests/pipe.c | 2 +-
dlls/ntdll/file.c | 2 +-
dlls/ntdll/tests/pipe.c | 4 ++--
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/dlls/kernel32/tests/pipe.c b/dlls/kernel32/tests/pipe.c
index 77381f2..a896843 100644
--- a/dlls/kernel32/tests/pipe.c
+++ b/dlls/kernel32/tests/pipe.c
@@ -2141,7 +2141,7 @@ static void test_overlapped_error(void)
err = GetLastError();
ok(ret == FALSE, "ConnectNamedPipe succeeded\n");
ok(err == ERROR_PIPE_CONNECTED, "expected ERROR_PIPE_CONNECTED, got %u\n", err);
- todo_wine ok(overlapped.Internal == STATUS_PENDING, "expected STATUS_PENDING, got %08lx\n", overlapped.Internal);
+ ok(overlapped.Internal == STATUS_PENDING, "expected STATUS_PENDING, got %08lx\n", overlapped.Internal);
CloseHandle(file);
CloseHandle(pipe);
diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c
index 46fea51..f9e7b3e 100644
--- a/dlls/ntdll/file.c
+++ b/dlls/ntdll/file.c
@@ -1802,7 +1802,7 @@ NTSTATUS WINAPI NtFsControlFile(HANDLE handle, HANDLE event, PIO_APC_ROUTINE apc
default:
status = server_ioctl_file( handle, event, apc, apc_context, io, code,
in_buffer, in_size, out_buffer, out_size );
- break;
+ return status;
}
if (status != STATUS_PENDING) io->u.Status = status;
diff --git a/dlls/ntdll/tests/pipe.c b/dlls/ntdll/tests/pipe.c
index 5b19ad3..77c451b 100644
--- a/dlls/ntdll/tests/pipe.c
+++ b/dlls/ntdll/tests/pipe.c
@@ -305,7 +305,7 @@ static void test_overlapped(void)
memset(&iosb, 0x55, sizeof(iosb));
res = listen_pipe(hPipe, hEvent, &iosb, TRUE);
ok(res == STATUS_PIPE_CONNECTED, "NtFsControlFile returned %x\n", res);
- todo_wine ok(U(iosb).Status == 0x55555555, "iosb.Status got changed to %x\n", U(iosb).Status);
+ ok(U(iosb).Status == 0x55555555, "iosb.Status got changed to %x\n", U(iosb).Status);
CloseHandle(hPipe);
CloseHandle(hClient);
@@ -388,7 +388,7 @@ static void test_alertable(void)
todo_wine ok(res == STATUS_CANCELLED, "NtFsControlFile returned %x\n", res);
ok(userapc_called, "user apc didn't run\n");
- todo_wine ok(U(iosb).Status == 0x55555555, "iosb.Status got changed to %x\n", U(iosb).Status);
+ ok(U(iosb).Status == 0x55555555, "iosb.Status got changed to %x\n", U(iosb).Status);
ok(WaitForSingleObjectEx(hEvent, 0, TRUE) == WAIT_TIMEOUT, "hEvent signaled\n");
ok(!ioapc_called, "IOAPC ran\n");
--
2.7.1

View File

@ -1 +0,0 @@
Fixes: Do not update iosb.Status after FSCTL_PIPE_LISTEN call

View File

@ -1,4 +1,4 @@
From 0a7a9cfce718a28567b87a5bf6776632af629d41 Mon Sep 17 00:00:00 2001
From 9976a678df5baaa8722f5be1b49962de5bbad9bb Mon Sep 17 00:00:00 2001
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
Date: Thu, 16 Jan 2014 20:56:49 -0700
Subject: ntdll: Add support for junction point creation.
@ -12,7 +12,7 @@ Subject: ntdll: Add support for junction point creation.
create mode 100644 include/ntifs.h
diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c
index fecec13..d8bb01b 100644
index 93863ac..8c44514 100644
--- a/dlls/ntdll/file.c
+++ b/dlls/ntdll/file.c
@@ -103,12 +103,14 @@
@ -30,7 +30,7 @@ index fecec13..d8bb01b 100644
#define SECSPERDAY 86400
#define SECS_1601_TO_1970 ((369 * 365 + 89) * (ULONGLONG)SECSPERDAY)
@@ -1655,6 +1657,76 @@ NTSTATUS WINAPI SYSCALL(NtDeviceIoControlFile)(HANDLE handle, HANDLE event,
@@ -1652,6 +1654,76 @@ NTSTATUS WINAPI SYSCALL(NtDeviceIoControlFile)(HANDLE handle, HANDLE event,
}
@ -107,7 +107,7 @@ index fecec13..d8bb01b 100644
/**************************************************************************
* NtFsControlFile [NTDLL.@]
* ZwFsControlFile [NTDLL.@]
@@ -1803,11 +1875,30 @@ NTSTATUS WINAPI SYSCALL(NtFsControlFile)(HANDLE handle, HANDLE event, PIO_APC_RO
@@ -1805,11 +1877,30 @@ NTSTATUS WINAPI SYSCALL(NtFsControlFile)(HANDLE handle, HANDLE event, PIO_APC_RO
}
break;
}
@ -135,11 +135,11 @@ index fecec13..d8bb01b 100644
+ break;
+ }
+
case FSCTL_PIPE_LISTEN:
case FSCTL_PIPE_WAIT:
default:
status = server_ioctl_file( handle, event, apc, apc_context, io, code,
diff --git a/dlls/ntdll/tests/file.c b/dlls/ntdll/tests/file.c
index 55e34ad..71e10c2 100644
index fcbf8df..644065f 100644
--- a/dlls/ntdll/tests/file.c
+++ b/dlls/ntdll/tests/file.c
@@ -37,6 +37,7 @@
@ -150,7 +150,7 @@ index 55e34ad..71e10c2 100644
#ifndef IO_COMPLETION_ALL_ACCESS
#define IO_COMPLETION_ALL_ACCESS 0x001F0003
@@ -4273,6 +4274,98 @@ static void test_query_ea(void)
@@ -4240,6 +4241,98 @@ static void test_query_ea(void)
#undef EA_BUFFER_SIZE
}
@ -249,17 +249,17 @@ index 55e34ad..71e10c2 100644
START_TEST(file)
{
HMODULE hkernel32 = GetModuleHandleA("kernel32.dll");
@@ -4332,4 +4425,5 @@ START_TEST(file)
@@ -4299,4 +4392,5 @@ START_TEST(file)
test_query_volume_information_file();
test_query_attribute_information_file();
test_query_ea();
+ test_junction_points();
}
diff --git a/include/Makefile.in b/include/Makefile.in
index c5563a2..1e60e08 100644
index ac10691..03c3776 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -493,6 +493,7 @@ SRCDIR_INCLUDES = \
@@ -508,6 +508,7 @@ HEADER_SRCS = \
ntddstor.h \
ntdef.h \
ntdsapi.h \
@ -326,5 +326,5 @@ index 0000000..db07c28
+
+#endif /* __WINE_NTIFS_H */
--
2.6.1
2.7.1

View File

@ -51,7 +51,7 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "dad56c7dc6ed0421e282e97f196bd195749d12ff"
echo "aaddf1365a3371263827206eedf1464a83562c00"
}
# Show version information
@ -188,7 +188,6 @@ patch_enable_all ()
enable_mpr_WNetGetUniversalNameW="$1"
enable_mscoree_CorValidateImage="$1"
enable_mshtml_HTMLLocation_put_hash="$1"
enable_msi_Fix_Stack_Alignment="$1"
enable_msidb_Implementation="$1"
enable_msvcr120__SetWinRTOutOfMemoryExceptionCallback="$1"
enable_msvcrt_Math_Precision="$1"
@ -205,7 +204,6 @@ patch_enable_all ()
enable_ntdll_DllRedirects="$1"
enable_ntdll_EtwRegisterTraceGuids="$1"
enable_ntdll_Exception="$1"
enable_ntdll_FSCTL_PIPE_LISTEN="$1"
enable_ntdll_FileDispositionInformation="$1"
enable_ntdll_FileFsFullSizeInformation="$1"
enable_ntdll_FileFsVolumeInformation="$1"
@ -325,7 +323,6 @@ patch_enable_all ()
enable_user32_Dialog_Owner="$1"
enable_user32_Dialog_Paint_Event="$1"
enable_user32_DrawTextExW="$1"
enable_user32_FlashWindowEx="$1"
enable_user32_GetSystemMetrics="$1"
enable_user32_Invalidate_Key_State="$1"
enable_user32_ListBox_Size="$1"
@ -374,7 +371,6 @@ patch_enable_all ()
enable_winex11_CandidateWindowPos="$1"
enable_winex11_Clipboard_HTML="$1"
enable_winex11_DefaultDisplayFrequency="$1"
enable_winex11_Desktop_Resolution="$1"
enable_winex11_Window_Groups="$1"
enable_winex11_Window_Style="$1"
enable_winex11_XEMBED="$1"
@ -741,9 +737,6 @@ patch_enable ()
mshtml-HTMLLocation_put_hash)
enable_mshtml_HTMLLocation_put_hash="$2"
;;
msi-Fix_Stack_Alignment)
enable_msi_Fix_Stack_Alignment="$2"
;;
msidb-Implementation)
enable_msidb_Implementation="$2"
;;
@ -792,9 +785,6 @@ patch_enable ()
ntdll-Exception)
enable_ntdll_Exception="$2"
;;
ntdll-FSCTL_PIPE_LISTEN)
enable_ntdll_FSCTL_PIPE_LISTEN="$2"
;;
ntdll-FileDispositionInformation)
enable_ntdll_FileDispositionInformation="$2"
;;
@ -1152,9 +1142,6 @@ patch_enable ()
user32-DrawTextExW)
enable_user32_DrawTextExW="$2"
;;
user32-FlashWindowEx)
enable_user32_FlashWindowEx="$2"
;;
user32-GetSystemMetrics)
enable_user32_GetSystemMetrics="$2"
;;
@ -1299,9 +1286,6 @@ patch_enable ()
winex11-DefaultDisplayFrequency)
enable_winex11_DefaultDisplayFrequency="$2"
;;
winex11-Desktop_Resolution)
enable_winex11_Desktop_Resolution="$2"
;;
winex11-Window_Groups)
enable_winex11_Window_Groups="$2"
;;
@ -2242,16 +2226,12 @@ if test "$enable_ntdll_ApiSetQueryApiSetPresence" -eq 1; then
fi
if test "$enable_kernel32_Named_Pipe" -eq 1; then
if test "$enable_ntdll_FSCTL_PIPE_LISTEN" -gt 1; then
abort "Patchset ntdll-FSCTL_PIPE_LISTEN disabled, but kernel32-Named_Pipe depends on that."
fi
if test "$enable_rpcrt4_Pipe_Transport" -gt 1; then
abort "Patchset rpcrt4-Pipe_Transport disabled, but kernel32-Named_Pipe depends on that."
fi
if test "$enable_server_Desktop_Refcount" -gt 1; then
abort "Patchset server-Desktop_Refcount disabled, but kernel32-Named_Pipe depends on that."
fi
enable_ntdll_FSCTL_PIPE_LISTEN=1
enable_rpcrt4_Pipe_Transport=1
enable_server_Desktop_Refcount=1
fi
@ -4076,22 +4056,6 @@ if test "$enable_kernel32_LocaleNameToLCID" -eq 1; then
) >> "$patchlist"
fi
# Patchset ntdll-FSCTL_PIPE_LISTEN
# |
# | Modified files:
# | * dlls/kernel32/tests/pipe.c, dlls/ntdll/file.c, dlls/ntdll/tests/pipe.c
# |
if test "$enable_ntdll_FSCTL_PIPE_LISTEN" -eq 1; then
patch_apply ntdll-FSCTL_PIPE_LISTEN/0001-ntdll-tests-Add-tests-for-iosb.Status-value-after-pe.patch
patch_apply ntdll-FSCTL_PIPE_LISTEN/0002-kernel32-tests-Add-additional-tests-for-overlapped-h.patch
patch_apply ntdll-FSCTL_PIPE_LISTEN/0003-ntdll-Do-not-update-iosb.Status-after-FSCTL_PIPE_LIS.patch
(
echo '+ { "Sebastian Lackner", "ntdll/tests: Add tests for iosb.Status value after pending FSCTL_PIPE_LISTEN call.", 1 },';
echo '+ { "Michael Müller", "kernel32/tests: Add additional tests for overlapped handling of CreateNamedPipe.", 1 },';
echo '+ { "Sebastian Lackner", "ntdll: Do not update iosb.Status after FSCTL_PIPE_LISTEN call.", 1 },';
) >> "$patchlist"
fi
# Patchset rpcrt4-Pipe_Transport
# |
# | Modified files:
@ -4133,7 +4097,7 @@ fi
# Patchset kernel32-Named_Pipe
# |
# | This patchset has the following (direct or indirect) dependencies:
# | * ntdll-FSCTL_PIPE_LISTEN, rpcrt4-Pipe_Transport, server-Desktop_Refcount
# | * rpcrt4-Pipe_Transport, server-Desktop_Refcount
# |
# | This patchset fixes the following Wine bugs:
# | * [#17195] Support for named pipe message mode (Linux only)
@ -4465,18 +4429,6 @@ if test "$enable_mshtml_HTMLLocation_put_hash" -eq 1; then
) >> "$patchlist"
fi
# Patchset msi-Fix_Stack_Alignment
# |
# | Modified files:
# | * dlls/msi/custom.c
# |
if test "$enable_msi_Fix_Stack_Alignment" -eq 1; then
patch_apply msi-Fix_Stack_Alignment/0001-msi-Fix-stack-alignment-in-CUSTOMPROC_wrapper.patch
(
echo '+ { "Sebastian Lackner", "msi: Fix stack alignment in CUSTOMPROC_wrapper.", 1 },';
) >> "$patchlist"
fi
# Patchset msidb-Implementation
# |
# | Modified files:
@ -5309,7 +5261,7 @@ fi
# Patchset ntdll-WriteWatches
# |
# | This patchset has the following (direct or indirect) dependencies:
# | * ntdll-FSCTL_PIPE_LISTEN, rpcrt4-Pipe_Transport, server-Desktop_Refcount, kernel32-Named_Pipe, ws2_32-WriteWatches
# | * rpcrt4-Pipe_Transport, server-Desktop_Refcount, kernel32-Named_Pipe, ws2_32-WriteWatches
# |
# | Modified files:
# | * dlls/kernel32/tests/virtual.c, dlls/ntdll/file.c
@ -5955,7 +5907,7 @@ fi
# Patchset server-Pipe_ObjectName
# |
# | This patchset has the following (direct or indirect) dependencies:
# | * ntdll-FSCTL_PIPE_LISTEN, rpcrt4-Pipe_Transport, server-Desktop_Refcount, kernel32-Named_Pipe
# | * rpcrt4-Pipe_Transport, server-Desktop_Refcount, kernel32-Named_Pipe
# |
# | Modified files:
# | * dlls/ntdll/tests/om.c, server/named_pipe.c, server/object.c, server/object.h
@ -6744,18 +6696,6 @@ if test "$enable_user32_DrawTextExW" -eq 1; then
) >> "$patchlist"
fi
# Patchset user32-FlashWindowEx
# |
# | Modified files:
# | * dlls/user32/win.c
# |
if test "$enable_user32_FlashWindowEx" -eq 1; then
patch_apply user32-FlashWindowEx/0001-user32-Avoid-dereferencing-NULL-pointer-in-a-trace.patch
(
echo '+ { "Dmitry Timoshkov", "user32: Avoid dereferencing NULL pointer in a trace.", 1 },';
) >> "$patchlist"
fi
# Patchset user32-GetSystemMetrics
# |
# | This patchset fixes the following Wine bugs:
@ -7106,10 +7046,8 @@ fi
# | * dlls/windowscodecs/pngformat.c
# |
if test "$enable_windowscodecs_PNG_Fixes" -eq 1; then
patch_apply windowscodecs-PNG_Fixes/0001-windowscodecs-Fix-a-copy-paste-mistake.patch
patch_apply windowscodecs-PNG_Fixes/0002-windowscodecs-Allocate-correct-amount-of-memory-for-.patch
patch_apply windowscodecs-PNG_Fixes/0001-windowscodecs-Allocate-correct-amount-of-memory-for-.patch
(
echo '+ { "Dmitry Timoshkov", "windowscodecs: Fix a copy/paste mistake.", 1 },';
echo '+ { "Dmitry Timoshkov", "windowscodecs: Allocate correct amount of memory for PNG image data.", 1 },';
) >> "$patchlist"
fi
@ -7460,21 +7398,6 @@ if test "$enable_winex11_DefaultDisplayFrequency" -eq 1; then
) >> "$patchlist"
fi
# Patchset winex11-Desktop_Resolution
# |
# | This patchset fixes the following Wine bugs:
# | * [#32979] Allow 320x240 as supported resolution in desktop mode
# |
# | Modified files:
# | * dlls/winex11.drv/desktop.c
# |
if test "$enable_winex11_Desktop_Resolution" -eq 1; then
patch_apply winex11-Desktop_Resolution/0001-winex11-Add-320x240-as-supported-resolution-in-deskt.patch
(
echo '+ { "Michael Müller", "winex11: Add 320x240 as supported resolution in desktop mode.", 1 },';
) >> "$patchlist"
fi
# Patchset winex11-Window_Groups
# |
# | This patchset fixes the following Wine bugs:

View File

@ -1,34 +0,0 @@
From 57462a28a49782e3ef8b0efefab99d336b7d67a2 Mon Sep 17 00:00:00 2001
From: Dmitry Timoshkov <dmitry@baikal.ru>
Date: Thu, 31 Mar 2016 10:09:03 +0800
Subject: user32: Avoid dereferencing NULL pointer in a trace.
---
dlls/user32/win.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/dlls/user32/win.c b/dlls/user32/win.c
index 33aedbd..43ab5ed 100644
--- a/dlls/user32/win.c
+++ b/dlls/user32/win.c
@@ -3472,7 +3472,7 @@ BOOL WINAPI FlashWindowEx( PFLASHWINFO pfinfo )
{
WND *wndPtr;
- TRACE( "%p\n", pfinfo->hwnd );
+ TRACE( "%p\n", pfinfo );
if (!pfinfo)
{
@@ -3485,7 +3485,7 @@ BOOL WINAPI FlashWindowEx( PFLASHWINFO pfinfo )
SetLastError( ERROR_INVALID_PARAMETER );
return FALSE;
}
- FIXME( "%p - semi-stub\n", pfinfo );
+ FIXME( "%p - semi-stub\n", pfinfo->hwnd );
if (IsIconic( pfinfo->hwnd ))
{
--
2.7.1

View File

@ -1,25 +0,0 @@
From 976652bfa10c79b935b7061243b1561d6dc0e605 Mon Sep 17 00:00:00 2001
From: Dmitry Timoshkov <dmitry@baikal.ru>
Date: Wed, 6 Apr 2016 17:50:48 +0800
Subject: windowscodecs: Fix a copy/paste mistake.
---
dlls/windowscodecs/pngformat.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/windowscodecs/pngformat.c b/dlls/windowscodecs/pngformat.c
index 4f5cb94..cd9165b 100644
--- a/dlls/windowscodecs/pngformat.c
+++ b/dlls/windowscodecs/pngformat.c
@@ -532,7 +532,7 @@ static HRESULT WINAPI PngDecoder_Initialize(IWICBitmapDecoder *iface, IStream *p
}
This->end_info = ppng_create_info_struct(This->png_ptr);
- if (!This->info_ptr)
+ if (!This->end_info)
{
ppng_destroy_read_struct(&This->png_ptr, &This->info_ptr, NULL);
This->png_ptr = NULL;
--
2.7.1

View File

@ -1,27 +0,0 @@
From 268ba3b1b3d37eed28e68ec6a64c568d8de7cde2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Thu, 31 Mar 2016 22:33:14 +0200
Subject: winex11: Add 320x240 as supported resolution in desktop mode.
---
dlls/winex11.drv/desktop.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/dlls/winex11.drv/desktop.c b/dlls/winex11.drv/desktop.c
index 72916c8..034d7f3 100644
--- a/dlls/winex11.drv/desktop.c
+++ b/dlls/winex11.drv/desktop.c
@@ -37,8 +37,8 @@ static unsigned int dd_mode_count;
static unsigned int max_width;
static unsigned int max_height;
-static const unsigned int widths[] = {320, 400, 512, 640, 800, 1024, 1152, 1280, 1280, 1400, 1600};
-static const unsigned int heights[] = {200, 300, 384, 480, 600, 768, 864, 960, 1024, 1050, 1200};
+static const unsigned int widths[] = {320, 320, 400, 512, 640, 800, 1024, 1152, 1280, 1280, 1400, 1600};
+static const unsigned int heights[] = {200, 240, 300, 384, 480, 600, 768, 864, 960, 1024, 1050, 1200};
#define NUM_DESKTOP_MODES (sizeof(widths) / sizeof(widths[0]))
#define _NET_WM_STATE_REMOVE 0
--
2.7.1

View File

@ -1 +0,0 @@
Fixes: [32979] Allow 320x240 as supported resolution in desktop mode