You've already forked wine-staging
mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-04-13 14:42:51 -07:00
Compare commits
21 Commits
v1.9.21
...
v1.8.1-uno
Author | SHA1 | Date | |
---|---|---|---|
|
24dcca66e3 | ||
|
9118e47cd3 | ||
|
8ae4e4601d | ||
|
21efb9c6f2 | ||
|
4c11d0c812 | ||
|
d7546964c7 | ||
|
766590c481 | ||
|
5ed04faa06 | ||
|
dbaf56b01c | ||
|
7145f11c99 | ||
|
819a64744e | ||
|
5bcbac4982 | ||
|
ed7fe13391 | ||
|
740b727a94 | ||
|
33c9d17dee | ||
|
5d4124c92b | ||
|
02d83cab14 | ||
|
7fc4595aaa | ||
|
364cd111e2 | ||
|
e9f11bd51b | ||
|
15f62469af |
@@ -7,7 +7,7 @@ are part of **Wine Staging** and are licensed under the terms of the
|
||||
[LGPLv2.1](#gnu-lgpl-version-21), to stay compatible with Wine:
|
||||
|
||||
```
|
||||
Copyright (C) 2014-2015 the Wine Staging project authors.
|
||||
Copyright (C) 2014-2016 the Wine Staging project authors.
|
||||
|
||||
Wine Staging is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
|
374
README.md
374
README.md
@@ -8,307 +8,93 @@ to give developers the possibility to discuss and improve their patches before
|
||||
they are integrated into the main branch. More information about Wine Staging
|
||||
can also be found on our website [wine-staging.com](http://wine-staging.com).
|
||||
|
||||
Although we are reviewing and testing all patches carefully before adding them,
|
||||
you may encounter additional bugs, which are not present in the development
|
||||
branch. Do not hesitate to report such issues at winehq.org, so they can be
|
||||
fixed before the feature gets integrated.
|
||||
Installation
|
||||
------------
|
||||
|
||||
Ready-to-use packages for Wine Staging are available for a variety of Linux
|
||||
distributions and for Mac OS X. Just follow the
|
||||
[installation instructions](https://github.com/wine-compholio/wine-staging/wiki/Installation)
|
||||
for your operating system.
|
||||
|
||||
How to install and use Wine Staging
|
||||
-----------------------------------
|
||||
On most distributions the `wine-staging` package is installed to
|
||||
`/opt/wine-staging`, such that multiple Wine versions can be installed in
|
||||
parallel. If this is the case for your distribution, you will have to type
|
||||
`/opt/wine-staging/bin/wine` instead of just `wine`. The same also applies for
|
||||
other wine-specific programs like `winecfg`. To learn more about how to use
|
||||
Wine Staging, please take a look at the
|
||||
[usage instructions](https://github.com/wine-compholio/wine-staging/wiki/Usage).
|
||||
|
||||
Ready-to-use packages for Wine Staging are available for a variety
|
||||
of different Linux distributions directly for download. Just follow the
|
||||
instructions available on the
|
||||
[Wiki](https://github.com/wine-compholio/wine-staging/wiki/Installation).
|
||||
Reporting bugs
|
||||
--------------
|
||||
|
||||
When using Wine Staging there are a few differences compared to regular
|
||||
Wine. The main difference is that it is not sufficient to type `wine` to
|
||||
run it, but instead you will have to type `/opt/wine-staging/bin/wine`.
|
||||
Besides that there are also some other differences, for example additional
|
||||
configuration options to tweak performance, which are not available in regular
|
||||
Wine. All those differences are also documented on the
|
||||
[Wiki](https://github.com/wine-compholio/wine-staging/wiki/Usage).
|
||||
Since WineConf 2015 Wine Staging is an official part of WineHQ, which means you
|
||||
can report problems directly at https://bugs.winehq.org/. Most of the time bugs
|
||||
found in Wine Staging also turn out to be present in the development branch, so
|
||||
its recommended to open your bug in the "Wine" product, unless you are sure its
|
||||
really "Wine Staging" specific. For problems with our binary packages, please
|
||||
also open a bug report there.
|
||||
|
||||
Building
|
||||
--------
|
||||
|
||||
Included bug fixes and improvements
|
||||
-----------------------------------
|
||||
Wine Staging is maintained as a set of patches which has to be applied on top of
|
||||
the development branch. In order to build Wine Staging, the first step is to
|
||||
setup a build environment for Wine, including all required dependencies. A lot
|
||||
of information about that is collected in the
|
||||
[WineHQ Wiki](http://wiki.winehq.org/BuildingWine).
|
||||
|
||||
**Bug fixes and features in Wine Staging 1.8 [268]:**
|
||||
In order to apply all Wine Staging patches it is recommended to use the
|
||||
`patchinstall.sh` utility which takes care of applying all patches in the
|
||||
correct order. For reference, the possible commandline arguments are:
|
||||
|
||||
*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
|
||||
are included upstream. The list also includes features and fixes from previous
|
||||
releases, take a look at the
|
||||
[changelog](https://github.com/wine-compholio/wine-staging/blob/master/staging/changelog)
|
||||
for more details.*
|
||||
```
|
||||
Usage: ./patchinstall.sh [DESTDIR=path] [--all] [-W patchset] [patchset ...]
|
||||
|
||||
* Add IDragSourceHelper stub interface ([Wine Bug #24699](https://bugs.winehq.org/show_bug.cgi?id=24699))
|
||||
* Add IHTMLLocation::hash property's getter implementation ([Wine Bug #32967](https://bugs.winehq.org/show_bug.cgi?id=32967))
|
||||
* Add a ProfileList\<UserSID> registry subkey ([Wine Bug #15670](https://bugs.winehq.org/show_bug.cgi?id=15670))
|
||||
* Add a stub driver for tdi.sys ([Wine Bug #35693](https://bugs.winehq.org/show_bug.cgi?id=35693))
|
||||
* Add implementation for comctl32.PROPSHEET_InsertPage. ([Wine Bug #25625](https://bugs.winehq.org/show_bug.cgi?id=25625))
|
||||
* Add implementation for mfplat.MFTEnum ([Wine Bug #39309](https://bugs.winehq.org/show_bug.cgi?id=39309))
|
||||
* Add implementation for mfplat.MFTRegister ([Wine Bug #37811](https://bugs.winehq.org/show_bug.cgi?id=37811))
|
||||
* Add implementation for msidb commandline tool
|
||||
* Add implementation for shlwapi.AssocGetPerceivedType
|
||||
* Add nvapi stubs required for GPU PhysX support
|
||||
* Add performance library registry keys needed by MS SQL Server Management Studio Express 2008 R2 ([Wine Bug #33661](https://bugs.winehq.org/show_bug.cgi?id=33661))
|
||||
* Add semi-stub for FileFsVolumeInformation information class ([Wine Bug #21466](https://bugs.winehq.org/show_bug.cgi?id=21466))
|
||||
* Add shell32 placeholder icons to match offsets with Windows ([Wine Bug #30185](https://bugs.winehq.org/show_bug.cgi?id=30185))
|
||||
* Add stub dlls required for MSVC 2015 runtime library (Windows 10)
|
||||
* 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 ntoskrnl.ExAcquireResourceExclusiveLite
|
||||
* Add stub for ntoskrnl.ExDeleteResourceLite
|
||||
* Add stub for ntoskrnl.ExReleaseResourceForThread
|
||||
* Add stub for ntoskrnl.KeWaitForMultipleObjects ([Wine Bug #32186](https://bugs.winehq.org/show_bug.cgi?id=32186))
|
||||
* Add stub for ntoskrnl.Mm{Map,Unmap}LockedPages
|
||||
* Add stub for ntoskrnl.PsRemoveLoadImageNotifyRoutine
|
||||
* Add stub for setupapi.SetupDiSelectBestCompatDrv ([Wine Bug #32088](https://bugs.winehq.org/show_bug.cgi?id=32088))
|
||||
* Add stub for wininet.ParseX509EncodedCertificateForListBoxEntry ([Wine Bug #29842](https://bugs.winehq.org/show_bug.cgi?id=29842))
|
||||
* Add stub for winscard.SCardListReadersA/W ([Wine Bug #26978](https://bugs.winehq.org/show_bug.cgi?id=26978))
|
||||
* Add stub for winspool.SetPrinterW level 8 ([Wine Bug #24645](https://bugs.winehq.org/show_bug.cgi?id=24645))
|
||||
* Add stub for winsta.WinStationEnumerateW ([Wine Bug #38102](https://bugs.winehq.org/show_bug.cgi?id=38102))
|
||||
* Add stub kernel32.FreeUserPhysicalPages ([Wine Bug #39543](https://bugs.winehq.org/show_bug.cgi?id=39543))
|
||||
* Add stubbed ISWbemSecurity interfaces in wbemdisp
|
||||
* Add stubs for D3DXCreateAnimationController interface
|
||||
* Add stubs for additional wininet options in InternetSetOption
|
||||
* Add stubs for advapi32.RegCreateKeyTransacted[A/W]
|
||||
* Add support for CopyFileEx progress callback ([Wine Bug #22692](https://bugs.winehq.org/show_bug.cgi?id=22692))
|
||||
* Add support for GTK3 theming
|
||||
* Add support for GetPropValue to PulseAudio backend
|
||||
* Add support for hiding wine version information from applications ([Wine Bug #38656](https://bugs.winehq.org/show_bug.cgi?id=38656))
|
||||
* Add support for process specific debug channels
|
||||
* Add wined3d detection for GeForce GT 425M ([Wine Bug #35054](https://bugs.winehq.org/show_bug.cgi?id=35054))
|
||||
* Adobe Reader needs ITextSelection_fnGetDuplicate implementation
|
||||
* Allow non-nullterminated string as working directory in kernel32.create_startup_info
|
||||
* Allow selection of audio device for PulseAudio backend
|
||||
* Allow special characters in pipe names ([Wine Bug #28995](https://bugs.winehq.org/show_bug.cgi?id=28995))
|
||||
* Allow to cancel a file operation via progress callback ([Wine Bug #22690](https://bugs.winehq.org/show_bug.cgi?id=22690))
|
||||
* Allow to edit winecfg library override by double clicking
|
||||
* Allow to open files/directories without any access rights in order to query attributes
|
||||
* Allow to override number of quality levels for D3DMULTISAMPLE_NONMASKABLE. ([Wine Bug #12652](https://bugs.winehq.org/show_bug.cgi?id=12652))
|
||||
* Allow to set debug registers separately in NtSetContextThread ([Wine Bug #39454](https://bugs.winehq.org/show_bug.cgi?id=39454))
|
||||
* Allow to set pixel format for desktop window
|
||||
* Allow to specify default display frequency in registry
|
||||
* Also send WM_CAPTURECHANGE when capture has not changed ([Wine Bug #13683](https://bugs.winehq.org/show_bug.cgi?id=13683))
|
||||
* Always use 64-bit registry view on WOW64 setups
|
||||
* Anno 1602 installer depends on Windows 98 behavior of SHFileOperationW ([Wine Bug #37916](https://bugs.winehq.org/show_bug.cgi?id=37916))
|
||||
* Assign a drive serial number during prefix creation/update ([Wine Bug #17823](https://bugs.winehq.org/show_bug.cgi?id=17823))
|
||||
* Audio stuttering and performance drops in multiple applications ([Wine Bug #30639](https://bugs.winehq.org/show_bug.cgi?id=30639))
|
||||
* Avoid crashing when broken app tries to release surface although refcount is zero ([Wine Bug #18477](https://bugs.winehq.org/show_bug.cgi?id=18477))
|
||||
* Avoid race-conditions in NtReadFile() operations with write watches.
|
||||
* Avoid race-conditions of async WSARecv() operations with write watches.
|
||||
* Avoid race-conditions with write watches in WS2_async_accept.
|
||||
* Basic handling of write watches triggered while we're on the signal stack.
|
||||
* Basic support for CUDA
|
||||
* Black & White needs DXTn software decoding support ([Wine Bug #14939](https://bugs.winehq.org/show_bug.cgi?id=14939))
|
||||
* CPU-Z fails to start because GetLogicalProcessorInformationEx returns FALSE
|
||||
* Calculate msvcrt exponential math operations with higher precision ([Wine Bug #37149](https://bugs.winehq.org/show_bug.cgi?id=37149))
|
||||
* Catch invalid memory accesses in imagehlp.CheckSumMappedFile
|
||||
* Check architecture before trying to load libraries ([Wine Bug #38021](https://bugs.winehq.org/show_bug.cgi?id=38021))
|
||||
* Check handle type for HSPFILEQ handles ([Wine Bug #12332](https://bugs.winehq.org/show_bug.cgi?id=12332))
|
||||
* Codepage conversion should fail when destination length is < 0
|
||||
* CompareString should abort on first non-matching character ([Wine Bug #37556](https://bugs.winehq.org/show_bug.cgi?id=37556))
|
||||
* Create Microsoft\Windows\Themes directory during Wineprefix creation ([Wine Bug #34910](https://bugs.winehq.org/show_bug.cgi?id=34910))
|
||||
* 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 fail when a used context is passed to wglShareLists ([Wine Bug #11436](https://bugs.winehq.org/show_bug.cgi?id=11436))
|
||||
* Do not hold reference on parent process in wineserver ([Wine Bug #37087](https://bugs.winehq.org/show_bug.cgi?id=37087))
|
||||
* Do not signal threads until they are really gone
|
||||
* Do not use unixfs for devices without mountpoint
|
||||
* Do not wait for hook thread startup in IDirectInput8::Initialize ([Wine Bug #21403](https://bugs.winehq.org/show_bug.cgi?id=21403))
|
||||
* Ensure NtProtectVirtualMemory and NtCreateSection are on separate pages ([Wine Bug #33162](https://bugs.winehq.org/show_bug.cgi?id=33162))
|
||||
* Ensure default route IP addresses are returned first in gethostbyname ([Wine Bug #22819](https://bugs.winehq.org/show_bug.cgi?id=22819))
|
||||
* Exception during start of fr-043 caused by missing DXTn support ([Wine Bug #37391](https://bugs.winehq.org/show_bug.cgi?id=37391))
|
||||
* Export additional OpenAL32 functions ([Wine Bug #38972](https://bugs.winehq.org/show_bug.cgi?id=38972))
|
||||
* Expose PKEY_AudioEndpoint_PhysicalSpeakers device property in PulseAudio driver
|
||||
* Fake success in IViewObject::Draw stub ([Wine Bug #30611](https://bugs.winehq.org/show_bug.cgi?id=30611))
|
||||
* 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 broken textures in XIII Century: Death or Glory ([Wine Bug #25419](https://bugs.winehq.org/show_bug.cgi?id=25419))
|
||||
* 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))
|
||||
* Fix comparison of punctuation characters in lstrcmp ([Wine Bug #10767](https://bugs.winehq.org/show_bug.cgi?id=10767))
|
||||
* Fix condition mask handling in RtlVerifyVersionInfo ([Wine Bug #36143](https://bugs.winehq.org/show_bug.cgi?id=36143))
|
||||
* Fix crash in Space Rangers2 caused by missing DXTn support ([Wine Bug #24983](https://bugs.winehq.org/show_bug.cgi?id=24983))
|
||||
* Fix crash of winedevice when relocation entry crosses page boundary ([Wine Bug #28254](https://bugs.winehq.org/show_bug.cgi?id=28254))
|
||||
* Fix detection of case-insensitive systems in MSYS2
|
||||
* Fix device paths in HKLM\SYSTEM\MountedDevices ([Wine Bug #38235](https://bugs.winehq.org/show_bug.cgi?id=38235))
|
||||
* Fix error handling in DeferWindowPos when passing an invalid HWND ([Wine Bug #23187](https://bugs.winehq.org/show_bug.cgi?id=23187))
|
||||
* Fix font loading in Capella ([Wine Bug #12377](https://bugs.winehq.org/show_bug.cgi?id=12377))
|
||||
* Fix for ConnectNamedPort return value in overlapped mode ([Wine Bug #16550](https://bugs.winehq.org/show_bug.cgi?id=16550))
|
||||
* Fix for programs leaking wndproc slots ([Wine Bug #32451](https://bugs.winehq.org/show_bug.cgi?id=32451))
|
||||
* Fix graphical corruption in FarCry 3 with NVIDIA drivers ([Wine Bug #35062](https://bugs.winehq.org/show_bug.cgi?id=35062))
|
||||
* Fix handling of ANSI NTLM credentials ([Wine Bug #37063](https://bugs.winehq.org/show_bug.cgi?id=37063))
|
||||
* Fix handling of empty section and key name for profile files. ([Wine Bug #8036](https://bugs.winehq.org/show_bug.cgi?id=8036))
|
||||
* Fix handling of invert_y in DrawTextExW ([Wine Bug #22109](https://bugs.winehq.org/show_bug.cgi?id=22109))
|
||||
* Fix handling of window attributes for WS_EX_LAYERED | WS_EX_COMPOSITED ([Wine Bug #37876](https://bugs.winehq.org/show_bug.cgi?id=37876))
|
||||
* Fix implementation of NtQueryInformationProcess for ProcessDebugFlags
|
||||
* Fix implementation of msvcrt.close when stdout == stderr
|
||||
* Fix issue causing applications to report magic loopback address instead of real IP ([Wine Bug #37271](https://bugs.winehq.org/show_bug.cgi?id=37271))
|
||||
* 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 multithreading issues with fullscreen clipping ([Wine Bug #38087](https://bugs.winehq.org/show_bug.cgi?id=38087))
|
||||
* Fix possible leak of explorer.exe processes and implement proper desktop refcounting
|
||||
* Fix possible segfault in pulse_rd_loop of PulseAudio backend
|
||||
* Fix race-condition when threads are killed during shutdown
|
||||
* Fix return value of ScrollWindowEx for invisible windows ([Wine Bug #37706](https://bugs.winehq.org/show_bug.cgi?id=37706))
|
||||
* Fix scaling behaviour of images and mipmap levels in IDirect3DTexture2_Load (needed for example by Prezzie Hunt)
|
||||
* Fix texture corruption in CSI: Fatal Conspiracy ([Wine Bug #33768](https://bugs.winehq.org/show_bug.cgi?id=33768))
|
||||
* Fix the initialization of combined DACLs when the new DACL is empty ([Wine Bug #38423](https://bugs.winehq.org/show_bug.cgi?id=38423))
|
||||
* Fix unintentional leaks with ntdll internals
|
||||
* Fix wrong colors in Wolfenstein (2009) ([Wine Bug #34692](https://bugs.winehq.org/show_bug.cgi?id=34692))
|
||||
* Fix wrong defition of ntoskrnl.IoReleaseCancelSpinLock function.
|
||||
* Fix wrong version of ID3DXEffect interface for d3dx9_24
|
||||
* Fix wrong version of ID3DXEffect interface for d3dx9_25 ([Wine Bug #25138](https://bugs.winehq.org/show_bug.cgi?id=25138))
|
||||
* GetMessage should remove already seen messages with higher priority ([Wine Bug #28884](https://bugs.winehq.org/show_bug.cgi?id=28884))
|
||||
* GetMonitorInfo returns the same name for all monitors ([Wine Bug #37709](https://bugs.winehq.org/show_bug.cgi?id=37709))
|
||||
* 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))
|
||||
* Ignore socket type for protocol IPPROTO_IPV6 in getaddrinfo
|
||||
* 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 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 default homepage button in inetcpl.cpl
|
||||
* Implement dinput device property DIPROP_USERNAME ([Wine Bug #39667](https://bugs.winehq.org/show_bug.cgi?id=39667))
|
||||
* 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 hal.KeQueryPerformanceCounter ([Wine Bug #39500](https://bugs.winehq.org/show_bug.cgi?id=39500))
|
||||
* Implement locking and synchronization of key states ([Wine Bug #31899](https://bugs.winehq.org/show_bug.cgi?id=31899))
|
||||
* Implement marshalling for TKIND_COCLASS ([Wine Bug #19016](https://bugs.winehq.org/show_bug.cgi?id=19016))
|
||||
* Implement mscoree._CorValidateImage for mono runtime ([Wine Bug #38662](https://bugs.winehq.org/show_bug.cgi?id=38662))
|
||||
* Implement ntoskrnl driver testing framework.
|
||||
* Implement ntoskrnl.KeInitializeMutex
|
||||
* 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 hid.HidP_TranslateUsagesToI8042ScanCodes ([Wine Bug #39447](https://bugs.winehq.org/show_bug.cgi?id=39447))
|
||||
* Implement stub for ntoskrnl.IoGetAttachedDeviceReference
|
||||
* Implement stub for ntoskrnl.KeDelayExecutionThread.
|
||||
* Implement stubless proxies on x86_64 ([Wine Bug #26768](https://bugs.winehq.org/show_bug.cgi?id=26768))
|
||||
* Implement stubs for ntoskrnl.Ex{Acquire,Release}FastMutexUnsafe
|
||||
* Implement stubs for ntoskrnl.ObReferenceObjectByPointer and ntoskrnl.ObDereferenceObject
|
||||
* Implement support for "Purist Mode" (override for all dlls)
|
||||
* Improve INetFwAuthorizedApplication::get_ProcessImageFileName stub
|
||||
* Improve ReadDataAvailable handling in FilePipeLocalInformation class
|
||||
* Improve detection of symbol charset for old truetype fonts ([Wine Bug #33117](https://bugs.winehq.org/show_bug.cgi?id=33117))
|
||||
* Improve startup performance by delaying font initialization
|
||||
* Improve stub for AEV_GetVolumeRange ([Wine Bug #35658](https://bugs.winehq.org/show_bug.cgi?id=35658))
|
||||
* Improve stub for ID3DXEffectImpl_CloneEffect
|
||||
* Improve stub for NtQueryEaFile
|
||||
* Improve stubs for AEV_{Get,Set}MasterVolumeLevel
|
||||
* Improve stubs for AEV_{Get,Set}Mute
|
||||
* Improve stubs for dxgi MakeWindowAssociation and GetWindowAssociation
|
||||
* Improvement for heap allocation performance
|
||||
* Initial implementation of wusa.exe (MSU package installer) ([Wine Bug #26757](https://bugs.winehq.org/show_bug.cgi?id=26757))
|
||||
* Initialize *lpcDevices in RasEnumDevicesA ([Wine Bug #30378](https://bugs.winehq.org/show_bug.cgi?id=30378))
|
||||
* Initialize System\CurrentControlSet\Control\TimeZoneInformation registry keys
|
||||
* 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 ([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))
|
||||
* Multiple applications need EnumDisplayDevicesW implementation ([Wine Bug #34978](https://bugs.winehq.org/show_bug.cgi?id=34978))
|
||||
* Need for Speed 3 installer requires devices in HKEY_DYN_DATA ([Wine Bug #7115](https://bugs.winehq.org/show_bug.cgi?id=7115))
|
||||
* Only set SFGAO_HASSUBFOLDER when there are really subfolders ([Wine Bug #24851](https://bugs.winehq.org/show_bug.cgi?id=24851))
|
||||
* Other Pipelight-specific enhancements
|
||||
* Port Royale doesn't display ocean correctly ([Wine Bug #17913](https://bugs.winehq.org/show_bug.cgi?id=17913))
|
||||
* Prevent window managers from grouping all wine programs together ([Wine Bug #32699](https://bugs.winehq.org/show_bug.cgi?id=32699))
|
||||
* Process APC calls before starting process
|
||||
* Properly close sockets when WSACleanup is called ([Wine Bug #18670](https://bugs.winehq.org/show_bug.cgi?id=18670))
|
||||
* Properly handle multiple registry notifications per key
|
||||
* Properly implement GetLargestConsoleWindowSize ([Wine Bug #10919](https://bugs.winehq.org/show_bug.cgi?id=10919))
|
||||
* Properly implement imagehlp.ImageLoad and ImageUnload ([Wine Bug #23455](https://bugs.winehq.org/show_bug.cgi?id=23455))
|
||||
* Properly initialize caps->dwZBufferBitDepths in ddraw7_GetCaps ([Wine Bug #27002](https://bugs.winehq.org/show_bug.cgi?id=27002))
|
||||
* Properly render themed buttons when they are pressed ([Wine Bug #37584](https://bugs.winehq.org/show_bug.cgi?id=37584))
|
||||
* Reduced SetTimer minimum value from 10 ms to 5 ms (improves Silverlight framerates)
|
||||
* Refresh MDI menus when DefMDIChildProc(WM_SETTEXT) is called ([Wine Bug #21855](https://bugs.winehq.org/show_bug.cgi?id=21855))
|
||||
* Report correct ObjectName for NamedPipe wineserver objects
|
||||
* Return STATUS_INVALID_DEVICE_REQUEST when trying to call NtReadFile on directory
|
||||
* Return WN_NOT_CONNECTED from WNetGetUniversalName REMOTE_NAME_INFO_LEVEL stub ([Wine Bug #39452](https://bugs.winehq.org/show_bug.cgi?id=39452))
|
||||
* Return a valid mesh in D3DXCreateTeapot ([Wine Bug #36884](https://bugs.winehq.org/show_bug.cgi?id=36884))
|
||||
* 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 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
|
||||
* SHFileOperation with FO_MOVE should create new directory on Vista+ ([Wine Bug #25207](https://bugs.winehq.org/show_bug.cgi?id=25207))
|
||||
* SO_CONNECT_TIME returns the appropriate time
|
||||
* Send WM_PAINT event during dialog creation ([Wine Bug #35652](https://bugs.winehq.org/show_bug.cgi?id=35652))
|
||||
* Set EOF on file which has a memory mapping should fail
|
||||
* Set NamedPipeState to FILE_PIPE_CLOSING_STATE on broken pipe in NtQueryInformationFile
|
||||
* Share source of d3dx9_36 with d3dx9_33 to avoid Wine DLL forwards ([Wine Bug #21817](https://bugs.winehq.org/show_bug.cgi?id=21817))
|
||||
* Show unmounted devices in winecfg and allow changing the unix path
|
||||
* Silence repeated FIXME message in surface_cpu_blt
|
||||
* Silence repeated LocaleNameToLCID/LCIDToLocaleName unsupported flags FIXMEs ([Wine Bug #30076](https://bugs.winehq.org/show_bug.cgi?id=30076))
|
||||
* Skip unknown item when decoding a CMS certificate ([Wine Bug #34388](https://bugs.winehq.org/show_bug.cgi?id=34388))
|
||||
* Software support for Environmental Audio Extensions (EAX)
|
||||
* Start SERVICE_FILE_SYSTEM_DRIVER services with winedevice ([Wine Bug #35824](https://bugs.winehq.org/show_bug.cgi?id=35824))
|
||||
* Super Mario 3: Mario Forever fails to load keyboard mapping from profile files. ([Wine Bug #18099](https://bugs.winehq.org/show_bug.cgi?id=18099))
|
||||
* Support for AllocateAndGetTcpExTableFromStack ([Wine Bug #34372](https://bugs.winehq.org/show_bug.cgi?id=34372))
|
||||
* Support for BindImageEx ([Wine Bug #3591](https://bugs.winehq.org/show_bug.cgi?id=3591))
|
||||
* Support for CSMT (command stream) to increase graphic performance ([Wine Bug #11674](https://bugs.winehq.org/show_bug.cgi?id=11674))
|
||||
* Support for CUDA GPU video decoding
|
||||
* Support for D3DXGetShaderInputSemantics ([Wine Bug #22682](https://bugs.winehq.org/show_bug.cgi?id=22682))
|
||||
* Support for DDS file format in D3DXSaveTextureToFileInMemory ([Wine Bug #26898](https://bugs.winehq.org/show_bug.cgi?id=26898))
|
||||
* Support for DOS hidden/system file attributes ([Wine Bug #9158](https://bugs.winehq.org/show_bug.cgi?id=9158))
|
||||
* Support for FileFsFullSizeInformation information class
|
||||
* Support for GetFinalPathNameByHandle ([Wine Bug #34851](https://bugs.winehq.org/show_bug.cgi?id=34851))
|
||||
* Support for H264 DXVA2 GPU video decoding through vaapi
|
||||
* Support for ID3DXFont::DrawTextA/W ([Wine Bug #24754](https://bugs.winehq.org/show_bug.cgi?id=24754))
|
||||
* Support for ID3DXSkinInfoImpl_UpdateSkinnedMesh ([Wine Bug #32572](https://bugs.winehq.org/show_bug.cgi?id=32572))
|
||||
* Support for Junction Points ([Wine Bug #12401](https://bugs.winehq.org/show_bug.cgi?id=12401))
|
||||
* Support for KF_FLAG_DEFAULT_PATH in SHGetKnownFolderPath ([Wine Bug #30385](https://bugs.winehq.org/show_bug.cgi?id=30385))
|
||||
* Support for MPEG2 DXVA2 GPU video decoding through vaapi
|
||||
* Support for NVIDIA video encoder library (nvencodeapi)
|
||||
* Support for NtQuerySection ([Wine Bug #37338](https://bugs.winehq.org/show_bug.cgi?id=37338))
|
||||
* Support for SHCreateSessionKey ([Wine Bug #35630](https://bugs.winehq.org/show_bug.cgi?id=35630))
|
||||
* 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
|
||||
* Support for linux priority levels for faster performance
|
||||
* Support for loader dll redirections
|
||||
* Support for named pipe message mode (Linux only) ([Wine Bug #17195](https://bugs.winehq.org/show_bug.cgi?id=17195))
|
||||
* Support for pasting HTML from Unix applications ([Wine Bug #7372](https://bugs.winehq.org/show_bug.cgi?id=7372))
|
||||
* Support for process ACLs ([Wine Bug #22006](https://bugs.winehq.org/show_bug.cgi?id=22006))
|
||||
* Support for setcap on wine-preloader ([Wine Bug #26256](https://bugs.winehq.org/show_bug.cgi?id=26256))
|
||||
* Support for shell32 file operation progress dialog
|
||||
* Support for stored file ACLs ([Wine Bug #33576](https://bugs.winehq.org/show_bug.cgi?id=33576))
|
||||
* Support for ws2_32.dll.WSAPoll ([Wine Bug #38601](https://bugs.winehq.org/show_bug.cgi?id=38601))
|
||||
* Tumblebugs 2 requires DXTn software encoding support ([Wine Bug #29586](https://bugs.winehq.org/show_bug.cgi?id=29586))
|
||||
* Update a XIM candidate position when cursor location changes ([Wine Bug #30938](https://bugs.winehq.org/show_bug.cgi?id=30938))
|
||||
* Use GLX_MESA_query_renderer extension to get more exact GPU infos
|
||||
* Use NVX_GPU_MEMORY_INFO extension for more exact video memory accounting on NVIDIA graphic cards
|
||||
* Use POSIX implementation to enumerate directory content on FreeBSD ([Wine Bug #35397](https://bugs.winehq.org/show_bug.cgi?id=35397))
|
||||
* Use actual program name if available to describe PulseAudio streams
|
||||
* Use manual relay for RunDLL_CallEntry16 in shell32 ([Wine Bug #23033](https://bugs.winehq.org/show_bug.cgi?id=23033))
|
||||
* Use video memory for rendering targets if possible ([Wine Bug #34906](https://bugs.winehq.org/show_bug.cgi?id=34906))
|
||||
* Use wrapper functions for syscalls to appease Chromium sandbox (32-bit) ([Wine Bug #39403](https://bugs.winehq.org/show_bug.cgi?id=39403))
|
||||
* Voobly expects correct handling of WRITECOPY memory protection ([Wine Bug #29384](https://bugs.winehq.org/show_bug.cgi?id=29384))
|
||||
* Wine ignores IDF_CHECKFIRST flag in SetupPromptForDisk ([Wine Bug #20465](https://bugs.winehq.org/show_bug.cgi?id=20465))
|
||||
* Workaround for shlwapi URLs with relative paths
|
||||
* XEMBED support for embedding Wine windows inside Linux applications
|
||||
* eRacer Demo doesn't correctly display text ([Wine Bug #29598](https://bugs.winehq.org/show_bug.cgi?id=29598))
|
||||
* ntdll is missing WinSqm[Start|End]Session implementation ([Wine Bug #31971](https://bugs.winehq.org/show_bug.cgi?id=31971))
|
||||
Autogenerated script to apply all Wine Staging patches on your Wine
|
||||
source tree.
|
||||
|
||||
Configuration:
|
||||
DESTDIR=path Specify the path to the wine source tree
|
||||
--all Select all patches
|
||||
--force-autoconf Run autoreconf and tools/make_requests after each patch
|
||||
--help Display this help and exit
|
||||
--no-autoconf Do not run autoreconf and tools/make_requests
|
||||
--no-patchlist Do not apply patchlist (needed for 'wine --patches')
|
||||
--upstream-commit Print the upstream Wine commit SHA1 and exit
|
||||
--version Show version information and exit
|
||||
-W patchset Exclude a specific patchset
|
||||
|
||||
Backends:
|
||||
--backend=patch Use regular 'patch' utility to apply patches (default)
|
||||
--backend=epatch Use 'epatch' to apply patches (Gentoo only)
|
||||
--backend=git-am Use 'git am' to apply patches
|
||||
--backend=git-apply Use 'git apply' to apply patches
|
||||
--backend=stg Import the patches using stacked git
|
||||
```
|
||||
|
||||
If you want to apply *all* patches with the `patch` utility, the commandline
|
||||
should look similar to this:
|
||||
```
|
||||
./patches/patchinstall.sh DESTDIR="/path/to/wine" --all
|
||||
```
|
||||
|
||||
Before you proceed with the compilation, please make sure that you installed all
|
||||
additional build dependencies required for the Wine Staging features you are
|
||||
interested in (check output of `./configure`). More information about building
|
||||
Wine Staging, optional build dependencies, and hints for packagers are collected
|
||||
in our [Wiki](https://github.com/wine-compholio/wine-staging/wiki/Packaging).
|
||||
|
||||
Contributing
|
||||
------------
|
||||
|
||||
Wine Staging mainly concentrates on experimental features and patches which are
|
||||
difficult to get into the development branch. If you have a very simple bug fix
|
||||
including tests, there is usually no need to send it to Wine Staging. You can
|
||||
directly contribute it to the
|
||||
[development branch](http://wiki.winehq.org/SubmittingPatches). However, if you
|
||||
already tried that without success, or are working on such a complex area that
|
||||
you do not really think its ready for inclusion, you might want to submit it to
|
||||
our Staging tree. Please open a patch submission request on
|
||||
[bugs.wine-staging.com](https://bugs.wine-staging.com/) including the patch.
|
||||
More information is also available in our
|
||||
[Wiki](https://github.com/wine-compholio/wine-staging/wiki/Contributing).
|
||||
|
@@ -29,7 +29,7 @@ index 758ba43..7ccd3a1 100644
|
||||
wined3d_wndproc_mutex_unlock();
|
||||
}
|
||||
|
||||
+void wined3d_strictdrawing_set(int value)
|
||||
+void CDECL wined3d_strictdrawing_set(int value)
|
||||
+{
|
||||
+ wined3d_settings.strict_draw_ordering = value;
|
||||
+}
|
||||
|
@@ -918,7 +918,7 @@ index 6dbf8c0..9a9fe47 100644
|
||||
+
|
||||
+-----------------------------------------------------------------------
|
||||
+
|
||||
Copyright (c) 1993-2015 the Wine project authors (see the file AUTHORS
|
||||
Copyright (c) 1993-2016 the Wine project authors (see the file AUTHORS
|
||||
for a complete list)
|
||||
|
||||
Wine is free software; you can redistribute it and/or modify it under
|
||||
|
@@ -2,7 +2,7 @@
|
||||
#
|
||||
# Wrapper to apply binary patches without git.
|
||||
#
|
||||
# Copyright (C) 2014-2015 Sebastian Lackner
|
||||
# Copyright (C) 2014-2016 Sebastian Lackner
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
@@ -237,7 +237,7 @@ awk_eof_header='
|
||||
BEGIN{
|
||||
ofs=1;
|
||||
}
|
||||
!/^(--- |\+\+\+ |old |new |copy |rename |similarity |index |GIT |literal |delta )/{
|
||||
!/^(--- |\+\+\+ |old |deleted |new |copy |rename |similarity |index |GIT |literal |delta )/{
|
||||
ofs=0; exit 0;
|
||||
}
|
||||
END{
|
||||
|
@@ -1,44 +1,72 @@
|
||||
From 8e2f184541d44755fa67a43e4d8cf8debeeafc82 Mon Sep 17 00:00:00 2001
|
||||
From f8acf44d20407c213dd1f48691b432c2e9f555df Mon Sep 17 00:00:00 2001
|
||||
From: Dmitry Timoshkov <dmitry@baikal.ru>
|
||||
Date: Fri, 13 Nov 2015 20:36:54 +0800
|
||||
Subject: kernel32: CompareStringW should abort on the first nonmatching
|
||||
character to avoid invalid memory access.
|
||||
character to avoid invalid memory access. (v2)
|
||||
|
||||
For bug 37556.
|
||||
|
||||
Changes in v2 (by Sebastian Lackner):
|
||||
* Use loop to handle strings ending with multiple \0 characters correctly.
|
||||
|
||||
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
|
||||
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
|
||||
---
|
||||
libs/wine/sortkey.c | 15 ++++++---------
|
||||
1 file changed, 6 insertions(+), 9 deletions(-)
|
||||
libs/wine/sortkey.c | 39 ++++++++++++++++++++++++++++++---------
|
||||
1 file changed, 30 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/libs/wine/sortkey.c b/libs/wine/sortkey.c
|
||||
index 17b5537..c459cea 100644
|
||||
index 17b5537..7280501 100644
|
||||
--- a/libs/wine/sortkey.c
|
||||
+++ b/libs/wine/sortkey.c
|
||||
@@ -223,6 +223,8 @@ static inline int compare_unicode_weights(int flags, const WCHAR *str1, int len1
|
||||
@@ -223,6 +223,16 @@ static inline int compare_unicode_weights(int flags, const WCHAR *str1, int len1
|
||||
len1--;
|
||||
len2--;
|
||||
}
|
||||
+ if (len1 && !*str1) len1--;
|
||||
+ if (len2 && !*str2) len2--;
|
||||
+ while (len1 && !*str1)
|
||||
+ {
|
||||
+ str1++;
|
||||
+ len1--;
|
||||
+ }
|
||||
+ while (len2 && !*str2)
|
||||
+ {
|
||||
+ str2++;
|
||||
+ len2--;
|
||||
+ }
|
||||
return len1 - len2;
|
||||
}
|
||||
|
||||
@@ -272,6 +274,8 @@ static inline int compare_diacritic_weights(int flags, const WCHAR *str1, int le
|
||||
@@ -272,6 +282,16 @@ static inline int compare_diacritic_weights(int flags, const WCHAR *str1, int le
|
||||
len1--;
|
||||
len2--;
|
||||
}
|
||||
+ if (len1 && !*str1) len1--;
|
||||
+ if (len2 && !*str2) len2--;
|
||||
+ while (len1 && !*str1)
|
||||
+ {
|
||||
+ str1++;
|
||||
+ len1--;
|
||||
+ }
|
||||
+ while (len2 && !*str2)
|
||||
+ {
|
||||
+ str2++;
|
||||
+ len2--;
|
||||
+ }
|
||||
return len1 - len2;
|
||||
}
|
||||
|
||||
@@ -321,23 +325,16 @@ static inline int compare_case_weights(int flags, const WCHAR *str1, int len1,
|
||||
@@ -321,23 +341,24 @@ static inline int compare_case_weights(int flags, const WCHAR *str1, int len1,
|
||||
len1--;
|
||||
len2--;
|
||||
}
|
||||
+ if (len1 && !*str1) len1--;
|
||||
+ if (len2 && !*str2) len2--;
|
||||
+ while (len1 && !*str1)
|
||||
+ {
|
||||
+ str1++;
|
||||
+ len1--;
|
||||
+ }
|
||||
+ while (len2 && !*str2)
|
||||
+ {
|
||||
+ str2++;
|
||||
+ len2--;
|
||||
+ }
|
||||
return len1 - len2;
|
||||
}
|
||||
|
||||
@@ -60,5 +88,5 @@ index 17b5537..c459cea 100644
|
||||
if (!ret)
|
||||
{
|
||||
--
|
||||
2.6.2
|
||||
2.6.4
|
||||
|
||||
|
@@ -0,0 +1,32 @@
|
||||
From c855cfddc7853fa8aed1ce4aac9a85c7ff7cb1f1 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Fri, 22 Jan 2016 15:13:36 +0100
|
||||
Subject: kenrel32/tests: Add further tests for comparing strings ending with
|
||||
multiple \0 characters.
|
||||
|
||||
---
|
||||
dlls/kernel32/tests/locale.c | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/dlls/kernel32/tests/locale.c b/dlls/kernel32/tests/locale.c
|
||||
index d531272..4a9e540 100644
|
||||
--- a/dlls/kernel32/tests/locale.c
|
||||
+++ b/dlls/kernel32/tests/locale.c
|
||||
@@ -1643,6 +1643,14 @@ static const struct comparestringa_entry comparestringa_data[] = {
|
||||
{ LOCALE_SYSTEM_DEFAULT, SORT_STRINGSORT, "a'", 3, "a\0", 3, CSTR_GREATER_THAN },
|
||||
{ LOCALE_SYSTEM_DEFAULT, NORM_IGNORESYMBOLS, "a.", 3, "a\0", 3, CSTR_EQUAL },
|
||||
{ LOCALE_SYSTEM_DEFAULT, NORM_IGNORESYMBOLS, "a ", 3, "a\0", 3, CSTR_EQUAL },
|
||||
+ { LOCALE_SYSTEM_DEFAULT, 0, "a", 1, "a\0\0", 4, CSTR_EQUAL },
|
||||
+ { LOCALE_SYSTEM_DEFAULT, 0, "a", 2, "a\0\0", 4, CSTR_EQUAL },
|
||||
+ { LOCALE_SYSTEM_DEFAULT, 0, "a\0\0", 4, "a", 1, CSTR_EQUAL },
|
||||
+ { LOCALE_SYSTEM_DEFAULT, 0, "a\0\0", 4, "a", 2, CSTR_EQUAL },
|
||||
+ { LOCALE_SYSTEM_DEFAULT, 0, "a", 1, "a\0x", 4, CSTR_LESS_THAN },
|
||||
+ { LOCALE_SYSTEM_DEFAULT, 0, "a", 2, "a\0x", 4, CSTR_LESS_THAN },
|
||||
+ { LOCALE_SYSTEM_DEFAULT, 0, "a\0x", 4, "a", 1, CSTR_GREATER_THAN },
|
||||
+ { LOCALE_SYSTEM_DEFAULT, 0, "a\0x", 4, "a", 2, CSTR_GREATER_THAN },
|
||||
};
|
||||
|
||||
static void test_CompareStringA(void)
|
||||
--
|
||||
2.6.4
|
||||
|
@@ -0,0 +1,29 @@
|
||||
From c62a9b8f39fcdd2209959e831e3801162b41420c Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Wed, 27 Jan 2016 06:56:09 +0100
|
||||
Subject: kernel32: Do not inherit QT_* environment variables to Windows
|
||||
environment.
|
||||
|
||||
If necessary, QT environment variables can still be set by adding a WINE
|
||||
prefix, for example: WINEQT_QPA_PLATFORM=...
|
||||
---
|
||||
dlls/kernel32/process.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/kernel32/process.c b/dlls/kernel32/process.c
|
||||
index 6e7b23e..bb6c2dd 100644
|
||||
--- a/dlls/kernel32/process.c
|
||||
+++ b/dlls/kernel32/process.c
|
||||
@@ -135,7 +135,8 @@ static inline BOOL is_special_env_var( const char *var )
|
||||
!strncmp( var, "PWD=", sizeof("PWD=")-1 ) ||
|
||||
!strncmp( var, "HOME=", sizeof("HOME=")-1 ) ||
|
||||
!strncmp( var, "TEMP=", sizeof("TEMP=")-1 ) ||
|
||||
- !strncmp( var, "TMP=", sizeof("TMP=")-1 ));
|
||||
+ !strncmp( var, "TMP=", sizeof("TMP=")-1 ) ||
|
||||
+ !strncmp( var, "QT_", sizeof("QT_")-1 ));
|
||||
}
|
||||
|
||||
|
||||
--
|
||||
2.6.4
|
||||
|
1
patches/kernel32-QT_Environment_Variables/definition
Normal file
1
patches/kernel32-QT_Environment_Variables/definition
Normal file
@@ -0,0 +1 @@
|
||||
Fixes: Do not inherit QT_* environment variables to Windows environment
|
@@ -1,20 +1,20 @@
|
||||
From ac9076b71ddda6d430fe80fcfe62a47c2dcc9dc9 Mon Sep 17 00:00:00 2001
|
||||
From 97c810889b2ffe7408c2f185a2e7e399ce13d014 Mon Sep 17 00:00:00 2001
|
||||
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
|
||||
Date: Wed, 20 Aug 2014 15:28:00 -0600
|
||||
Subject: ntdll: Implement storing DOS attributes in NtCreateFile.
|
||||
|
||||
---
|
||||
dlls/ntdll/file.c | 79 ++++++++++++++++++++++++++++----------------
|
||||
dlls/ntdll/tests/directory.c | 22 +++++-------
|
||||
dlls/ntdll/tests/directory.c | 24 +++++---------
|
||||
include/wine/port.h | 2 ++
|
||||
libs/port/xattr.c | 20 +++++++++++
|
||||
4 files changed, 80 insertions(+), 43 deletions(-)
|
||||
4 files changed, 81 insertions(+), 44 deletions(-)
|
||||
|
||||
diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c
|
||||
index 521ab64..b4187d4 100644
|
||||
index 17ad605..2381e3c 100644
|
||||
--- a/dlls/ntdll/file.c
|
||||
+++ b/dlls/ntdll/file.c
|
||||
@@ -205,6 +205,21 @@ int get_file_info( const char *path, struct stat *st, ULONG *attr )
|
||||
@@ -223,6 +223,21 @@ int get_file_info( const char *path, struct stat *st, ULONG *attr )
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@ index 521ab64..b4187d4 100644
|
||||
/**************************************************************************
|
||||
* FILE_CreateFile (internal)
|
||||
* Open a file.
|
||||
@@ -216,6 +231,8 @@ static NTSTATUS FILE_CreateFile( PHANDLE handle, ACCESS_MASK access, POBJECT_ATT
|
||||
@@ -234,6 +249,8 @@ static NTSTATUS FILE_CreateFile( PHANDLE handle, ACCESS_MASK access, POBJECT_ATT
|
||||
ULONG attributes, ULONG sharing, ULONG disposition,
|
||||
ULONG options, PVOID ea_buffer, ULONG ea_length )
|
||||
{
|
||||
@@ -45,7 +45,7 @@ index 521ab64..b4187d4 100644
|
||||
ANSI_STRING unix_name;
|
||||
BOOL created = FALSE;
|
||||
|
||||
@@ -259,39 +276,37 @@ static NTSTATUS FILE_CreateFile( PHANDLE handle, ACCESS_MASK access, POBJECT_ATT
|
||||
@@ -287,39 +304,37 @@ static NTSTATUS FILE_CreateFile( PHANDLE handle, ACCESS_MASK access, POBJECT_ATT
|
||||
io->u.Status = STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
@@ -112,7 +112,7 @@ index 521ab64..b4187d4 100644
|
||||
|
||||
if (io->u.Status == STATUS_SUCCESS)
|
||||
{
|
||||
@@ -313,6 +328,11 @@ static NTSTATUS FILE_CreateFile( PHANDLE handle, ACCESS_MASK access, POBJECT_ATT
|
||||
@@ -341,6 +356,11 @@ static NTSTATUS FILE_CreateFile( PHANDLE handle, ACCESS_MASK access, POBJECT_ATT
|
||||
io->Information = FILE_OVERWRITTEN;
|
||||
break;
|
||||
}
|
||||
@@ -124,7 +124,7 @@ index 521ab64..b4187d4 100644
|
||||
}
|
||||
else if (io->u.Status == STATUS_TOO_MANY_OPENED_FILES)
|
||||
{
|
||||
@@ -320,6 +340,7 @@ static NTSTATUS FILE_CreateFile( PHANDLE handle, ACCESS_MASK access, POBJECT_ATT
|
||||
@@ -348,6 +368,7 @@ static NTSTATUS FILE_CreateFile( PHANDLE handle, ACCESS_MASK access, POBJECT_ATT
|
||||
if (!once++) ERR_(winediag)( "Too many open files, ulimit -n probably needs to be increased\n" );
|
||||
}
|
||||
|
||||
@@ -133,7 +133,7 @@ index 521ab64..b4187d4 100644
|
||||
}
|
||||
|
||||
diff --git a/dlls/ntdll/tests/directory.c b/dlls/ntdll/tests/directory.c
|
||||
index f190ff4..68b5406 100644
|
||||
index 7b1002a..aa8e97f 100644
|
||||
--- a/dlls/ntdll/tests/directory.c
|
||||
+++ b/dlls/ntdll/tests/directory.c
|
||||
@@ -51,7 +51,6 @@ static NTSTATUS (WINAPI *pRtlWow64EnableFsRedirectionEx)( ULONG disable, ULONG *
|
||||
@@ -144,10 +144,11 @@ index f190ff4..68b5406 100644
|
||||
BOOL attr_done; /* set if attributes were tested for this file already */
|
||||
const DWORD attr; /* desired attribute */
|
||||
const char *name; /* filename to use */
|
||||
@@ -60,13 +59,13 @@ static struct testfile_s {
|
||||
@@ -60,14 +59,14 @@ static struct testfile_s {
|
||||
int nfound; /* How many were found (expect 1) */
|
||||
WCHAR nameW[20]; /* unicode version of name (filled in later) */
|
||||
} testfiles[] = {
|
||||
- { 0, 0, FILE_ATTRIBUTE_NORMAL, "longfilename.tmp", NULL, "normal" },
|
||||
- { 0, 0, FILE_ATTRIBUTE_NORMAL, "n.tmp", NULL, "normal" },
|
||||
- { 1, 0, FILE_ATTRIBUTE_HIDDEN, "h.tmp", NULL, "hidden" },
|
||||
- { 1, 0, FILE_ATTRIBUTE_SYSTEM, "s.tmp", NULL, "system" },
|
||||
@@ -155,6 +156,7 @@ index f190ff4..68b5406 100644
|
||||
- { 0, 0, FILE_ATTRIBUTE_DIRECTORY, ".", NULL, ". directory" },
|
||||
- { 0, 0, FILE_ATTRIBUTE_DIRECTORY, "..", NULL, ".. directory" },
|
||||
- { 0, 0, 0, NULL }
|
||||
+ { 0, FILE_ATTRIBUTE_NORMAL, "longfilename.tmp", NULL, "normal" },
|
||||
+ { 0, FILE_ATTRIBUTE_NORMAL, "n.tmp", NULL, "normal" },
|
||||
+ { 0, FILE_ATTRIBUTE_HIDDEN, "h.tmp", NULL, "hidden" },
|
||||
+ { 0, FILE_ATTRIBUTE_SYSTEM, "s.tmp", NULL, "system" },
|
||||
@@ -165,7 +167,7 @@ index f190ff4..68b5406 100644
|
||||
};
|
||||
static const int max_test_dir_size = 20; /* size of above plus some for .. etc */
|
||||
|
||||
@@ -147,12 +146,7 @@ static void tally_test_file(FILE_BOTH_DIRECTORY_INFORMATION *dir_info)
|
||||
@@ -148,12 +147,7 @@ static void tally_test_file(FILE_BOTH_DIRECTORY_INFORMATION *dir_info)
|
||||
if (namelen != len || memcmp(nameW, testfiles[i].nameW, len*sizeof(WCHAR)))
|
||||
continue;
|
||||
if (!testfiles[i].attr_done) {
|
||||
@@ -180,7 +182,7 @@ index f190ff4..68b5406 100644
|
||||
}
|
||||
testfiles[i].nfound++;
|
||||
diff --git a/include/wine/port.h b/include/wine/port.h
|
||||
index cc572f3..9e2b8165 100644
|
||||
index 445a25e..04ae7a6 100644
|
||||
--- a/include/wine/port.h
|
||||
+++ b/include/wine/port.h
|
||||
@@ -373,6 +373,8 @@ extern int xattr_fget( int filedes, const char *name, void *value, size_t size )
|
||||
@@ -221,5 +223,5 @@ index 6918c99..683e7a6 100644
|
||||
+#endif
|
||||
+}
|
||||
--
|
||||
1.9.1
|
||||
2.7.1
|
||||
|
||||
|
@@ -0,0 +1,46 @@
|
||||
From 5a419298c1871c0d71a2892d6ac4b517288b3563 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Thu, 14 Jan 2016 23:09:19 +0100
|
||||
Subject: ntdll: Always store SAMBA_XATTR_DOS_ATTRIB when path could be
|
||||
interpreted as hidden.
|
||||
|
||||
---
|
||||
dlls/ntdll/file.c | 13 ++++++++-----
|
||||
1 file changed, 8 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c
|
||||
index 50b0042..b38698f 100644
|
||||
--- a/dlls/ntdll/file.c
|
||||
+++ b/dlls/ntdll/file.c
|
||||
@@ -213,12 +213,15 @@ int get_file_info( const char *path, struct stat *st, ULONG *attr )
|
||||
if (S_ISDIR( st->st_mode )) *attr |= FILE_ATTRIBUTE_REPARSE_POINT;
|
||||
}
|
||||
*attr |= get_file_attributes( st );
|
||||
- /* convert Unix-style hidden files to a DOS hidden file attribute */
|
||||
- if (DIR_is_hidden_file( path ))
|
||||
- *attr |= FILE_ATTRIBUTE_HIDDEN;
|
||||
/* retrieve any stored DOS attributes */
|
||||
len = xattr_get( path, SAMBA_XATTR_DOS_ATTRIB, hexattr, sizeof(hexattr)-1 );
|
||||
- if (len == -1) return ret;
|
||||
+ if (len == -1)
|
||||
+ {
|
||||
+ /* convert Unix-style hidden files to a DOS hidden file attribute */
|
||||
+ if (DIR_is_hidden_file( path ))
|
||||
+ *attr |= FILE_ATTRIBUTE_HIDDEN;
|
||||
+ return ret;
|
||||
+ }
|
||||
*attr |= get_file_xattr( hexattr, len );
|
||||
return ret;
|
||||
}
|
||||
@@ -231,7 +234,7 @@ NTSTATUS set_file_info( const char *path, ULONG attr )
|
||||
/* Note: unix mode already set when called this way */
|
||||
attr &= ~FILE_ATTRIBUTE_NORMAL; /* do not store everything, but keep everything Samba can use */
|
||||
len = sprintf( hexattr, "0x%x", attr );
|
||||
- if (attr != 0)
|
||||
+ if (attr != 0 || DIR_is_hidden_file( path ))
|
||||
xattr_set( path, SAMBA_XATTR_DOS_ATTRIB, hexattr, len );
|
||||
else
|
||||
xattr_remove( path, SAMBA_XATTR_DOS_ATTRIB );
|
||||
--
|
||||
2.6.4
|
||||
|
@@ -1,61 +0,0 @@
|
||||
From f70ddf43d18cfeae70f0021005048c628b08c2b3 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Sun, 29 Nov 2015 00:34:04 +0100
|
||||
Subject: ntdll: Allow to set debug registers separately in NtSetContextThread.
|
||||
|
||||
---
|
||||
dlls/ntdll/signal_x86_64.c | 28 ++++++++++++++++++++++++++--
|
||||
1 file changed, 26 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/ntdll/signal_x86_64.c b/dlls/ntdll/signal_x86_64.c
|
||||
index 524de68..abe2072 100644
|
||||
--- a/dlls/ntdll/signal_x86_64.c
|
||||
+++ b/dlls/ntdll/signal_x86_64.c
|
||||
@@ -1800,11 +1800,12 @@ __ASM_GLOBAL_FUNC( RtlCaptureContext,
|
||||
"ret" );
|
||||
|
||||
/***********************************************************************
|
||||
- * set_cpu_context
|
||||
+ * __wine_restore_regs
|
||||
*
|
||||
* Set the new CPU context.
|
||||
*/
|
||||
-__ASM_GLOBAL_FUNC( set_cpu_context,
|
||||
+extern void __wine_restore_regs( const CONTEXT *context );
|
||||
+__ASM_GLOBAL_FUNC( __wine_restore_regs,
|
||||
"subq $40,%rsp\n\t"
|
||||
__ASM_CFI(".cfi_adjust_cfa_offset 40\n\t")
|
||||
"ldmxcsr 0x34(%rdi)\n\t" /* context->MxCsr */
|
||||
@@ -1852,6 +1853,29 @@ __ASM_GLOBAL_FUNC( set_cpu_context,
|
||||
"movq 0xb0(%rdi),%rdi\n\t" /* context->Rdi */
|
||||
"iretq" );
|
||||
|
||||
+
|
||||
+/***********************************************************************
|
||||
+ * set_cpu_context
|
||||
+ *
|
||||
+ * Set the new CPU context. Used by NtSetContextThread.
|
||||
+ */
|
||||
+void set_cpu_context( const CONTEXT *context )
|
||||
+{
|
||||
+ DWORD flags = context->ContextFlags & ~CONTEXT_AMD64;
|
||||
+
|
||||
+ if (flags & CONTEXT_DEBUG_REGISTERS)
|
||||
+ FIXME( "setting debug registers not supported\n" );
|
||||
+
|
||||
+ if (flags & CONTEXT_FULL)
|
||||
+ {
|
||||
+ if (!(flags & CONTEXT_CONTROL))
|
||||
+ FIXME( "setting partial context (%x) not supported\n", flags );
|
||||
+ else
|
||||
+ __wine_restore_regs( context );
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+
|
||||
/***********************************************************************
|
||||
* copy_context
|
||||
*
|
||||
--
|
||||
2.6.2
|
||||
|
@@ -1 +0,0 @@
|
||||
Fixes: [39454] Allow to set debug registers separately in NtSetContextThread
|
@@ -2,7 +2,7 @@
|
||||
#
|
||||
# Script to automatically install all Wine Staging patches
|
||||
#
|
||||
# Copyright (C) 2015 Sebastian Lackner
|
||||
# Copyright (C) 2015-2016 Sebastian Lackner
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
@@ -26,16 +26,15 @@ usage()
|
||||
echo "Usage: ./patchinstall.sh [DESTDIR=path] [--all] [-W patchset] [patchset ...]"
|
||||
echo ""
|
||||
echo "Autogenerated script to apply all Wine Staging patches on your Wine"
|
||||
echo "source tree. This script replaces and enhances the old method of"
|
||||
echo "using a Makefile."
|
||||
echo "source tree."
|
||||
echo ""
|
||||
echo "Configuration:"
|
||||
echo " DESTDIR=path Specify the path to the wine source tree"
|
||||
echo " --all Select all patches"
|
||||
echo " --force-autoconf Run autoreconf and tools/make_requests after each patch"
|
||||
echo " --help Display this help and exit"
|
||||
echo " --no-patchlist Do not apply patchlist (needed for 'wine --patches')"
|
||||
echo " --no-autoconf Do not run autoreconf and tools/make_requests"
|
||||
echo " --no-patchlist Do not apply patchlist (needed for 'wine --patches')"
|
||||
echo " --upstream-commit Print the upstream Wine commit SHA1 and exit"
|
||||
echo " --version Show version information and exit"
|
||||
echo " -W patchset Exclude a specific patchset"
|
||||
@@ -52,14 +51,14 @@ usage()
|
||||
# Get the upstream commit sha
|
||||
upstream_commit()
|
||||
{
|
||||
echo "a981d3738014339cd0fae1e7f5aa9429222ee03d"
|
||||
echo "84cae8c3ea2614fce65d5d499159de9d530444ef"
|
||||
}
|
||||
|
||||
# Show version information
|
||||
version()
|
||||
{
|
||||
echo "Wine Staging 1.8"
|
||||
echo "Copyright (C) 2014-2015 the Wine Staging project authors."
|
||||
echo "Wine Staging 1.8.1"
|
||||
echo "Copyright (C) 2014-2016 the Wine Staging project authors."
|
||||
echo ""
|
||||
echo "Patchset to be applied on upstream Wine:"
|
||||
echo " commit $(upstream_commit)"
|
||||
@@ -163,6 +162,7 @@ patch_enable_all ()
|
||||
enable_kernel32_Named_Pipe="$1"
|
||||
enable_kernel32_NeedCurrentDirectoryForExePath="$1"
|
||||
enable_kernel32_Profile="$1"
|
||||
enable_kernel32_QT_Environment_Variables="$1"
|
||||
enable_kernel32_SetFileCompletionNotificationModes="$1"
|
||||
enable_kernel32_SetFileInformationByHandle="$1"
|
||||
enable_kernel32_TimezoneInformation_Registry="$1"
|
||||
@@ -220,7 +220,6 @@ patch_enable_all ()
|
||||
enable_ntdll_WinSqm="$1"
|
||||
enable_ntdll_WriteWatches="$1"
|
||||
enable_ntdll_Zero_mod_name="$1"
|
||||
enable_ntdll_x86_64_set_cpu_context="$1"
|
||||
enable_ntoskrnl_DriverTest="$1"
|
||||
enable_ntoskrnl_Stubs="$1"
|
||||
enable_nvapi_Stub_DLL="$1"
|
||||
@@ -603,6 +602,9 @@ patch_enable ()
|
||||
kernel32-Profile)
|
||||
enable_kernel32_Profile="$2"
|
||||
;;
|
||||
kernel32-QT_Environment_Variables)
|
||||
enable_kernel32_QT_Environment_Variables="$2"
|
||||
;;
|
||||
kernel32-SetFileCompletionNotificationModes)
|
||||
enable_kernel32_SetFileCompletionNotificationModes="$2"
|
||||
;;
|
||||
@@ -774,9 +776,6 @@ patch_enable ()
|
||||
ntdll-Zero_mod_name)
|
||||
enable_ntdll_Zero_mod_name="$2"
|
||||
;;
|
||||
ntdll-x86_64_set_cpu_context)
|
||||
enable_ntdll_x86_64_set_cpu_context="$2"
|
||||
;;
|
||||
ntoskrnl-DriverTest)
|
||||
enable_ntoskrnl_DriverTest="$2"
|
||||
;;
|
||||
@@ -3396,9 +3395,11 @@ fi
|
||||
if test "$enable_kernel32_CompareString_Length" -eq 1; then
|
||||
patch_apply kernel32-CompareString_Length/0001-kernel32-CompareStringW-should-abort-on-the-first-no.patch
|
||||
patch_apply kernel32-CompareString_Length/0002-kernel32-tests-Add-some-more-tests-for-NORM_IGNORESY.patch
|
||||
patch_apply kernel32-CompareString_Length/0003-kenrel32-tests-Add-further-tests-for-comparing-strin.patch
|
||||
(
|
||||
echo '+ { "Dmitry Timoshkov", "kernel32: CompareStringW should abort on the first nonmatching character to avoid invalid memory access.", 1 },';
|
||||
echo '+ { "Dmitry Timoshkov", "kernel32: CompareStringW should abort on the first nonmatching character to avoid invalid memory access.", 2 },';
|
||||
echo '+ { "Sebastian Lackner", "kernel32/tests: Add some more tests for NORM_IGNORESYMBOLS.", 1 },';
|
||||
echo '+ { "Sebastian Lackner", "kenrel32/tests: Add further tests for comparing strings ending with multiple \\\\0 characters.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
@@ -3696,6 +3697,18 @@ if test "$enable_kernel32_Profile" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset kernel32-QT_Environment_Variables
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/kernel32/process.c
|
||||
# |
|
||||
if test "$enable_kernel32_QT_Environment_Variables" -eq 1; then
|
||||
patch_apply kernel32-QT_Environment_Variables/0001-kernel32-Do-not-inherit-QT_-environment-variables-to.patch
|
||||
(
|
||||
echo '+ { "Sebastian Lackner", "kernel32: Do not inherit QT_* environment variables to Windows environment.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset kernel32-SetFileCompletionNotificationModes
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
@@ -4053,6 +4066,7 @@ if test "$enable_ntdll_DOS_Attributes" -eq 1; then
|
||||
patch_apply ntdll-DOS_Attributes/0005-libport-Add-support-for-Mac-OS-X-style-extended-attr.patch
|
||||
patch_apply ntdll-DOS_Attributes/0006-libport-Add-support-for-FreeBSD-style-extended-attri.patch
|
||||
patch_apply ntdll-DOS_Attributes/0007-ntdll-Perform-the-Unix-style-hidden-file-check-withi.patch
|
||||
patch_apply ntdll-DOS_Attributes/0008-ntdll-Always-store-SAMBA_XATTR_DOS_ATTRIB-when-path-.patch
|
||||
(
|
||||
echo '+ { "Erich E. Hoover", "ntdll: Implement retrieving DOS attributes in NtQueryInformationFile.", 1 },';
|
||||
echo '+ { "Erich E. Hoover", "ntdll: Implement retrieving DOS attributes in NtQuery[Full]AttributesFile and NtQueryDirectoryFile.", 1 },';
|
||||
@@ -4061,6 +4075,7 @@ if test "$enable_ntdll_DOS_Attributes" -eq 1; then
|
||||
echo '+ { "Erich E. Hoover", "libport: Add support for Mac OS X style extended attributes.", 1 },';
|
||||
echo '+ { "Erich E. Hoover", "libport: Add support for FreeBSD style extended attributes.", 1 },';
|
||||
echo '+ { "Erich E. Hoover", "ntdll: Perform the Unix-style hidden file check within the unified file info grabbing routine.", 1 },';
|
||||
echo '+ { "Sebastian Lackner", "ntdll: Always store SAMBA_XATTR_DOS_ATTRIB when path could be interpreted as hidden.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
@@ -4557,21 +4572,6 @@ if test "$enable_ntdll_Zero_mod_name" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset ntdll-x86_64_set_cpu_context
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#39454] Allow to set debug registers separately in NtSetContextThread
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/ntdll/signal_x86_64.c
|
||||
# |
|
||||
if test "$enable_ntdll_x86_64_set_cpu_context" -eq 1; then
|
||||
patch_apply ntdll-x86_64_set_cpu_context/0001-ntdll-Allow-to-set-debug-registers-separately-in-NtS.patch
|
||||
(
|
||||
echo '+ { "Sebastian Lackner", "ntdll: Allow to set debug registers separately in NtSetContextThread.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset ntoskrnl-DriverTest
|
||||
# |
|
||||
# | Modified files:
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 5fd25633a2e78ad336af898e466f4afc2e2ab1a0 Mon Sep 17 00:00:00 2001
|
||||
From 188253a48866f5120620f71087ace68b16e8ab10 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Stefan=20D=C3=B6singer?= <stefan@codeweavers.com>
|
||||
Date: Tue, 21 Jan 2014 12:22:30 +0100
|
||||
Subject: wined3d: Move surface locations into the resource.
|
||||
@@ -60,7 +60,7 @@ index 3761830..943a829 100644
|
||||
else
|
||||
SetRectEmpty(¤t_rect);
|
||||
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
|
||||
index 94934a5..c971031 100644
|
||||
index 51cf4f7..8611f9c 100644
|
||||
--- a/dlls/wined3d/surface.c
|
||||
+++ b/dlls/wined3d/surface.c
|
||||
@@ -556,7 +556,7 @@ static void surface_prepare_system_memory(struct wined3d_surface *surface)
|
||||
@@ -153,15 +153,14 @@ index 94934a5..c971031 100644
|
||||
{
|
||||
w = surface->ds_current_size.cx;
|
||||
h = surface->ds_current_size.cy;
|
||||
@@ -3810,21 +3811,21 @@ void surface_load_ds_location(struct wined3d_surface *surface, struct wined3d_co
|
||||
return;
|
||||
@@ -3811,20 +3812,20 @@ void surface_load_ds_location(struct wined3d_surface *surface, struct wined3d_co
|
||||
}
|
||||
|
||||
wined3d_surface_prepare(surface, context, location);
|
||||
- if (surface->locations & WINED3D_LOCATION_DISCARDED)
|
||||
+ if (surface->resource.locations & WINED3D_LOCATION_DISCARDED)
|
||||
{
|
||||
TRACE("Surface was discarded, no need copy data.\n");
|
||||
wined3d_surface_prepare(surface, context, location);
|
||||
- surface->locations &= ~WINED3D_LOCATION_DISCARDED;
|
||||
- surface->locations |= location;
|
||||
+ surface->resource.locations &= ~WINED3D_LOCATION_DISCARDED;
|
||||
@@ -414,10 +413,10 @@ index 94934a5..c971031 100644
|
||||
/* Upload */
|
||||
if (scale)
|
||||
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
|
||||
index 93ede78..91a5495 100644
|
||||
index 6e55345..d174690 100644
|
||||
--- a/dlls/wined3d/wined3d_private.h
|
||||
+++ b/dlls/wined3d/wined3d_private.h
|
||||
@@ -2409,7 +2409,6 @@ struct wined3d_surface
|
||||
@@ -2410,7 +2410,6 @@ struct wined3d_surface
|
||||
const struct wined3d_surface_ops *surface_ops;
|
||||
struct wined3d_texture *container;
|
||||
void *user_memory;
|
||||
@@ -426,5 +425,5 @@ index 93ede78..91a5495 100644
|
||||
DWORD flags;
|
||||
|
||||
--
|
||||
2.6.2
|
||||
2.7.1
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
||||
From 864636075386f9057b53c8e076978d95dd782360 Mon Sep 17 00:00:00 2001
|
||||
From f4b934195547ad54ccb5d5adbde92f982e362723 Mon Sep 17 00:00:00 2001
|
||||
From: Ken Thomases <ken@codeweavers.com>
|
||||
Date: Sun, 14 Sep 2014 19:46:53 -0500
|
||||
Subject: Revert "wined3d: Track if a context's private hdc has had its pixel
|
||||
@@ -11,10 +11,10 @@ This reverts commit f3aa4812382caa459b9b612f66998c6ea8257594.
|
||||
2 files changed, 6 insertions(+), 19 deletions(-)
|
||||
|
||||
diff --git a/dlls/wined3d/context.c b/dlls/wined3d/context.c
|
||||
index d3f7629..11c8804 100644
|
||||
index d83cad5..c11dd08 100644
|
||||
--- a/dlls/wined3d/context.c
|
||||
+++ b/dlls/wined3d/context.c
|
||||
@@ -800,13 +800,9 @@ static BOOL context_restore_pixel_format(struct wined3d_context *ctx)
|
||||
@@ -815,13 +815,9 @@ static BOOL context_restore_pixel_format(struct wined3d_context *ctx)
|
||||
static BOOL context_set_pixel_format(struct wined3d_context *context, HDC dc, BOOL private, int format)
|
||||
{
|
||||
const struct wined3d_gl_info *gl_info = context->gl_info;
|
||||
@@ -30,7 +30,7 @@ index d3f7629..11c8804 100644
|
||||
|
||||
if (!current)
|
||||
{
|
||||
@@ -820,7 +816,7 @@ static BOOL context_set_pixel_format(struct wined3d_context *context, HDC dc, BO
|
||||
@@ -835,7 +831,7 @@ static BOOL context_set_pixel_format(struct wined3d_context *context, HDC dc, BO
|
||||
|
||||
context->restore_pf = 0;
|
||||
context->restore_pf_win = private ? NULL : WindowFromDC(dc);
|
||||
@@ -39,7 +39,7 @@ index d3f7629..11c8804 100644
|
||||
}
|
||||
|
||||
/* By default WGL doesn't allow pixel format adjustments but we need it
|
||||
@@ -847,7 +843,7 @@ static BOOL context_set_pixel_format(struct wined3d_context *context, HDC dc, BO
|
||||
@@ -862,7 +858,7 @@ static BOOL context_set_pixel_format(struct wined3d_context *context, HDC dc, BO
|
||||
context->restore_pf_win = win;
|
||||
}
|
||||
|
||||
@@ -48,7 +48,7 @@ index d3f7629..11c8804 100644
|
||||
}
|
||||
|
||||
/* OpenGL doesn't allow pixel format adjustments. Print an error and
|
||||
@@ -857,11 +853,6 @@ static BOOL context_set_pixel_format(struct wined3d_context *context, HDC dc, BO
|
||||
@@ -872,11 +868,6 @@ static BOOL context_set_pixel_format(struct wined3d_context *context, HDC dc, BO
|
||||
ERR("Unable to set pixel format %d on device context %p. Already using format %d.\n",
|
||||
format, dc, current);
|
||||
return TRUE;
|
||||
@@ -60,7 +60,7 @@ index d3f7629..11c8804 100644
|
||||
}
|
||||
|
||||
static BOOL context_set_gl_context(struct wined3d_context *ctx)
|
||||
@@ -947,7 +938,6 @@ static void context_update_window(struct wined3d_context *context)
|
||||
@@ -962,7 +953,6 @@ static void context_update_window(struct wined3d_context *context)
|
||||
|
||||
context->win_handle = context->swapchain->win_handle;
|
||||
context->hdc_is_private = FALSE;
|
||||
@@ -68,7 +68,7 @@ index d3f7629..11c8804 100644
|
||||
context->needs_set = 1;
|
||||
context->valid = 1;
|
||||
|
||||
@@ -1189,8 +1179,7 @@ static void context_enter(struct wined3d_context *context)
|
||||
@@ -1223,8 +1213,7 @@ static void context_enter(struct wined3d_context *context)
|
||||
context->restore_dc = wglGetCurrentDC();
|
||||
context->needs_set = 1;
|
||||
}
|
||||
@@ -78,7 +78,7 @@ index d3f7629..11c8804 100644
|
||||
context->needs_set = 1;
|
||||
}
|
||||
}
|
||||
@@ -1598,7 +1587,6 @@ struct wined3d_context *context_create(struct wined3d_swapchain *swapchain,
|
||||
@@ -1662,7 +1651,6 @@ struct wined3d_context *context_create(struct wined3d_swapchain *swapchain,
|
||||
ret->win_handle = swapchain->win_handle;
|
||||
ret->hdc = hdc;
|
||||
ret->hdc_is_private = hdc_is_private;
|
||||
@@ -87,20 +87,20 @@ index d3f7629..11c8804 100644
|
||||
ret->needs_set = 1;
|
||||
|
||||
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
|
||||
index 4373805..d98fcae 100644
|
||||
index 3000ab5..6dbf52e 100644
|
||||
--- a/dlls/wined3d/wined3d_private.h
|
||||
+++ b/dlls/wined3d/wined3d_private.h
|
||||
@@ -1158,9 +1158,8 @@ struct wined3d_context
|
||||
@@ -1195,9 +1195,8 @@ struct wined3d_context
|
||||
DWORD rebind_fbo : 1;
|
||||
DWORD needs_set : 1;
|
||||
DWORD hdc_is_private : 1;
|
||||
- DWORD hdc_has_format : 1; /* only meaningful if hdc_is_private */
|
||||
DWORD update_shader_resource_bindings : 1;
|
||||
- DWORD padding : 15;
|
||||
+ DWORD padding : 16;
|
||||
- DWORD padding : 14;
|
||||
+ DWORD padding : 15;
|
||||
DWORD shader_update_mask;
|
||||
DWORD constant_update_mask;
|
||||
DWORD numbered_array_mask;
|
||||
--
|
||||
2.2.1
|
||||
2.7.1
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From cb2d95c1590eb4e9e8eb18ad81297d30dc8b9f85 Mon Sep 17 00:00:00 2001
|
||||
From eb2f60a5106f76e9d1d8666edb4161ee091dc41e Mon Sep 17 00:00:00 2001
|
||||
From: Ken Thomases <ken@codeweavers.com>
|
||||
Date: Sun, 14 Sep 2014 19:47:03 -0500
|
||||
Subject: Revert "wined3d: Track if a context's hdc is private so we never need
|
||||
@@ -11,10 +11,10 @@ This reverts commit 272873823e9beff91ea1a62845fc7e5f94a9636f.
|
||||
2 files changed, 9 insertions(+), 15 deletions(-)
|
||||
|
||||
diff --git a/dlls/wined3d/context.c b/dlls/wined3d/context.c
|
||||
index 40b5ef1..0e3d539 100644
|
||||
index c11dd08..10e484c 100644
|
||||
--- a/dlls/wined3d/context.c
|
||||
+++ b/dlls/wined3d/context.c
|
||||
@@ -797,7 +797,7 @@ static BOOL context_restore_pixel_format(struct wined3d_context *ctx)
|
||||
@@ -812,7 +812,7 @@ static BOOL context_restore_pixel_format(struct wined3d_context *ctx)
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@ index 40b5ef1..0e3d539 100644
|
||||
{
|
||||
const struct wined3d_gl_info *gl_info = context->gl_info;
|
||||
int current = GetPixelFormat(dc);
|
||||
@@ -815,7 +815,7 @@ static BOOL context_set_pixel_format(struct wined3d_context *context, HDC dc, BO
|
||||
@@ -830,7 +830,7 @@ static BOOL context_set_pixel_format(struct wined3d_context *context, HDC dc, BO
|
||||
}
|
||||
|
||||
context->restore_pf = 0;
|
||||
@@ -32,7 +32,7 @@ index 40b5ef1..0e3d539 100644
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -834,12 +834,12 @@ static BOOL context_set_pixel_format(struct wined3d_context *context, HDC dc, BO
|
||||
@@ -849,12 +849,12 @@ static BOOL context_set_pixel_format(struct wined3d_context *context, HDC dc, BO
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -47,7 +47,7 @@ index 40b5ef1..0e3d539 100644
|
||||
context->restore_pf_win = win;
|
||||
}
|
||||
|
||||
@@ -860,7 +860,7 @@ static BOOL context_set_gl_context(struct wined3d_context *ctx)
|
||||
@@ -875,7 +875,7 @@ static BOOL context_set_gl_context(struct wined3d_context *ctx)
|
||||
struct wined3d_swapchain *swapchain = ctx->swapchain;
|
||||
BOOL backup = FALSE;
|
||||
|
||||
@@ -56,7 +56,7 @@ index 40b5ef1..0e3d539 100644
|
||||
{
|
||||
WARN("Failed to set pixel format %d on device context %p.\n",
|
||||
ctx->pixel_format, ctx->hdc);
|
||||
@@ -893,7 +893,7 @@ static BOOL context_set_gl_context(struct wined3d_context *ctx)
|
||||
@@ -908,7 +908,7 @@ static BOOL context_set_gl_context(struct wined3d_context *ctx)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -65,7 +65,7 @@ index 40b5ef1..0e3d539 100644
|
||||
{
|
||||
ERR("Failed to set pixel format %d on device context %p.\n",
|
||||
ctx->pixel_format, dc);
|
||||
@@ -937,7 +937,6 @@ static void context_update_window(struct wined3d_context *context)
|
||||
@@ -952,7 +952,6 @@ static void context_update_window(struct wined3d_context *context)
|
||||
wined3d_release_dc(context->win_handle, context->hdc);
|
||||
|
||||
context->win_handle = context->swapchain->win_handle;
|
||||
@@ -73,7 +73,7 @@ index 40b5ef1..0e3d539 100644
|
||||
context->needs_set = 1;
|
||||
context->valid = 1;
|
||||
|
||||
@@ -1388,7 +1387,6 @@ struct wined3d_context *context_create(struct wined3d_swapchain *swapchain,
|
||||
@@ -1446,7 +1445,6 @@ struct wined3d_context *context_create(struct wined3d_swapchain *swapchain,
|
||||
int swap_interval;
|
||||
DWORD state;
|
||||
HDC hdc;
|
||||
@@ -81,7 +81,7 @@ index 40b5ef1..0e3d539 100644
|
||||
|
||||
TRACE("swapchain %p, target %p, window %p.\n", swapchain, target, swapchain->win_handle);
|
||||
|
||||
@@ -1456,9 +1454,7 @@ struct wined3d_context *context_create(struct wined3d_swapchain *swapchain,
|
||||
@@ -1519,9 +1517,7 @@ struct wined3d_context *context_create(struct wined3d_swapchain *swapchain,
|
||||
{
|
||||
WARN("Failed to retrieve device context, trying swapchain backup.\n");
|
||||
|
||||
@@ -92,7 +92,7 @@ index 40b5ef1..0e3d539 100644
|
||||
{
|
||||
ERR("Failed to retrieve a device context.\n");
|
||||
goto out;
|
||||
@@ -1509,7 +1505,7 @@ struct wined3d_context *context_create(struct wined3d_swapchain *swapchain,
|
||||
@@ -1587,7 +1583,7 @@ struct wined3d_context *context_create(struct wined3d_swapchain *swapchain,
|
||||
|
||||
ret->gl_info = gl_info;
|
||||
|
||||
@@ -101,7 +101,7 @@ index 40b5ef1..0e3d539 100644
|
||||
{
|
||||
ERR("Failed to set pixel format %d on device context %p.\n", pixel_format, hdc);
|
||||
context_release(ret);
|
||||
@@ -1586,7 +1582,6 @@ struct wined3d_context *context_create(struct wined3d_swapchain *swapchain,
|
||||
@@ -1650,7 +1646,6 @@ struct wined3d_context *context_create(struct wined3d_swapchain *swapchain,
|
||||
ret->glCtx = ctx;
|
||||
ret->win_handle = swapchain->win_handle;
|
||||
ret->hdc = hdc;
|
||||
@@ -110,20 +110,20 @@ index 40b5ef1..0e3d539 100644
|
||||
ret->needs_set = 1;
|
||||
|
||||
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
|
||||
index 0b9b767..926f1dc 100644
|
||||
index b060f53..c6390a2 100644
|
||||
--- a/dlls/wined3d/wined3d_private.h
|
||||
+++ b/dlls/wined3d/wined3d_private.h
|
||||
@@ -1159,9 +1159,8 @@ struct wined3d_context
|
||||
DWORD lowest_disabled_stage : 4; /* Max MAX_TEXTURES, 8 */
|
||||
@@ -1193,9 +1193,8 @@ struct wined3d_context
|
||||
DWORD use_immediate_mode_draw : 1;
|
||||
DWORD rebind_fbo : 1;
|
||||
DWORD needs_set : 1;
|
||||
- DWORD hdc_is_private : 1;
|
||||
DWORD update_shader_resource_bindings : 1;
|
||||
- DWORD padding : 16;
|
||||
+ DWORD padding : 17;
|
||||
- DWORD padding : 15;
|
||||
+ DWORD padding : 16;
|
||||
DWORD shader_update_mask;
|
||||
DWORD constant_update_mask;
|
||||
DWORD numbered_array_mask;
|
||||
--
|
||||
2.3.1
|
||||
2.7.1
|
||||
|
||||
|
@@ -1,38 +0,0 @@
|
||||
What is Wine Staging?
|
||||
---------------------
|
||||
|
||||
**Wine Staging** is the testing area of winehq.org. It contains bug fixes and
|
||||
features, which have not been integrated into the development branch yet. The
|
||||
idea of Wine Staging is to provide experimental features faster to end users and
|
||||
to give developers the possibility to discuss and improve their patches before
|
||||
they are integrated into the main branch. More information about Wine Staging
|
||||
can also be found on our website [wine-staging.com](http://wine-staging.com).
|
||||
|
||||
Although we are reviewing and testing all patches carefully before adding them,
|
||||
you may encounter additional bugs, which are not present in the development
|
||||
branch. Do not hesitate to report such issues at winehq.org, so they can be
|
||||
fixed before the feature gets integrated.
|
||||
|
||||
|
||||
How to install and use Wine Staging
|
||||
-----------------------------------
|
||||
|
||||
Ready-to-use packages for Wine Staging are available for a variety
|
||||
of different Linux distributions directly for download. Just follow the
|
||||
instructions available on the
|
||||
[Wiki](https://github.com/wine-compholio/wine-staging/wiki/Installation).
|
||||
|
||||
When using Wine Staging there are a few differences compared to regular
|
||||
Wine. The main difference is that it is not sufficient to type `wine` to
|
||||
run it, but instead you will have to type `/opt/wine-staging/bin/wine`.
|
||||
Besides that there are also some other differences, for example additional
|
||||
configuration options to tweak performance, which are not available in regular
|
||||
Wine. All those differences are also documented on the
|
||||
[Wiki](https://github.com/wine-compholio/wine-staging/wiki/Usage).
|
||||
|
||||
|
||||
Included bug fixes and improvements
|
||||
-----------------------------------
|
||||
|
||||
{fixes}
|
||||
|
1
staging/VERSION
Normal file
1
staging/VERSION
Normal file
@@ -0,0 +1 @@
|
||||
Wine Staging 1.8.1
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user