Compare commits

..

45 Commits

Author SHA1 Message Date
Sebastian Lackner
dc86f5c543 Release 1.7.54. 2015-11-01 00:16:04 +01:00
Sebastian Lackner
d2e9fa96e2 ntdll-SystemHandleInformation: Fix a possible memory corruption. 2015-10-31 23:36:39 +01:00
Sebastian Lackner
d9bb5a1e45 Added patch to implement SystemHandleInformation info class. 2015-10-31 22:29:13 +01:00
Sebastian Lackner
d4e3581847 Updated server-FileEndOfFileInformation patchset, growing a memory mapped file should still work. 2015-10-31 21:12:40 +01:00
Sebastian Lackner
4be7c872c3 Added patch to implement kernel32.GetConsoleFontSize. 2015-10-31 18:39:31 +01:00
Sebastian Lackner
896b3398f1 Added patch for SetConsoleKeyShortcuts stub function. 2015-10-31 17:54:21 +01:00
Sebastian Lackner
9ad85e9d6f Added patch to fix multiple issues in widl typelib generation. 2015-10-31 17:47:59 +01:00
Sebastian Lackner
a2714839b3 Added patch to zero out returned stats when IEnumSTATSTG::Next reaches end of enumeration. 2015-10-31 17:33:07 +01:00
Sebastian Lackner
85d50ecc2a Added patch for SfcGetNextProtectedFile stub function. 2015-10-31 16:59:04 +01:00
Sebastian Lackner
2e4d11137f Added patch for SetCoalescableTimer stub function. 2015-10-31 16:52:00 +01:00
Sebastian Lackner
b03c54797e Added patch to improve INetFwAuthorizedApplication::get_ProcessImageFileName stub. 2015-10-31 16:43:16 +01:00
Sebastian Lackner
5ad2c41098 ddraw-Write_Vtable: Add reference to bug report. 2015-10-31 16:37:01 +01:00
Sebastian Lackner
0488823205 Added patch to use close_handle instead of NtClose for internal memory management functions. 2015-10-31 03:32:37 +01:00
Sebastian Lackner
fd66b3bced ntdll-Virtual_Memory_Stack: Disable patchset, it has no effect when optimization is enabled. 2015-10-31 03:32:27 +01:00
Sebastian Lackner
d2f012b3d1 Added patch to pass '-read_only_relocs suppress' to the linker on OSX and enable patchset to use Nt* function wrappers. 2015-10-30 23:48:00 +01:00
Sebastian Lackner
7e1bf8aca0 Rebase against cbaab82d086e36dacaa22c6adf80f9114bb820fb. 2015-10-30 18:01:22 +01:00
Sebastian Lackner
f8627a6f02 ntdll-WriteWatches: Remove todo_wine in kernel32/virtual tests. 2015-10-30 01:01:13 +01:00
Sebastian Lackner
693e189c24 Added patch to fix build failure (introduced by makefile rewrite). 2015-10-29 22:01:33 +01:00
Sebastian Lackner
5acbd17da2 Rebase against 54633e3956e6b3c4d8ebbd5d721efa294e9602fb. 2015-10-29 20:12:02 +01:00
Sebastian Lackner
d014e899bc Added patch to implement hal.KeQueryPerformanceCounter. 2015-10-28 22:54:22 +01:00
Sebastian Lackner
397a31ae04 ntoskrnl-DriverTest: Always call IoCompleteRequest in driver functions. 2015-10-28 21:51:03 +01:00
Sebastian Lackner
2668c19b7f Rebase against 79c59085b1b1f487e91c2695028dd3d1d257a468. 2015-10-28 20:21:10 +01:00
Sebastian Lackner
2c0e907a4a Rebase against 28b916b26eceb35a071e9aad76da1fbbaa857ba1. 2015-10-27 20:53:46 +01:00
Sebastian Lackner
fb56e8d212 ws2_32-TransmitFile: Remove reference to upstream bug, main patches are already upstream. 2015-10-26 22:00:24 +01:00
Sebastian Lackner
22c57980db Added patches for memory allocation cleanup in gdiplus functions. 2015-10-26 21:59:15 +01:00
Sebastian Lackner
4c11394828 Rebase against 12111d8c3b897df92fabc1c1a81567477952e9b1. 2015-10-26 17:47:03 +01:00
Sebastian Lackner
f151e1f36f d3dx9_36-GetShaderSemantics: Use proper defines in shader code (thanks Christian Costa). 2015-10-25 00:09:48 +02:00
Sebastian Lackner
1c6124cc6e Added patch for implementation of additional HSTRING functions. 2015-10-24 22:55:19 +02:00
Sebastian Lackner
e51ebcc301 uxtheme-GTK_Theming: Fix configure.ac changes. 2015-10-24 02:40:56 +02:00
Sebastian Lackner
bff92e3d44 msidb-Implementation: Add missing changes to tools/make_makefiles. 2015-10-24 02:12:04 +02:00
Sebastian Lackner
1e79306b13 nvcuda-CUDA_Support: Fix typo. 2015-10-24 02:10:10 +02:00
Sebastian Lackner
8cd8abd51f Rebase against f8d78b0d927c1cae4c5075c64d980c306fb3ed87. 2015-10-24 02:09:12 +02:00
Sebastian Lackner
8adf60dc8e Added patch to implement FileNamesInformation class support for NtQueryDirectoryFile. 2015-10-22 22:57:30 +02:00
Sebastian Lackner
e64c3bff30 Rebase against 4fb840b614691a787c76659f02c163d922f88fba. 2015-10-22 20:37:13 +02:00
Sebastian Lackner
8d0e6ea5c8 d3dx9_36-GetShaderSemantics: Minor cleanup. 2015-10-22 02:20:08 +02:00
Sebastian Lackner
4f051ce511 ntdll-Wait_User_APC: Fix an outdated comment. 2015-10-22 01:58:28 +02:00
Sebastian Lackner
bd89770641 Rebase against 8075101480df82c5f4280d534f2d76f035653667. 2015-10-21 19:51:16 +02:00
Sebastian Lackner
7cf357b20c Added patch to block interruption of system APC in server_select. 2015-10-21 18:56:08 +02:00
Sebastian Lackner
91f812ed1b Added patch to release capture before sending WM_COMMAND. 2015-10-21 03:38:39 +02:00
Sebastian Lackner
8e8654d76e Added patch to implement stub for ProcessQuotaLimits info class. 2015-10-21 03:17:52 +02:00
Sebastian Lackner
d7013c255f Rebase against 59cca65ce0edd88b65a55a847468761e11dfab0b. 2015-10-20 20:55:52 +02:00
Sebastian Lackner
9638ce9ec6 ntdll-Consolidation_Callback: Do not add CFI rules for volatile registers, some other cleanup. 2015-10-20 05:57:11 +02:00
Sebastian Lackner
e1d5975f34 ntdll-Consolidation_Callback: Some style improvements, simplify assembler code. 2015-10-20 05:07:39 +02:00
Sebastian Lackner
f597f5b898 Added patch to use wrapper function for consolidation callback during unwinding. 2015-10-20 02:12:14 +02:00
Sebastian Lackner
63426eaa59 Rebase against 26094c5634b1f12d3f156a90a3e228513675cd63. 2015-10-19 22:03:53 +02:00
106 changed files with 3445 additions and 2663 deletions

View File

@@ -34,7 +34,7 @@ Wine. All those differences are also documented on the
Included bug fixes and improvements
-----------------------------------
**Bug fixes and features in Wine Staging 1.7.53 [262]:**
**Bug fixes and features in Wine Staging 1.7.54 [268]:**
*Note: The following list only contains features and bug fixes which are not
yet available in vanilla Wine. They are removed from the list as soon as they
@@ -60,6 +60,9 @@ for more details.*
* Add stub for D3DXComputeNormalMap
* Add stub for D3DXFrameFind ([Wine Bug #38334](https://bugs.winehq.org/show_bug.cgi?id=38334))
* Add stub for NtSetLdtEntries/ZwSetLdtEntries ([Wine Bug #26268](https://bugs.winehq.org/show_bug.cgi?id=26268))
* Add stub for SetCoalescableTimer ([Wine Bug #39509](https://bugs.winehq.org/show_bug.cgi?id=39509))
* Add stub for SetConsoleKeyShortcuts ([Wine Bug #35702](https://bugs.winehq.org/show_bug.cgi?id=35702))
* Add stub for SfcGetNextProtectedFile ([Wine Bug #38097](https://bugs.winehq.org/show_bug.cgi?id=38097))
* Add stub for ntoskrnl.ExAcquireResourceExclusiveLite
* Add stub for ntoskrnl.ExDeleteResourceLite
* Add stub for ntoskrnl.ExReleaseResourceForThread
@@ -110,8 +113,8 @@ for more details.*
* Create stub files for system32/drivers/etc/{services,hosts,networks,protocol} ([Wine Bug #12076](https://bugs.winehq.org/show_bug.cgi?id=12076))
* CreateProcess does not prioritize the working directory over the system search path ([Wine Bug #23934](https://bugs.winehq.org/show_bug.cgi?id=23934))
* D3DCompileShader should filter specific warning messages ([Wine Bug #33770](https://bugs.winehq.org/show_bug.cgi?id=33770))
* Do not allow interruption of system APC in server_select ([Wine Bug #14697](https://bugs.winehq.org/show_bug.cgi?id=14697))
* Do not allow to deallocate thread stack for current thread
* Do not check if object was signaled after user APC in server_select
* Do not fail when a used context is passed to wglShareLists ([Wine Bug #11436](https://bugs.winehq.org/show_bug.cgi?id=11436))
* Do not signal threads until they are really gone
* Do not use unixfs for devices without mountpoint
@@ -127,7 +130,6 @@ for more details.*
* Fake success in kernel32.SetFileCompletionNotificationModes ([Wine Bug #38960](https://bugs.winehq.org/show_bug.cgi?id=38960))
* Fallback to default comspec when %COMSPEC% is not set
* Fallback to system ping command when CAP_NET_RAW is not available ([Wine Bug #8332](https://bugs.winehq.org/show_bug.cgi?id=8332))
* Fix NULL dereference in ICSeqCompressFrameStart ([Wine Bug #27595](https://bugs.winehq.org/show_bug.cgi?id=27595))
* Fix access violation in MSYS2 git when cloning repository
* Fix calculation of listbox size when horizontal scrollbar is present ([Wine Bug #38142](https://bugs.winehq.org/show_bug.cgi?id=38142))
* Fix caps lock state issues with multiple processes ([Wine Bug #35907](https://bugs.winehq.org/show_bug.cgi?id=35907))
@@ -153,6 +155,7 @@ for more details.*
* Fix implementation of msvcrt.close when stdout == stderr
* Fix issues with dragging layers between images in Adobe Photoshop 7.0 ([Wine Bug #12007](https://bugs.winehq.org/show_bug.cgi?id=12007))
* Fix missing video introduced by pixelformat changes. ([Wine Bug #36900](https://bugs.winehq.org/show_bug.cgi?id=36900))
* Fix multiple issues in widl typelib generation
* Fix multithreading issues with fullscreen clipping ([Wine Bug #38087](https://bugs.winehq.org/show_bug.cgi?id=38087))
* Fix possible segfault in pulse_rd_loop of PulseAudio backend
* Fix race-condition when threads are killed during shutdown
@@ -172,23 +175,26 @@ for more details.*
* GetSecurityInfo returns NULL DACL for process object ([Wine Bug #15980](https://bugs.winehq.org/show_bug.cgi?id=15980))
* Globally invalidate key state on changes in other threads ([Wine Bug #29871](https://bugs.winehq.org/show_bug.cgi?id=29871))
* Graphical issues in Inquisitor ([Wine Bug #32490](https://bugs.winehq.org/show_bug.cgi?id=32490))
* IEnumSTATSTG::Next should zero out returned stats when enumeration ends
* Implement AMStream GetMultiMediaStream functions ([Wine Bug #37090](https://bugs.winehq.org/show_bug.cgi?id=37090))
* Implement D3DXGetShaderOutputSemantics
* Implement DDENUMSURFACES_CANBECREATED in IDirectDraw7::EnumSurfaces ([Wine Bug #17233](https://bugs.winehq.org/show_bug.cgi?id=17233))
* Implement FileNamesInformation class support for NtQueryDirectoryFile
* Implement FolderImpl_Items and stubbed FolderItems interface
* Implement ID3DXEffect::FindNextValidTechnique ([Wine Bug #34101](https://bugs.winehq.org/show_bug.cgi?id=34101))
* Implement IDXGIOutput::GetDesc
* Implement SystemHandleInformation info class
* Implement a Courier New replacement font ([Wine Bug #20456](https://bugs.winehq.org/show_bug.cgi?id=20456))
* Implement a Microsoft Yahei replacement font ([Wine Bug #13829](https://bugs.winehq.org/show_bug.cgi?id=13829))
* Implement a Times New Roman replacement font ([Wine Bug #32342](https://bugs.winehq.org/show_bug.cgi?id=32342))
* Implement additional stub functions in authz.dll
* Implement an Arial replacement font ([Wine Bug #32323](https://bugs.winehq.org/show_bug.cgi?id=32323))
* Implement combase.WindowsSubstring function
* Implement default homepage button in inetcpl.cpl
* Implement enumeration of sound devices and basic properties to dxdiagn ([Wine Bug #32613](https://bugs.winehq.org/show_bug.cgi?id=32613))
* Implement exclusive mode in PulseAudio backend ([Wine Bug #37042](https://bugs.winehq.org/show_bug.cgi?id=37042))
* Implement general tab for file property dialog
* Implement kernel32.GetPhysicallyInstalledSystemMemory ([Wine Bug #39395](https://bugs.winehq.org/show_bug.cgi?id=39395))
* Implement hal.KeQueryPerformanceCounter ([Wine Bug #39500](https://bugs.winehq.org/show_bug.cgi?id=39500))
* Implement kernel32.GetConsoleFontSize
* Implement locking and synchronization of key states ([Wine Bug #31899](https://bugs.winehq.org/show_bug.cgi?id=31899))
* Implement mscoree._CorValidateImage for mono runtime ([Wine Bug #38662](https://bugs.winehq.org/show_bug.cgi?id=38662))
* Implement ntoskrnl driver testing framework.
@@ -196,10 +202,12 @@ for more details.*
* Implement proper handling of CLI .NET images in Wine library loader ([Wine Bug #38661](https://bugs.winehq.org/show_bug.cgi?id=38661))
* Implement shell32 NewMenu class with new folder item ([Wine Bug #24812](https://bugs.winehq.org/show_bug.cgi?id=24812))
* Implement special handling for calling GetChildContainer with an empty string ([Wine Bug #38014](https://bugs.winehq.org/show_bug.cgi?id=38014))
* Implement stub for ProcessQuotaLimits info class
* Implement stub for ntoskrnl.IoGetAttachedDeviceReference
* Implement stub for ntoskrnl.KeDelayExecutionThread.
* Implement stubs for ntoskrnl.Ex{Acquire,Release}FastMutexUnsafe
* Implement stubs for ntoskrnl.ObReferenceObjectByPointer and ntoskrnl.ObDereferenceObject
* Improve INetFwAuthorizedApplication::get_ProcessImageFileName stub
* Improve ReadDataAvailable handling in FilePipeLocalInformation class
* Improve startup performance by delaying font initialization
* Improve stub for AEV_GetVolumeRange ([Wine Bug #35658](https://bugs.winehq.org/show_bug.cgi?id=35658))
@@ -214,7 +222,7 @@ for more details.*
* Jedi Knight: Dark Forces II crashes with winmm set to native ([Wine Bug #37983](https://bugs.winehq.org/show_bug.cgi?id=37983))
* Lego Stunt Rally requires DXTn software de/encoding support ([Wine Bug #25486](https://bugs.winehq.org/show_bug.cgi?id=25486))
* MSYS2 expects correct handling of WRITECOPY memory protection ([Wine Bug #35561](https://bugs.winehq.org/show_bug.cgi?id=35561))
* Make ddraw1 and ddraw_surface1 vtable as writable
* Make ddraw1 and ddraw_surface1 vtable as writable ([Wine Bug #39534](https://bugs.winehq.org/show_bug.cgi?id=39534))
* Make it possible to change media center / tablet pc status ([Wine Bug #18732](https://bugs.winehq.org/show_bug.cgi?id=18732))
* Map EXDEV error code to STATUS_NOT_SAME_DEVICE
* MediaCoder needs CUDA for video encoding ([Wine Bug #37664](https://bugs.winehq.org/show_bug.cgi?id=37664))
@@ -240,7 +248,6 @@ for more details.*
* Return an error when trying to open a terminated process ([Wine Bug #37087](https://bugs.winehq.org/show_bug.cgi?id=37087))
* Return correct IMediaSeeking stream positions in quartz
* Return correct values for GetThreadTimes function ([Wine Bug #20230](https://bugs.winehq.org/show_bug.cgi?id=20230))
* Return default palette entries from GetSystemPaletteEntries for non-palette-based devices ([Wine Bug #36895](https://bugs.winehq.org/show_bug.cgi?id=36895))
* Return dummy ID3DXSkinInfo interface when skinning info not present ([Wine Bug #33904](https://bugs.winehq.org/show_bug.cgi?id=33904))
* Return fake device type when systemroot is located on virtual disk ([Wine Bug #36546](https://bugs.winehq.org/show_bug.cgi?id=36546))
* Return proper status codes when NtReadFile/NtWriteFile is called on closed (but not disconnected) pipe
@@ -276,7 +283,6 @@ for more details.*
* Support for NtQuerySection ([Wine Bug #37338](https://bugs.winehq.org/show_bug.cgi?id=37338))
* Support for PulseAudio backend for audio ([Wine Bug #10495](https://bugs.winehq.org/show_bug.cgi?id=10495))
* Support for SHCreateSessionKey ([Wine Bug #35630](https://bugs.winehq.org/show_bug.cgi?id=35630))
* Support for TransmitFile ([Wine Bug #5048](https://bugs.winehq.org/show_bug.cgi?id=5048))
* Support for WTSEnumerateProcessesW ([Wine Bug #29903](https://bugs.winehq.org/show_bug.cgi?id=29903))
* Support for extra large and jumbo icon lists in shell32 ([Wine Bug #24721](https://bugs.winehq.org/show_bug.cgi?id=24721))
* Support for inherited file ACLs

47
debian/changelog vendored
View File

@@ -1,3 +1,50 @@
wine-staging (1.7.54) unstable; urgency=low
* Updated server-FileEndOfFileInformation patchset, growing a memory mapped
file should still work.
* Added patch to use wrapper function for consolidation callback during
unwinding.
* Added patch to implement stub for ProcessQuotaLimits info class.
* Added patch to release capture before sending WM_COMMAND.
* Added patch to block interruption of system APC in server_select.
* Added patch to implement FileNamesInformation class support for
NtQueryDirectoryFile.
* Added patch for implementation of additional HSTRING functions.
* Added patches for memory allocation cleanup in gdiplus functions.
* Added patch to implement hal.KeQueryPerformanceCounter.
* Added patch to fix build failure (introduced by makefile rewrite).
* Added patch to pass '-read_only_relocs suppress' to the linker on OSX and
enable patchset to use Nt* function wrappers.
* Added patch to use close_handle instead of NtClose for internal memory
management functions.
* Added patch to improve INetFwAuthorizedApplication::get_ProcessImageFileName
stub.
* Added patch for SetCoalescableTimer stub function.
* Added patch for SfcGetNextProtectedFile stub function.
* Added patch to zero out returned stats when IEnumSTATSTG::Next reaches end
of enumeration.
* Added patch to fix multiple issues in widl typelib generation.
* Added patch for SetConsoleKeyShortcuts stub function.
* Added patch to implement kernel32.GetConsoleFontSize.
* Added patch to implement SystemHandleInformation info class.
* Removed patch to implement kernel32.GetPhysicallyInstalledSystemMemory
(accepted upstream).
* Partially removed patches for ws2_32 TransmitFile (accepted upstream).
* Removed patch to fix NULL dereference in ICSeqCompressFrameStart (fixed
upstream).
* Removed patch to return default palette entries from GetSystemPaletteEntries
for non-palette-based devices (accepted upstream).
* Removed patch to use wrapper function for consolidate callback during
unwinding on x86_64 (accepted upstream).
* Removed patch to release capture before sending WM_COMMAND (accepted
upstream).
* Removed patch to avoid check for signaled object after user APC in
server_select (accepted upstream).
* Removed patch to implement combase.WindowsSubstring function (accepted
upstream).
* Removed patch to fix build failure (identical patch committed upstream).
* Removed patch for vcruntime120 dll (accepted upstream).
-- Sebastian Lackner <sebastian@fds-team.de> Sun, 01 Nov 2015 00:14:59 +0100
wine-staging (1.7.53) unstable; urgency=low
* Added patch to implement support for msiexec /passive command line option.
* Added patch to implement stub for DSPROPSETID_EAX20_ListenerProperties.

View File

@@ -1,4 +1,4 @@
From 0e76401ae2de47285c66ee0b59bdf7449136d060 Mon Sep 17 00:00:00 2001
From 65feac97e132fb25278e7c4c904d2ae831bf8a50 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Thu, 2 Oct 2014 19:53:46 +0200
Subject: winelib: Append '(Staging)' at the end of the version string.
@@ -8,7 +8,7 @@ Subject: winelib: Append '(Staging)' at the end of the version string.
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libs/wine/Makefile.in b/libs/wine/Makefile.in
index c961ba5..776168c 100644
index bc5f6fe..799b032 100644
--- a/libs/wine/Makefile.in
+++ b/libs/wine/Makefile.in
@@ -105,7 +105,7 @@ config_EXTRADEFS = \
@@ -18,8 +18,8 @@ index c961ba5..776168c 100644
- version=`(GIT_DIR=$(top_srcdir)/.git git describe HEAD 2>/dev/null || echo "wine-@PACKAGE_VERSION@") | sed -n -e '$$s/\(.*\)/const char wine_build[] = "\1";/p'` && (echo $$version | cmp -s - $@) || echo $$version >$@ || ($(RM) $@ && exit 1)
+ version=`(GIT_DIR=$(top_srcdir)/.git git describe HEAD 2>/dev/null || echo "wine-@PACKAGE_VERSION@") | sed -n -e '$$s/\(.*\)/const char wine_build[] = "\1 (Staging)";/p'` && (echo $$version | cmp -s - $@) || echo $$version >$@ || ($(RM) $@ && exit 1)
# Make sure that make_makefiles sees the generated rules
.PHONY: install install-lib install-dev uninstall
dummy:
--
2.1.1
2.6.1

View File

@@ -1,163 +0,0 @@
From f81b1feadca76ec41c834915fd5c5ce43f66f7b1 Mon Sep 17 00:00:00 2001
From: Martin Storsjo <martin@martin.st>
Date: Mon, 3 Aug 2015 22:26:02 +0300
Subject: vcruntime140: Add the new MSVC 2015 compiler specific DLL.
Since MSVC 2015/Windows 10, the C runtime has now been split into two
parts, ucrtbase, which is the generic C runtime which is now considered
a system component, and vcruntimeX which is specific to the compiler
version.
Even if this DLL only has a fraction of the functions of the full
msvcrt/ucrtbase, it still requires almost all the object files from
msvcrt.
---
configure.ac | 1 +
dlls/vcruntime140/Makefile.in | 33 +++++++++++++++
dlls/vcruntime140/vcruntime140.spec | 82 +++++++++++++++++++++++++++++++++++++
3 files changed, 116 insertions(+)
create mode 100644 dlls/vcruntime140/Makefile.in
create mode 100644 dlls/vcruntime140/vcruntime140.spec
diff --git a/configure.ac b/configure.ac
index e22b0ef..498470f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3363,6 +3363,7 @@ WINE_CONFIG_DLL(vcomp100)
WINE_CONFIG_DLL(vcomp110)
WINE_CONFIG_DLL(vcomp120)
WINE_CONFIG_DLL(vcomp90)
+WINE_CONFIG_DLL(vcruntime140,,[implib])
WINE_CONFIG_DLL(vdhcp.vxd,enable_win16)
WINE_CONFIG_DLL(vdmdbg,,[implib])
WINE_CONFIG_DLL(ver.dll16,enable_win16)
diff --git a/dlls/vcruntime140/Makefile.in b/dlls/vcruntime140/Makefile.in
new file mode 100644
index 0000000..92f99c4
--- /dev/null
+++ b/dlls/vcruntime140/Makefile.in
@@ -0,0 +1,33 @@
+EXTRADEFS = -D_MT -D_MSVCR_VER=140
+MODULE = vcruntime140.dll
+IMPORTLIB = vcruntime140
+DELAYIMPORTS = advapi32 user32
+PARENTSRC = ../msvcrt
+
+C_SRCS = \
+ console.c \
+ cpp.c \
+ ctype.c \
+ data.c \
+ dir.c \
+ environ.c \
+ errno.c \
+ except.c \
+ except_arm.c \
+ except_i386.c \
+ except_x86_64.c \
+ exit.c \
+ file.c \
+ heap.c \
+ locale.c \
+ lock.c \
+ main.c \
+ math.c \
+ mbcs.c \
+ misc.c \
+ process.c \
+ string.c \
+ thread.c \
+ time.c \
+ undname.c \
+ wcs.c
diff --git a/dlls/vcruntime140/vcruntime140.spec b/dlls/vcruntime140/vcruntime140.spec
new file mode 100644
index 0000000..9027955
--- /dev/null
+++ b/dlls/vcruntime140/vcruntime140.spec
@@ -0,0 +1,82 @@
+@ stub _CreateFrameInfo
+@ stdcall _CxxThrowException(long long)
+@ cdecl -arch=i386 -norelay _EH_prolog()
+@ stub _FindAndUnlinkFrame
+@ stub _IsExceptionObjectToBeDestroyed
+@ stub _NLG_Dispatch2
+@ stub _NLG_Return
+@ stub _NLG_Return2
+@ stub _SetWinRTOutOfMemoryExceptionCallback
+@ cdecl __AdjustPointer(ptr ptr)
+@ stub __BuildCatchObject
+@ stub __BuildCatchObjectHelper
+@ cdecl -arch=i386,x86_64,arm __CxxDetectRethrow(ptr)
+@ stub __CxxExceptionFilter
+@ cdecl -arch=i386,x86_64,arm -norelay __CxxFrameHandler(ptr ptr ptr ptr)
+@ cdecl -arch=i386,x86_64,arm -norelay __CxxFrameHandler2(ptr ptr ptr ptr) __CxxFrameHandler
+@ cdecl -arch=i386,x86_64,arm -norelay __CxxFrameHandler3(ptr ptr ptr ptr) __CxxFrameHandler
+@ stdcall -arch=i386 __CxxLongjmpUnwind(ptr)
+@ cdecl -arch=i386,x86_64,arm __CxxQueryExceptionSize()
+@ stub __CxxRegisterExceptionObject
+@ stub __CxxUnregisterExceptionObject
+@ stub __DestructExceptionObject
+@ stub __FrameUnwindFilter
+@ stub __GetPlatformExceptionInfo
+@ cdecl __RTCastToVoid(ptr) MSVCRT___RTCastToVoid
+@ cdecl __RTDynamicCast(ptr long ptr ptr long) MSVCRT___RTDynamicCast
+@ cdecl __RTtypeid(ptr) MSVCRT___RTtypeid
+@ stub __TypeMatch
+@ stub __current_exception
+@ stub __current_exception_context
+@ stub __intrinsic_setjmp
+@ stub __processing_throw
+@ stub __report_gsfailure
+@ stub __std_exception_copy
+@ stub __std_exception_destroy
+@ stub __std_terminate
+@ stub __std_type_info_compare
+@ stub __std_type_info_destroy_list
+@ stub __std_type_info_hash
+@ stub __std_type_info_name
+@ stub __telemetry_main_invoke_trigger
+@ stub __telemetry_main_return_trigger
+@ cdecl __unDName(ptr str long ptr ptr long)
+@ cdecl __unDNameEx(ptr str long ptr ptr ptr long)
+@ cdecl __uncaught_exception() MSVCRT___uncaught_exception
+@ stub __uncaught_exceptions
+@ stub __vcrt_GetModuleFileNameW
+@ stub __vcrt_GetModuleHandleW
+@ stub __vcrt_InitializeCriticalSectionEx
+@ stub __vcrt_LoadLibraryExW
+@ cdecl -arch=i386 -norelay _chkesp()
+@ cdecl -arch=i386 _except_handler2(ptr ptr ptr ptr)
+@ cdecl -arch=i386 _except_handler3(ptr ptr ptr ptr)
+@ cdecl -arch=i386 _except_handler4_common(ptr ptr ptr ptr ptr ptr)
+@ stub _get_purecall_handler
+@ cdecl _get_unexpected() MSVCRT__get_unexpected
+@ cdecl -arch=i386 _global_unwind2(ptr)
+@ stub _is_exception_typeof
+@ cdecl -arch=i386 _local_unwind2(ptr long)
+@ cdecl -arch=i386 _local_unwind4(ptr ptr long)
+@ cdecl -arch=i386 _longjmpex(ptr long) MSVCRT_longjmp
+@ cdecl _purecall()
+@ stdcall -arch=i386 _seh_longjmp_unwind4(ptr)
+@ stdcall -arch=i386 _seh_longjmp_unwind(ptr)
+@ cdecl _set_purecall_handler(ptr)
+@ stub -arch=win32 ?_set_se_translator@@YAP6AXIPAU_EXCEPTION_POINTERS@@@ZH@Z # void(__cdecl*__cdecl _set_se_translator(int))(unsigned int,struct _EXCEPTION_POINTERS *)
+@ stub -arch=win64 ?_set_se_translator@@YAP6AXIPEAU_EXCEPTION_POINTERS@@@ZH@Z # void(__cdecl*__cdecl _set_se_translator(int))(unsigned int,struct _EXCEPTION_POINTERS * __ptr64)
+@ cdecl -arch=i386 -norelay _setjmp3(ptr long) MSVCRT__setjmp3
+@ cdecl -arch=i386,x86_64,arm longjmp(ptr long) MSVCRT_longjmp
+@ cdecl memchr(ptr long long) MSVCRT_memchr
+@ cdecl memcmp(ptr ptr long) MSVCRT_memcmp
+@ cdecl memcpy(ptr ptr long) MSVCRT_memcpy
+@ cdecl memmove(ptr ptr long) MSVCRT_memmove
+@ cdecl memset(ptr long long) MSVCRT_memset
+@ stub set_unexpected
+@ cdecl strchr(str long) MSVCRT_strchr
+@ cdecl strrchr(str long) MSVCRT_strrchr
+@ cdecl strstr(str str) MSVCRT_strstr
+@ stub unexpected
+@ cdecl wcschr(wstr long) MSVCRT_wcschr
+@ cdecl wcsrchr(wstr long) ntdll.wcsrchr
+@ cdecl wcsstr(wstr wstr) MSVCRT_wcsstr
--
2.6.0

View File

@@ -1,26 +0,0 @@
From 3d3dd8491369119ee0dea8ec571b917f8613910a Mon Sep 17 00:00:00 2001
From: Martin Storsjo <martin@martin.st>
Date: Mon, 3 Aug 2015 22:26:03 +0300
Subject: vcruntime140: Hook up a function with a new name to the existing
implementation
---
dlls/vcruntime140/vcruntime140.spec | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/vcruntime140/vcruntime140.spec b/dlls/vcruntime140/vcruntime140.spec
index 9027955..adfb0f0 100644
--- a/dlls/vcruntime140/vcruntime140.spec
+++ b/dlls/vcruntime140/vcruntime140.spec
@@ -46,7 +46,7 @@
@ stub __uncaught_exceptions
@ stub __vcrt_GetModuleFileNameW
@ stub __vcrt_GetModuleHandleW
-@ stub __vcrt_InitializeCriticalSectionEx
+@ cdecl -arch=i386,win64 __vcrt_InitializeCriticalSectionEx(ptr long long) MSVCR110__crtInitializeCriticalSectionEx
@ stub __vcrt_LoadLibraryExW
@ cdecl -arch=i386 -norelay _chkesp()
@ cdecl -arch=i386 _except_handler2(ptr ptr ptr ptr)
--
2.5.0

View File

@@ -1,54 +0,0 @@
From 00e2e0a38d5ef81502d35a5aa3f62cb4ed834488 Mon Sep 17 00:00:00 2001
From: Martin Storsjo <martin@martin.st>
Date: Mon, 3 Aug 2015 22:26:05 +0300
Subject: vcruntime140: Add stubs for telemetry functions
These are required for a plain empty exe built with MSVC 2015 with
dynamic C runtime to start up with the builtin vcruntime140.dll.
---
dlls/msvcrt/misc.c | 16 ++++++++++++++++
dlls/vcruntime140/vcruntime140.spec | 4 ++--
2 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/dlls/msvcrt/misc.c b/dlls/msvcrt/misc.c
index 4e9f288..556ca62 100644
--- a/dlls/msvcrt/misc.c
+++ b/dlls/msvcrt/misc.c
@@ -498,3 +498,19 @@ void CDECL MSVCR120__vacopy(__ms_va_list *dest, __ms_va_list src)
{
__ms_va_copy(*dest, src);
}
+
+/*********************************************************************
+ * __telemetry_main_invoke_trigger (MSVCRT.@)
+ */
+void CDECL __telemetry_main_invoke_trigger(const HINSTANCE hinst)
+{
+ TRACE("(%p)\n", hinst);
+}
+
+/*********************************************************************
+ * __telemetry_main_return_trigger (MSVCRT.@)
+ */
+void CDECL __telemetry_main_return_trigger(const HINSTANCE hinst)
+{
+ TRACE("(%p)\n", hinst);
+}
diff --git a/dlls/vcruntime140/vcruntime140.spec b/dlls/vcruntime140/vcruntime140.spec
index adfb0f0..efd967f 100644
--- a/dlls/vcruntime140/vcruntime140.spec
+++ b/dlls/vcruntime140/vcruntime140.spec
@@ -38,8 +38,8 @@
@ stub __std_type_info_destroy_list
@ stub __std_type_info_hash
@ stub __std_type_info_name
-@ stub __telemetry_main_invoke_trigger
-@ stub __telemetry_main_return_trigger
+@ cdecl __telemetry_main_invoke_trigger(ptr)
+@ cdecl __telemetry_main_return_trigger(ptr)
@ cdecl __unDName(ptr str long ptr ptr long)
@ cdecl __unDNameEx(ptr str long ptr ptr ptr long)
@ cdecl __uncaught_exception() MSVCRT___uncaught_exception
--
2.5.0

View File

@@ -1,181 +0,0 @@
From 397611b845973e2418118ffcb4aee305b671d533 Mon Sep 17 00:00:00 2001
From: Thomas Pointhuber <thomas.pointhuber@gmx.at>
Date: Mon, 16 Mar 2015 09:45:21 +0100
Subject: combase: implement WindowsSubstring (try 2)
---
.../api-ms-win-core-winrt-string-l1-1-0.spec | 2 +-
dlls/combase/combase.spec | 2 +-
dlls/combase/string.c | 19 +++++++
dlls/combase/tests/string.c | 60 ++++++++++++++++++++++
include/winerror.h | 1 +
5 files changed, 82 insertions(+), 2 deletions(-)
diff --git a/dlls/api-ms-win-core-winrt-string-l1-1-0/api-ms-win-core-winrt-string-l1-1-0.spec b/dlls/api-ms-win-core-winrt-string-l1-1-0/api-ms-win-core-winrt-string-l1-1-0.spec
index 2361a1d..825980d 100644
--- a/dlls/api-ms-win-core-winrt-string-l1-1-0/api-ms-win-core-winrt-string-l1-1-0.spec
+++ b/dlls/api-ms-win-core-winrt-string-l1-1-0/api-ms-win-core-winrt-string-l1-1-0.spec
@@ -21,7 +21,7 @@
@ stdcall WindowsPromoteStringBuffer(ptr ptr) combase.WindowsPromoteStringBuffer
@ stub WindowsReplaceString
@ stdcall WindowsStringHasEmbeddedNull(ptr ptr) combase.WindowsStringHasEmbeddedNull
-@ stub WindowsSubstring
+@ stdcall WindowsSubstring(ptr long ptr) combase.WindowsSubstring
@ stub WindowsSubstringWithSpecifiedLength
@ stub WindowsTrimStringEnd
@ stub WindowsTrimStringStart
diff --git a/dlls/combase/combase.spec b/dlls/combase/combase.spec
index ac095ce..48c3a7e 100644
--- a/dlls/combase/combase.spec
+++ b/dlls/combase/combase.spec
@@ -302,7 +302,7 @@
@ stdcall WindowsPromoteStringBuffer(ptr ptr)
@ stub WindowsReplaceString
@ stdcall WindowsStringHasEmbeddedNull(ptr ptr)
-@ stub WindowsSubstring
+@ stdcall WindowsSubstring(ptr long ptr)
@ stub WindowsSubstringWithSpecifiedLength
@ stub WindowsTrimStringEnd
@ stub WindowsTrimStringStart
diff --git a/dlls/combase/string.c b/dlls/combase/string.c
index 7054af6..33e5100 100644
--- a/dlls/combase/string.c
+++ b/dlls/combase/string.c
@@ -255,6 +255,25 @@ HRESULT WINAPI WindowsStringHasEmbeddedNull(HSTRING str, BOOL *out)
}
/***********************************************************************
+ * WindowsSubstring (combase.@)
+ */
+HRESULT WINAPI WindowsSubstring(HSTRING str, UINT32 start, HSTRING *out)
+{
+ struct hstring_private *priv = impl_from_HSTRING(str);
+ UINT32 len = WindowsGetStringLen(str);
+ if (out == NULL)
+ return E_INVALIDARG;
+ if (start > len)
+ return E_BOUNDS;
+ if (start == len)
+ {
+ *out = NULL;
+ return S_OK;
+ }
+ return WindowsCreateString(&priv->buffer[start], len - start, out);
+}
+
+/***********************************************************************
* WindowsIsStringEmpty (combase.@)
*/
BOOL WINAPI WindowsIsStringEmpty(HSTRING str)
diff --git a/dlls/combase/tests/string.c b/dlls/combase/tests/string.c
index 72eaa84..c46d04e 100644
--- a/dlls/combase/tests/string.c
+++ b/dlls/combase/tests/string.c
@@ -38,6 +38,7 @@ static BOOL (WINAPI *pWindowsIsStringEmpty)(HSTRING);
static HRESULT (WINAPI *pWindowsPreallocateStringBuffer)(UINT32, WCHAR **, HSTRING_BUFFER *);
static HRESULT (WINAPI *pWindowsPromoteStringBuffer)(HSTRING_BUFFER, HSTRING *);
static HRESULT (WINAPI *pWindowsStringHasEmbeddedNull)(HSTRING, BOOL *);
+static HRESULT (WINAPI *pWindowsSubstring)(HSTRING, UINT32, HSTRING *);
#define SET(x) p##x = (void*)GetProcAddress(hmod, #x)
@@ -60,6 +61,7 @@ static BOOL init_functions(void)
SET(WindowsPreallocateStringBuffer);
SET(WindowsPromoteStringBuffer);
SET(WindowsStringHasEmbeddedNull);
+ SET(WindowsSubstring);
return TRUE;
}
@@ -92,6 +94,7 @@ static void _check_string(int line, HSTRING str, LPCWSTR content, UINT32 length,
static const WCHAR input_string[] = { 'a', 'b', 'c', 'd', 'e', 'f', '\0', '\0' };
static const WCHAR input_empty_string[] = { '\0' };
static const WCHAR input_embed_null[] = { 'a', '\0', 'c', '\0', 'e', 'f', '\0' };
+static const WCHAR output_substring[] = { 'c', 'd', 'e', 'f', '\0' };
static void test_create_delete(void)
{
@@ -236,6 +239,62 @@ static void test_string_buffer(void)
ok(pWindowsDeleteString(str) == S_OK, "Failed to delete string\n");
}
+static void test_substring(void)
+{
+ HSTRING str, substr;
+ HSTRING_HEADER header;
+
+ /* Test substring of string buffers */
+ ok(pWindowsCreateString(input_string, 6, &str) == S_OK, "Failed to create string\n");
+ ok(pWindowsSubstring(str, 2, &substr) == S_OK, "Failed to create substring!\n");
+ check_string(substr, output_substring, 4, FALSE);
+ ok(pWindowsDeleteString(substr) == S_OK, "Failed to delete string\n");
+ ok(pWindowsDeleteString(str) == S_OK, "Failed to delete string\n");
+
+ /* Test duplication of string using substring */
+ ok(pWindowsCreateString(input_string, 6, &str) == S_OK, "Failed to create string\n");
+ ok(pWindowsSubstring(str, 0, &substr) == S_OK, "Failed to create substring!\n");
+ ok(str != substr, "Duplicated string didn't create new string\n");
+ check_string(substr, input_string, 6, FALSE);
+ ok(pWindowsDeleteString(substr) == S_OK, "Failed to delete string\n");
+ ok(pWindowsDeleteString(str) == S_OK, "Failed to delete string\n");
+
+ /* Test substring of string reference */
+ ok(pWindowsCreateStringReference(input_string, 6, &header, &str) == S_OK, "Failed to create string ref\n");
+ ok(pWindowsSubstring(str, 2, &substr) == S_OK, "Failed to create substring of string ref!\n");
+ check_string(substr, output_substring, 4, FALSE);
+ ok(pWindowsDeleteString(substr) == S_OK, "Failed to delete string\n");
+ ok(pWindowsDeleteString(str) == S_OK, "Failed to delete string ref\n");
+
+ /* Test duplication of string reference using substring */
+ ok(pWindowsCreateStringReference(input_string, 6, &header, &str) == S_OK, "Failed to create string ref\n");
+ ok(pWindowsSubstring(str, 0, &substr) == S_OK, "Failed to create substring of string ref!\n");
+ ok(str != substr, "Duplicated string ref didn't create new string\n");
+ check_string(substr, input_string, 6, FALSE);
+ ok(pWindowsDeleteString(substr) == S_OK, "Failed to delete string\n");
+ ok(pWindowsDeleteString(str) == S_OK, "Failed to delete string\n");
+
+ /* Test get Substring of empty string */
+ ok(pWindowsSubstring(NULL, 0, &substr) == S_OK, "Failed to duplicate NULL string\n");
+ ok(substr == NULL, "Substring created new string\n");
+
+ /* Test get empty Substring of string */
+ ok(pWindowsCreateString(input_string, 6, &str) == S_OK, "Failed to create string\n");
+ ok(pWindowsSubstring(str, 6, &substr) == S_OK, "Failed to create substring!\n");
+ ok(substr == NULL, "Substring created new string\n");
+ ok(pWindowsDeleteString(str) == S_OK, "Failed to delete string\n");
+
+ /* Test handling of using to high startIndex */
+ ok(pWindowsCreateString(input_string, 6, &str) == S_OK, "Failed to create string\n");
+ ok(pWindowsSubstring(str, 7, &substr) == E_BOUNDS, "Incorrect error handling\n");
+ ok(pWindowsDeleteString(str) == S_OK, "Failed to delete string\n");
+
+ /* Test handling of a NULL string */
+ ok(pWindowsCreateString(input_string, 6, &str) == S_OK, "Failed to create string\n");
+ ok(pWindowsSubstring(str, 7, NULL) == E_INVALIDARG, "Incorrect error handling\n");
+ ok(pWindowsDeleteString(str) == S_OK, "Failed to delete string\n");
+}
+
START_TEST(string)
{
if (!init_functions())
@@ -244,4 +303,5 @@ START_TEST(string)
test_duplicate();
test_access();
test_string_buffer();
+ test_substring();
}
diff --git a/include/winerror.h b/include/winerror.h
index 2958cbd..9b9fb72 100644
--- a/include/winerror.h
+++ b/include/winerror.h
@@ -2090,6 +2090,7 @@ static inline HRESULT HRESULT_FROM_WIN32(unsigned int x)
#define S_FALSE _HRESULT_TYPEDEF_(1)
#define E_PENDING _HRESULT_TYPEDEF_(0x8000000A)
+#define E_BOUNDS _HRESULT_TYPEDEF_(0x8000000B)
#define E_NOTIMPL _HRESULT_TYPEDEF_(0x80004001)
--
2.3.2

View File

@@ -1,2 +0,0 @@
Fixes: Implement combase.WindowsSubstring function
Category: stable

View File

@@ -1,29 +1,29 @@
From d39d120e7b69873b864286ec574c7b5c9eb1de0d Mon Sep 17 00:00:00 2001
From 53bf52b313245d965619802729ef59ada1806660 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Wed, 27 Aug 2014 00:31:23 +0200
Subject: configure: Also add the absolute RPATH when linking against libwine.
---
configure.ac | 4 ++--
configure.ac | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/configure.ac b/configure.ac
index c4066f6..1c5f156 100644
index ff74f8d..529c209 100644
--- a/configure.ac
+++ b/configure.ac
@@ -970,10 +970,10 @@ wine-installed: main.o
@@ -966,10 +966,10 @@ ${wine_binary}_LDFLAGS = $LDEXECFLAGS -lwine \$(PTHREAD_LIBS)
[LDEXECFLAGS="-Wl,--export-dynamic"])
WINE_TRY_CFLAGS([-fPIC -Wl,--rpath,\$ORIGIN/../lib],
- [LDRPATH_INSTALL="-Wl,--rpath,\\\$\$ORIGIN/\`\$(MAKEDEP) -R \$(bindir) \$(libdir)\`"
+ [LDRPATH_INSTALL="-Wl,--rpath,\\\$\$ORIGIN/\`\$(MAKEDEP) -R \$(bindir) \$(libdir)\`:\$(DESTDIR)\$(libdir)"
- [LDRPATH_INSTALL="-Wl,--rpath,\\\$\$ORIGIN/\`\$(MAKEDEP) -R \${bindir} \${libdir}\`"
+ [LDRPATH_INSTALL="-Wl,--rpath,\\\$\$ORIGIN/\`\$(MAKEDEP) -R \${bindir} \${libdir}\`:\$(DESTDIR)\${libdir}"
LDRPATH_LOCAL="-Wl,--rpath,\\\$\$ORIGIN/\$(top_builddir)/libs/wine"],
[WINE_TRY_CFLAGS([-fPIC -Wl,-R,\$ORIGIN/../lib],
- [LDRPATH_INSTALL="-Wl,-R,\\\$\$ORIGIN/\`\$(MAKEDEP) -R \$(bindir) \$(libdir)\`"
+ [LDRPATH_INSTALL="-Wl,-R,\\\$\$ORIGIN/\`\$(MAKEDEP) -R \$(bindir) \$(libdir)\`:\$(DESTDIR)\$(libdir)"
- [LDRPATH_INSTALL="-Wl,-R,\\\$\$ORIGIN/\`\$(MAKEDEP) -R \${bindir} \${libdir}\`"
+ [LDRPATH_INSTALL="-Wl,-R,\\\$\$ORIGIN/\`\$(MAKEDEP) -R \${bindir} \${libdir}\`:\$(DESTDIR)\${libdir}"
LDRPATH_LOCAL="-Wl,-R,\\\$\$ORIGIN/\$(top_builddir)/libs/wine"])])
WINE_TRY_CFLAGS([-Wl,--enable-new-dtags],
--
1.7.9.5
2.6.1

View File

@@ -1,4 +1,4 @@
From f791fc56711cd4860b405604af4b30b0efc22f52 Mon Sep 17 00:00:00 2001
From 112abf989d718eb45388793f138d115eeda5b921 Mon Sep 17 00:00:00 2001
From: Christian Costa <titan.costa@gmail.com>
Date: Sat, 5 Apr 2014 14:02:07 +0200
Subject: d3dx9_36: Implement D3DXGetShaderInputSemantics + tests. (rev 3)
@@ -6,13 +6,13 @@ Subject: d3dx9_36: Implement D3DXGetShaderInputSemantics + tests. (rev 3)
Fixes bug 22682.
---
dlls/d3dx9_36/d3dx9_36.spec | 2 +-
dlls/d3dx9_36/shader.c | 92 ++++++++++++++++++++++++++++++++++++++++++++
dlls/d3dx9_36/tests/shader.c | 86 +++++++++++++++++++++++++++++++++++++++++
dlls/d3dx9_36/shader.c | 93 ++++++++++++++++++++++++++++++++++++++++++++
dlls/d3dx9_36/tests/shader.c | 86 ++++++++++++++++++++++++++++++++++++++++
include/d3dx9shader.h | 1 +
4 files changed, 180 insertions(+), 1 deletion(-)
4 files changed, 181 insertions(+), 1 deletion(-)
diff --git a/dlls/d3dx9_36/d3dx9_36.spec b/dlls/d3dx9_36/d3dx9_36.spec
index 15d693c..9b55d21 100644
index f79b6fa..cba33b4 100644
--- a/dlls/d3dx9_36/d3dx9_36.spec
+++ b/dlls/d3dx9_36/d3dx9_36.spec
@@ -159,7 +159,7 @@
@@ -25,7 +25,7 @@ index 15d693c..9b55d21 100644
@ stdcall D3DXGetShaderSamplers(ptr ptr ptr)
@ stdcall D3DXGetShaderSize(ptr)
diff --git a/dlls/d3dx9_36/shader.c b/dlls/d3dx9_36/shader.c
index cdc470b..fecc3ee 100644
index e9d893b..2918bde 100644
--- a/dlls/d3dx9_36/shader.c
+++ b/dlls/d3dx9_36/shader.c
@@ -1,6 +1,7 @@
@@ -36,7 +36,7 @@ index cdc470b..fecc3ee 100644
* Copyright 2011 Travis Athougies
*
* This library is free software; you can redistribute it and/or
@@ -2130,3 +2131,94 @@ HRESULT WINAPI D3DXDisassembleShader(const DWORD *shader, BOOL colorcode, const
@@ -2151,3 +2152,95 @@ HRESULT WINAPI D3DXDisassembleShader(const DWORD *shader, BOOL colorcode, const
FIXME("%p %d %s %p: stub\n", shader, colorcode, debugstr_a(comments), disassembly);
return E_OUTOFMEMORY;
}
@@ -61,7 +61,7 @@ index cdc470b..fecc3ee 100644
+ else
+ {
+ /* Handle remaining safe instructions */
+ while (*++byte_code & (1 << 31));
+ while (*++byte_code & (1u << 31));
+ }
+
+ return byte_code;
@@ -78,7 +78,7 @@ index cdc470b..fecc3ee 100644
+
+ while (*ptr != D3DSIO_END)
+ {
+ if (*ptr & (1 << 31))
+ if (*ptr & (1u << 31))
+ {
+ FIXME("Opcode expected\n");
+ return 0;
@@ -87,9 +87,10 @@ index cdc470b..fecc3ee 100644
+ {
+ DWORD param1 = *++ptr;
+ DWORD param2 = *++ptr;
+ DWORD usage = param1 & 0x1f;
+ DWORD usage_index = (param1 >> 16) & 0xf;
+ DWORD reg_type = (((param2 >> 11) & 0x3) << 3) | ((param2 >> 28) & 0x7);
+ DWORD usage = (param1 & D3DSP_DCL_USAGE_MASK) >> D3DSP_DCL_USAGE_SHIFT;
+ DWORD usage_index = (param1 & D3DSP_DCL_USAGEINDEX_MASK) >> D3DSP_DCL_USAGEINDEX_SHIFT;
+ DWORD reg_type = ((param2 & D3DSP_REGTYPE_MASK2) >> D3DSP_REGTYPE_SHIFT2)
+ | ((param2 & D3DSP_REGTYPE_MASK) >> D3DSP_REGTYPE_SHIFT);
+
+ TRACE("D3DSIO_DCL param1: %#x, param2: %#x, usage: %u, usage_index: %u, reg_type: %u\n",
+ param1, param2, usage, usage_index, reg_type);
@@ -247,10 +248,10 @@ index 694540c..728cd86 100644
+ test_get_shader_semantics();
}
diff --git a/include/d3dx9shader.h b/include/d3dx9shader.h
index d665f72..f565432 100644
index a3f68f2..5714ddb 100644
--- a/include/d3dx9shader.h
+++ b/include/d3dx9shader.h
@@ -315,6 +315,7 @@ DWORD WINAPI D3DXGetShaderVersion(const DWORD *byte_code);
@@ -352,6 +352,7 @@ DWORD WINAPI D3DXGetShaderVersion(const DWORD *byte_code);
const char * WINAPI D3DXGetVertexShaderProfile(struct IDirect3DDevice9 *device);
HRESULT WINAPI D3DXFindShaderComment(const DWORD *byte_code, DWORD fourcc, const void **data, UINT *size);
HRESULT WINAPI D3DXGetShaderSamplers(const DWORD *byte_code, const char **samplers, UINT *count);
@@ -259,5 +260,5 @@ index d665f72..f565432 100644
HRESULT WINAPI D3DXAssembleShaderFromFileA(const char *filename, const D3DXMACRO *defines,
ID3DXInclude *include, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages);
--
2.4.5
2.6.1

View File

@@ -1,8 +1,9 @@
From f16ccf29286616feb69533c178cfccf2709184d6 Mon Sep 17 00:00:00 2001
From b92b1b248050bc0b0b900de72b01cb79ef88df94 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Wed, 8 Jul 2015 10:55:03 +1000
Subject: d3dx9_36: Implement D3DXGetShaderOutputSemantics. (rev 2)
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
---
dlls/d3dx9_36/d3dx9_36.spec | 2 +-
dlls/d3dx9_36/shader.c | 20 +++++++++++++++-
@@ -11,7 +12,7 @@ Subject: d3dx9_36: Implement D3DXGetShaderOutputSemantics. (rev 2)
4 files changed, 75 insertions(+), 2 deletions(-)
diff --git a/dlls/d3dx9_36/d3dx9_36.spec b/dlls/d3dx9_36/d3dx9_36.spec
index 9b55d21..4ae1384 100644
index cba33b4..7cbf499 100644
--- a/dlls/d3dx9_36/d3dx9_36.spec
+++ b/dlls/d3dx9_36/d3dx9_36.spec
@@ -160,7 +160,7 @@
@@ -24,19 +25,19 @@ index 9b55d21..4ae1384 100644
@ stdcall D3DXGetShaderSize(ptr)
@ stdcall D3DXGetShaderVersion(ptr)
diff --git a/dlls/d3dx9_36/shader.c b/dlls/d3dx9_36/shader.c
index fecc3ee..07e3ff1 100644
index 39f1f31..c699299 100644
--- a/dlls/d3dx9_36/shader.c
+++ b/dlls/d3dx9_36/shader.c
@@ -2171,7 +2171,7 @@ static UINT get_shader_semantics(const DWORD *byte_code, D3DXSEMANTIC *semantics
@@ -2192,7 +2192,7 @@ static UINT get_shader_semantics(const DWORD *byte_code, D3DXSEMANTIC *semantics
{
if (*ptr & (1 << 31))
if (*ptr & (1u << 31))
{
- FIXME("Opcode expected\n");
+ FIXME("Opcode expected but got %#x\n", *ptr);
return 0;
}
else if ((*ptr & D3DSI_OPCODE_MASK) == D3DSIO_DCL)
@@ -2222,3 +2222,21 @@ HRESULT WINAPI D3DXGetShaderInputSemantics(const DWORD *byte_code, D3DXSEMANTIC
@@ -2243,3 +2243,21 @@ HRESULT WINAPI D3DXGetShaderInputSemantics(const DWORD *byte_code, D3DXSEMANTIC
return D3D_OK;
}
@@ -59,7 +60,7 @@ index fecc3ee..07e3ff1 100644
+ return D3D_OK;
+}
diff --git a/dlls/d3dx9_36/tests/shader.c b/dlls/d3dx9_36/tests/shader.c
index 728cd86..62de9fb 100644
index 728cd86..946143e 100644
--- a/dlls/d3dx9_36/tests/shader.c
+++ b/dlls/d3dx9_36/tests/shader.c
@@ -6572,6 +6572,60 @@ static void test_get_shader_semantics(void)
@@ -124,10 +125,10 @@ index 728cd86..62de9fb 100644
START_TEST(shader)
diff --git a/include/d3dx9shader.h b/include/d3dx9shader.h
index f565432..056033b 100644
index 5714ddb..1176143 100644
--- a/include/d3dx9shader.h
+++ b/include/d3dx9shader.h
@@ -316,6 +316,7 @@ const char * WINAPI D3DXGetVertexShaderProfile(struct IDirect3DDevice9 *device);
@@ -353,6 +353,7 @@ const char * WINAPI D3DXGetVertexShaderProfile(struct IDirect3DDevice9 *device);
HRESULT WINAPI D3DXFindShaderComment(const DWORD *byte_code, DWORD fourcc, const void **data, UINT *size);
HRESULT WINAPI D3DXGetShaderSamplers(const DWORD *byte_code, const char **samplers, UINT *count);
HRESULT WINAPI D3DXGetShaderInputSemantics(const DWORD *byte_code, D3DXSEMANTIC *semantics, UINT *count);
@@ -136,5 +137,5 @@ index f565432..056033b 100644
HRESULT WINAPI D3DXAssembleShaderFromFileA(const char *filename, const D3DXMACRO *defines,
ID3DXInclude *include, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages);
--
2.4.5
2.6.1

View File

@@ -1 +1 @@
Fixes: Make ddraw1 and ddraw_surface1 vtable as writable
Fixes: [39534] Make ddraw1 and ddraw_surface1 vtable as writable

View File

@@ -1,11 +1,11 @@
From 6564e70be47d7eede39141f62290577272588655 Mon Sep 17 00:00:00 2001
From aff30eb5ce44d1f62c9c0a1419a89ba076dd93b8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sun, 22 Feb 2015 01:25:20 +0100
Subject: dxva2: Initial implementation of MPEG2 decoder using vaapi backend.
---
configure.ac | 16 +
dlls/dxva2/Makefile.in | 12 +-
dlls/dxva2/Makefile.in | 14 +-
dlls/dxva2/backend.idl | 94 ++++++
dlls/dxva2/dxva2_private.h | 115 ++++++-
dlls/dxva2/genericdecoder.c | 432 +++++++++++++++++++++++++
@@ -14,14 +14,14 @@ Subject: dxva2: Initial implementation of MPEG2 decoder using vaapi backend.
dlls/dxva2/vaapi-mpeg2.c | 753 +++++++++++++++++++++++++++++++++++++++++++
dlls/dxva2/vaapi.c | 767 ++++++++++++++++++++++++++++++++++++++++++++
dlls/dxva2/videoservices.c | 74 ++---
10 files changed, 2290 insertions(+), 66 deletions(-)
10 files changed, 2291 insertions(+), 67 deletions(-)
create mode 100644 dlls/dxva2/backend.idl
create mode 100644 dlls/dxva2/genericdecoder.c
create mode 100644 dlls/dxva2/vaapi-mpeg2.c
create mode 100644 dlls/dxva2/vaapi.c
diff --git a/configure.ac b/configure.ac
index 22b46ae..db872d8 100644
index fbcd3fb..324deba 100644
--- a/configure.ac
+++ b/configure.ac
@@ -99,6 +99,8 @@ AC_ARG_WITH(xxf86vm, AS_HELP_STRING([--without-xxf86vm],[do not use XFree vide
@@ -33,7 +33,7 @@ index 22b46ae..db872d8 100644
AC_ARG_WITH(wine-tools,AS_HELP_STRING([--with-wine-tools=DIR],[use Wine tools from directory DIR]))
AC_ARG_WITH(wine64, AS_HELP_STRING([--with-wine64=DIR],[use the 64-bit Wine in DIR for a Wow64 build]))
@@ -1261,6 +1263,20 @@ This probably prevents linking to OpenGL. Try deleting the file and restarting c
@@ -1265,6 +1267,20 @@ This probably prevents linking to OpenGL. Try deleting the file and restarting c
WINE_WARNING_WITH(opengl,[test -n "$opengl_msg"],[$opengl_msg
OpenGL and Direct3D won't be supported.])
@@ -55,7 +55,7 @@ index 22b46ae..db872d8 100644
else
X_CFLAGS=""
diff --git a/dlls/dxva2/Makefile.in b/dlls/dxva2/Makefile.in
index 4af9dc0..808173c 100644
index 4af9dc0..afdefc3 100644
--- a/dlls/dxva2/Makefile.in
+++ b/dlls/dxva2/Makefile.in
@@ -1,8 +1,14 @@
@@ -67,15 +67,16 @@ index 4af9dc0..808173c 100644
+ backend.idl
C_SRCS = \
+ devicemanager.c \
- main.c \
- videoservices.c \
devicemanager.c \
- softwareprocessor.c
+ genericdecoder.c \
main.c \
+ main.c \
+ softwareprocessor.c \
+ vaapi.c \
+ vaapi-mpeg2.c \
videoservices.c \
- devicemanager.c \
- softwareprocessor.c
+ videoservices.c
diff --git a/dlls/dxva2/backend.idl b/dlls/dxva2/backend.idl
new file mode 100644
index 0000000..dd37695
@@ -2632,5 +2633,5 @@ index 46e431a..84222dc 100644
return E_NOINTERFACE;
}
--
2.3.0
2.6.1

View File

@@ -1,4 +1,4 @@
From b4de3e81cdf0ba928d75455c871742d86920de13 Mon Sep 17 00:00:00 2001
From 4ec62ff378a4051c25875bf620fa74170202256e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sun, 22 Feb 2015 01:43:36 +0100
Subject: dxva2: Implement h264 decoder.
@@ -12,7 +12,7 @@ Subject: dxva2: Implement h264 decoder.
create mode 100644 dlls/dxva2/vaapi-h264.c
diff --git a/dlls/dxva2/Makefile.in b/dlls/dxva2/Makefile.in
index 808173c..69ce4c8 100644
index afdefc3..e527e96 100644
--- a/dlls/dxva2/Makefile.in
+++ b/dlls/dxva2/Makefile.in
@@ -10,5 +10,6 @@ C_SRCS = \
@@ -21,7 +21,7 @@ index 808173c..69ce4c8 100644
vaapi.c \
+ vaapi-h264.c \
vaapi-mpeg2.c \
videoservices.c \
videoservices.c
diff --git a/dlls/dxva2/dxva2_private.h b/dlls/dxva2/dxva2_private.h
index f518637..5df59bd 100644
--- a/dlls/dxva2/dxva2_private.h
@@ -37,7 +37,7 @@ index f518637..5df59bd 100644
#endif /* HAVE_VAAPI */
diff --git a/dlls/dxva2/vaapi-h264.c b/dlls/dxva2/vaapi-h264.c
new file mode 100644
index 0000000..1a5817e
index 0000000..08b6aed
--- /dev/null
+++ b/dlls/dxva2/vaapi-h264.c
@@ -0,0 +1,890 @@
@@ -932,7 +932,7 @@ index 0000000..1a5817e
+
+#endif /* HAVE_VAAPI */
diff --git a/dlls/dxva2/vaapi.c b/dlls/dxva2/vaapi.c
index 3369a03..404f1ab 100644
index 80e63bf..4c570f5 100644
--- a/dlls/dxva2/vaapi.c
+++ b/dlls/dxva2/vaapi.c
@@ -655,6 +655,8 @@ static HRESULT WINAPI WineVideoService_CreateVideoDecoder( IWineVideoService *if
@@ -945,5 +945,5 @@ index 3369a03..404f1ab 100644
return E_FAIL;
}
--
2.1.0
2.6.1

View File

@@ -1,191 +0,0 @@
From f3e41ff12cb58ee6cb5c36a447cfdeeda3eb21a2 Mon Sep 17 00:00:00 2001
From: Anton Baskanov <baskanov@gmail.com>
Date: Fri, 1 May 2015 13:02:28 +0600
Subject: gdi32: Return default palette entries from GetSystemPaletteEntries
for non-palette-based devices.
Fixes rendering artifacts in Marble Drop.
Changes by Sebastian Lackner <sebastian@fds-team.de>:
* Added additional tests.
* Fix comparison in GetSystemPaletteEntries.
---
dlls/gdi32/palette.c | 35 +++++++++++++-
dlls/gdi32/tests/palette.c | 112 +++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 145 insertions(+), 2 deletions(-)
diff --git a/dlls/gdi32/palette.c b/dlls/gdi32/palette.c
index d850d0f..70a75d8 100644
--- a/dlls/gdi32/palette.c
+++ b/dlls/gdi32/palette.c
@@ -418,8 +418,39 @@ UINT WINAPI GetSystemPaletteEntries(
if ((dc = get_dc_ptr( hdc )))
{
- PHYSDEV physdev = GET_DC_PHYSDEV( dc, pGetSystemPaletteEntries );
- ret = physdev->funcs->pGetSystemPaletteEntries( physdev, start, count, entries );
+ if (!(GetDeviceCaps( hdc, RASTERCAPS ) & RC_PALETTE))
+ {
+ if (entries && start < 256)
+ {
+ UINT i;
+ const RGBQUAD *default_entries;
+
+ if (start + count > 256) count = 256 - start;
+
+ default_entries = get_default_color_table( 8 );
+ for (i = 0; i < count; ++i)
+ {
+ if (start + i < 10 || start + i >= 246)
+ {
+ entries[i].peRed = default_entries[start + i].rgbRed;
+ entries[i].peGreen = default_entries[start + i].rgbGreen;
+ entries[i].peBlue = default_entries[start + i].rgbBlue;
+ }
+ else
+ {
+ entries[i].peRed = 0;
+ entries[i].peGreen = 0;
+ entries[i].peBlue = 0;
+ }
+ entries[i].peFlags = 0;
+ }
+ }
+ }
+ else
+ {
+ PHYSDEV physdev = GET_DC_PHYSDEV( dc, pGetSystemPaletteEntries );
+ ret = physdev->funcs->pGetSystemPaletteEntries( physdev, start, count, entries );
+ }
release_dc_ptr( dc );
}
return ret;
diff --git a/dlls/gdi32/tests/palette.c b/dlls/gdi32/tests/palette.c
index f95c0d3..09a00a5 100644
--- a/dlls/gdi32/tests/palette.c
+++ b/dlls/gdi32/tests/palette.c
@@ -191,9 +191,121 @@ static void test_halftone_palette(void)
ReleaseDC( 0, hdc );
}
+static void test_system_palette_entries(void)
+{
+ HDC hdc;
+ PALETTEENTRY entries[256];
+ PALETTEENTRY defpal[20];
+ int i, count;
+
+ hdc = GetDC(0);
+
+ if (!(GetDeviceCaps( hdc, RASTERCAPS ) & RC_PALETTE))
+ {
+ memset( defpal, 0xaa, sizeof(defpal) );
+ count = GetPaletteEntries( GetStockObject(DEFAULT_PALETTE), 0, 20, defpal );
+ ok( count == 20, "wrong size %u\n", count );
+
+ memset( entries, 0x55, sizeof(entries) );
+ count = GetSystemPaletteEntries( hdc, 0, 256, entries );
+ ok( count == 0, "wrong size %u\n", count);
+ for (i = 0; i < 10; i++)
+ {
+ ok( entries[i].peRed == defpal[i].peRed &&
+ entries[i].peGreen == defpal[i].peGreen &&
+ entries[i].peBlue == defpal[i].peBlue &&
+ !entries[i].peFlags,
+ "%u: wrong color %02x,%02x,%02x,%02x instead of %02x,%02x,%02x\n", i,
+ entries[i].peRed, entries[i].peGreen, entries[i].peBlue, entries[i].peFlags,
+ defpal[i].peRed, defpal[i].peGreen, defpal[i].peBlue );
+ }
+ for (i = 10; i < 246; ++i)
+ {
+ ok( !entries[i].peRed &&
+ !entries[i].peGreen &&
+ !entries[i].peBlue &&
+ !entries[i].peFlags,
+ "%u: wrong color %02x,%02x,%02x,%02x instead of 0,0,0\n", i,
+ entries[i].peRed, entries[i].peGreen, entries[i].peBlue, entries[i].peFlags);
+ }
+ for (i = 246; i < 256; i++)
+ {
+ int idx = i - 246 + 10;
+ ok( entries[i].peRed == defpal[idx].peRed &&
+ entries[i].peGreen == defpal[idx].peGreen &&
+ entries[i].peBlue == defpal[idx].peBlue &&
+ !entries[i].peFlags,
+ "%u: wrong color %02x,%02x,%02x,%02x instead of %02x,%02x,%02x\n", i,
+ entries[i].peRed, entries[i].peGreen, entries[i].peBlue, entries[i].peFlags,
+ defpal[idx].peRed, defpal[idx].peGreen, defpal[idx].peBlue );
+ }
+
+ memset( entries, 0x55, sizeof(entries) );
+ count = GetSystemPaletteEntries( hdc, 0, 10, entries );
+ ok( count == 0, "wrong size %u\n", count);
+ for (i = 0; i < 10; i++)
+ {
+ ok( entries[i].peRed == defpal[i].peRed &&
+ entries[i].peGreen == defpal[i].peGreen &&
+ entries[i].peBlue == defpal[i].peBlue &&
+ !entries[i].peFlags,
+ "%u: wrong color %02x,%02x,%02x,%02x instead of %02x,%02x,%02x\n", i,
+ entries[i].peRed, entries[i].peGreen, entries[i].peBlue, entries[i].peFlags,
+ defpal[i].peRed, defpal[i].peGreen, defpal[i].peBlue );
+ }
+
+ memset( entries, 0x55, sizeof(entries) );
+ count = GetSystemPaletteEntries( hdc, 10, 246, entries );
+ ok( count == 0, "wrong size %u\n", count);
+ for (i = 0; i < 236; ++i)
+ {
+ ok( !entries[i].peRed &&
+ !entries[i].peGreen &&
+ !entries[i].peBlue &&
+ !entries[i].peFlags,
+ "%u: wrong color %02x,%02x,%02x,%02x instead of 0,0,0\n", i,
+ entries[i].peRed, entries[i].peGreen, entries[i].peBlue, entries[i].peFlags);
+ }
+ for (i = 236; i < 246; i++)
+ {
+ int idx = i - 236 + 10;
+ ok( entries[i].peRed == defpal[idx].peRed &&
+ entries[i].peGreen == defpal[idx].peGreen &&
+ entries[i].peBlue == defpal[idx].peBlue &&
+ !entries[i].peFlags,
+ "%u: wrong color %02x,%02x,%02x,%02x instead of %02x,%02x,%02x\n", i,
+ entries[i].peRed, entries[i].peGreen, entries[i].peBlue, entries[i].peFlags,
+ defpal[idx].peRed, defpal[idx].peGreen, defpal[idx].peBlue );
+ }
+
+ memset( entries, 0x55, sizeof(entries) );
+ count = GetSystemPaletteEntries( hdc, 246, 10, entries );
+ ok( count == 0, "wrong size %u\n", count);
+ for (i = 0; i < 10; i++)
+ {
+ int idx = i + 10;
+ ok( entries[i].peRed == defpal[idx].peRed &&
+ entries[i].peGreen == defpal[idx].peGreen &&
+ entries[i].peBlue == defpal[idx].peBlue &&
+ !entries[i].peFlags,
+ "%u: wrong color %02x,%02x,%02x,%02x instead of %02x,%02x,%02x\n", i,
+ entries[i].peRed, entries[i].peGreen, entries[i].peBlue, entries[i].peFlags,
+ defpal[idx].peRed, defpal[idx].peGreen, defpal[idx].peBlue );
+ }
+
+ }
+ else
+ {
+ skip( "device is palette-based, skipping test\n" );
+ }
+
+ ReleaseDC( 0, hdc );
+}
+
START_TEST(palette)
{
test_DIB_PAL_COLORS();
test_palette_entries();
test_halftone_palette();
+ test_system_palette_entries();
}
--
2.3.7

View File

@@ -1 +0,0 @@
Fixes: [36895] Return default palette entries from GetSystemPaletteEntries for non-palette-based devices

View File

@@ -1,26 +1,18 @@
From 2e0137d4d9706af5cc208171358b74ef614770de Mon Sep 17 00:00:00 2001
From 804021e621413998b319f887eed3f754df784fcd Mon Sep 17 00:00:00 2001
From: Ken Thomases <ken@codeweavers.com>
Date: Thu, 27 Mar 2014 18:18:46 -0500
Subject: winemac: Make GetMonitorInfo() give a different device name
(\\.\DISPLAY<n>) to each monitor.
---
dlls/winemac.drv/display.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
dlls/winemac.drv/display.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/dlls/winemac.drv/display.c b/dlls/winemac.drv/display.c
index 10ecf67..c708481 100644
index e1357d8..f82289d 100644
--- a/dlls/winemac.drv/display.c
+++ b/dlls/winemac.drv/display.c
@@ -25,6 +25,7 @@
#include "winuser.h"
#include "winreg.h"
#include "ddrawi.h"
+#include "wine/unicode.h"
WINE_DEFAULT_DEBUG_CHANNEL(display);
@@ -935,7 +936,7 @@ done:
@@ -1210,7 +1210,7 @@ done:
*/
BOOL CDECL macdrv_GetMonitorInfo(HMONITOR monitor, LPMONITORINFO info)
{
@@ -29,7 +21,7 @@ index 10ecf67..c708481 100644
struct macdrv_display *displays;
int num_displays;
CGDirectDisplayID display_id;
@@ -965,10 +966,12 @@ BOOL CDECL macdrv_GetMonitorInfo(HMONITOR monitor, LPMONITORINFO info)
@@ -1240,10 +1240,12 @@ BOOL CDECL macdrv_GetMonitorInfo(HMONITOR monitor, LPMONITORINFO info)
info->dwFlags = (i == 0) ? MONITORINFOF_PRIMARY : 0;
if (info->cbSize >= sizeof(MONITORINFOEXW))
@@ -46,5 +38,5 @@ index 10ecf67..c708481 100644
else
{
--
2.5.1
2.6.1

View File

@@ -0,0 +1,44 @@
From 32b4634ca8534cf05469e39991891d9fb0f50f4c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Wed, 28 Oct 2015 22:36:01 +0100
Subject: hal: Implement KeQueryPerformanceCounter.
---
dlls/hal/hal.c | 10 ++++++++++
dlls/hal/hal.spec | 2 +-
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/dlls/hal/hal.c b/dlls/hal/hal.c
index 96bc895..7baebcd 100644
--- a/dlls/hal/hal.c
+++ b/dlls/hal/hal.c
@@ -155,3 +155,13 @@ KIRQL WINAPI KeGetCurrentIrql(VOID)
FIXME( " stub!\n");
return 0;
}
+
+LARGE_INTEGER WINAPI KeQueryPerformanceCounter(LARGE_INTEGER *frequency)
+{
+ LARGE_INTEGER counter;
+
+ TRACE("(%p)\n", frequency);
+
+ NtQueryPerformanceCounter(&counter, frequency);
+ return counter;
+}
diff --git a/dlls/hal/hal.spec b/dlls/hal/hal.spec
index 3046c65..dc908dd 100644
--- a/dlls/hal/hal.spec
+++ b/dlls/hal/hal.spec
@@ -72,7 +72,7 @@
@ stub KeFlushWriteBuffer
@ stdcall KeGetCurrentIrql()
@ stub KeLowerIrql
-@ stub KeQueryPerformanceCounter
+@ stdcall -ret64 KeQueryPerformanceCounter(ptr)
@ stub KeRaiseIrql
@ stub KeRaiseIrqlToDpcLevel
@ stub KeRaiseIrqlToSynchLevel
--
2.6.1

View File

@@ -0,0 +1 @@
Fixes: [39500] Implement hal.KeQueryPerformanceCounter

View File

@@ -0,0 +1,78 @@
From 1b1bec9415d3ed3ada5ed6fbc5e4d9a30797cbc9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sat, 31 Oct 2015 02:27:14 +0100
Subject: hnetcfg: Improve
INetFwAuthorizedApplication::get_ProcessImageFileName stub.
---
dlls/hnetcfg/apps.c | 26 ++++++++++++++++++++++++--
1 file changed, 24 insertions(+), 2 deletions(-)
diff --git a/dlls/hnetcfg/apps.c b/dlls/hnetcfg/apps.c
index d21ed98..7a8d5e8 100644
--- a/dlls/hnetcfg/apps.c
+++ b/dlls/hnetcfg/apps.c
@@ -38,6 +38,7 @@ typedef struct fw_app
{
INetFwAuthorizedApplication INetFwAuthorizedApplication_iface;
LONG refs;
+ BSTR filename;
} fw_app;
static inline fw_app *impl_from_INetFwAuthorizedApplication( INetFwAuthorizedApplication *iface )
@@ -60,6 +61,7 @@ static ULONG WINAPI fw_app_Release(
if (!refs)
{
TRACE("destroying %p\n", fw_app);
+ if (fw_app->filename) SysFreeString( fw_app->filename );
HeapFree( GetProcessHeap(), 0, fw_app );
}
return refs;
@@ -250,7 +252,18 @@ static HRESULT WINAPI fw_app_get_ProcessImageFileName(
fw_app *This = impl_from_INetFwAuthorizedApplication( iface );
FIXME("%p, %p\n", This, imageFileName);
- return E_NOTIMPL;
+
+ if (!imageFileName)
+ return E_INVALIDARG;
+
+ if (!This->filename)
+ {
+ *imageFileName = NULL;
+ return S_OK;
+ }
+
+ *imageFileName = SysAllocString( This->filename );
+ return *imageFileName ? S_OK : E_OUTOFMEMORY;
}
static HRESULT WINAPI fw_app_put_ProcessImageFileName(
@@ -260,7 +273,15 @@ static HRESULT WINAPI fw_app_put_ProcessImageFileName(
fw_app *This = impl_from_INetFwAuthorizedApplication( iface );
FIXME("%p, %s\n", This, debugstr_w(imageFileName));
- return S_OK;
+
+ if (!imageFileName)
+ {
+ This->filename = NULL;
+ return S_OK;
+ }
+
+ This->filename = SysAllocString( imageFileName );
+ return This->filename ? S_OK : E_OUTOFMEMORY;
}
static HRESULT WINAPI fw_app_get_IpVersion(
@@ -383,6 +404,7 @@ HRESULT NetFwAuthorizedApplication_create( IUnknown *pUnkOuter, LPVOID *ppObj )
fa->INetFwAuthorizedApplication_iface.lpVtbl = &fw_app_vtbl;
fa->refs = 1;
+ fa->filename = NULL;
*ppObj = &fa->INetFwAuthorizedApplication_iface;
--
2.6.1

Some files were not shown because too many files have changed in this diff Show More