Compare commits

...

206 Commits

Author SHA1 Message Date
Sebastian Lackner
525b5f5dd3 Release 1.7.39. 2015-03-22 04:06:36 +01:00
Sebastian Lackner
8c880d262f server-Shared_Memory: Cache the result of GetForegroundWindow. 2015-03-21 22:47:01 +01:00
Sebastian Lackner
d1451cd34f dxva2-Video_Decoder: Use a bigger estimation for the maximum slice size (required for some HD videos). 2015-03-21 20:35:42 +01:00
Sebastian Lackner
b0cf640a90 wined3d-NormalMatrix: Fix calculation of transpose matrix. 2015-03-21 20:27:58 +01:00
Sebastian Lackner
8751f075a1 Added patches to get rid of wineserver call for GetActiveWindow, GetFocus, GetCapture. 2015-03-21 10:00:53 +01:00
Sebastian Lackner
2f3d51e7f4 Fix 'available for more data' field in user32 user_thread_info structure. 2015-03-21 05:32:24 +01:00
Sebastian Lackner
d7d95ca4b6 server-Shared_Memory: Add a winediag warning message when shared memory is used. 2015-03-21 00:14:26 +01:00
Sebastian Lackner
e2c1e62662 Added patch to implement SetupLogError[A|W] and Setup[Open|Close]Log. 2015-03-20 22:52:47 +01:00
Sebastian Lackner
c5f0106cd6 gdiplus: Add missing returns in initialize_decoder_wic. 2015-03-20 22:39:16 +01:00
Sebastian Lackner
483cf18923 Added patch to fix regression causing black screen on startup. 2015-03-20 22:17:45 +01:00
Sebastian Lackner
dab39259ab Added patch to fix regression causing too dark/missing textures in several games. 2015-03-20 21:46:12 +01:00
Sebastian Lackner
5ee34a9309 Added patch to allow to edit winecfg library override by double clicking. 2015-03-20 19:07:59 +01:00
Sebastian Lackner
468a035b3e Added patch with stub for wininet.ParseX509EncodedCertificateForListBoxEntry. 2015-03-20 18:27:18 +01:00
Sebastian Lackner
486c1d6f46 Added patch to implement combase.WindowsSubstring function. 2015-03-20 17:33:05 +01:00
Sebastian Lackner
0958d303e9 Rebase against upstream changes. 2015-03-20 17:01:00 +01:00
Sebastian Lackner
a526f3eb07 ws2_32-TransmitFile: Set the event on the server side. 2015-03-20 06:57:46 +01:00
Sebastian Lackner
42b6978464 Removed first patch of series ws2_32_WriteWatches (accepted upstream). 2015-03-19 20:23:42 +01:00
Sebastian Lackner
5fe90fc2e8 Added patch to implement shared memory wineserver communication for various user32 functions. 2015-03-19 03:13:07 +01:00
Sebastian Lackner
1c4a8d2f9a Removed patch to only zero the buffer up 32767 bytes in GetTempPathW (accepted upstream). 2015-03-18 18:16:23 +01:00
Sebastian Lackner
6308175bc4 user32-Key_State: Fix (harmless) issue in the structure layout of user_thread_info. 2015-03-18 16:07:35 +01:00
Sebastian Lackner
7a53f1fbc5 server-Key_State: Fix lock_count when reassigning a different thread input to a queue. 2015-03-18 01:44:00 +01:00
Sebastian Lackner
014ef86645 Update patchset for ntdll-RtlUnwindEx to fix an issue with dwarf handling (fixes Wine Staging Bug #170). 2015-03-18 00:27:36 +01:00
Sebastian Lackner
2dd6d5e049 Added patch to only zero the buffer up 32767 bytes in GetTempPathW. 2015-03-17 19:26:00 +01:00
Sebastian Lackner
0486bc809f Remove various patches (accepted upstream). 2015-03-17 19:13:04 +01:00
Sebastian Lackner
de8e8a4079 Added patch with additional tests for server-PeekMessage. 2015-03-17 04:35:13 +01:00
Sebastian Lackner
20286952db Fix a build failure on MacOS caused by using of strndup in the server-Inherited_ACLs patchset. 2015-03-17 01:06:45 +01:00
Sebastian Lackner
17a3d8c2ea Rebase against upstream changes. 2015-03-16 17:13:28 +01:00
Sebastian Lackner
9fd51f90ef dinput-Events: Since some games use different code to poll for input events, partially restore code from old version of the patch. 2015-03-16 15:46:47 +01:00
Sebastian Lackner
d807c55e94 Added patch to improve stub for ID3DXEffectImpl_CloneEffect, mark upstream bug 25138 as fixes. 2015-03-16 08:24:51 +01:00
Sebastian Lackner
88f4c9ec57 Fix some typos. 2015-03-16 08:06:52 +01:00
Sebastian Lackner
aa51a47238 Added patch to implement _ismbckata and _mbctohira, moreover fix wrong return value of _ismbckata. 2015-03-16 07:49:25 +01:00
Sebastian Lackner
ec4e719cd6 Added patch to fix wrong return values of RtlFindActivationContextSectionString for NULL data (by Mark Jansen). 2015-03-16 03:48:50 +01:00
Erich E. Hoover
547d1a988d Fix Wine Staging Bug #162 - Caesar III demo installer crashes. 2015-03-15 15:35:20 -06:00
Sebastian Lackner
d57ae8c150 Added patch to invalidate key state cache globally after calling LL hooks. 2015-03-15 05:49:45 +01:00
Sebastian Lackner
0c660b9e3a Added patch for stub of PowerCreateRequest. 2015-03-15 01:45:31 +01:00
Sebastian Lackner
ea89242465 Added patch to silence repeated 'Unhandled blend factor 0' FIXME messages. 2015-03-15 01:34:10 +01:00
Sebastian Lackner
f1f051f491 Added patch to modify GetMessage to return already seen messages with higher priority. 2015-03-15 01:09:36 +01:00
Sebastian Lackner
de15f131bc Added patch to allow to query for d3dx9_26 specific ID3DXEffect interface. 2015-03-14 17:02:19 +01:00
Sebastian Lackner
48b14fe20b d3dx9_{24,25}-ID3DXEffect: Update patches to wrap even more functions. 2015-03-14 07:02:23 +01:00
Sebastian Lackner
dfd778f392 Added patch to fix wrong version of ID3DXEffect interface for d3dx9_24. 2015-03-14 05:03:07 +01:00
Sebastian Lackner
74f4207916 Added patch to fix wrong version of ID3DXEffect interface for d3dx9_25. 2015-03-14 04:50:52 +01:00
Sebastian Lackner
4bfaa67fea Added patch to avoid crash in d3d9 tests by skipping when texture/surface creation fails. 2015-03-14 02:35:58 +01:00
Sebastian Lackner
70c01d5385 ntoskrnl-Stubs: It is no longer necessary to remove duplicate definitions, this was already fixed upstream. 2015-03-13 18:43:39 +01:00
Sebastian Lackner
e759eff059 nvcuda-CUDA_Support: Create new file dlls/nvcuda/internal.c with appropriate file mode. 2015-03-13 18:26:42 +01:00
Sebastian Lackner
c9e146259d ntdll-ThreadTime: Do not change the mode of files (thanks Qian Hong). 2015-03-13 18:17:16 +01:00
Sebastian Lackner
3c7f5898c0 Removed patches for SLGetWindowsInformationDWORD (accepted upstream). 2015-03-13 15:09:40 +01:00
Sebastian Lackner
5b7dc79ea0 Added patch to implement better stub function for NtQueryInformationJobObject. 2015-03-12 22:28:18 +01:00
Sebastian Lackner
8c17307f95 Added patch to implement proper locking of keystate and synchronization with desktop thread. 2015-03-12 03:14:38 +01:00
Sebastian Lackner
513ca1f4ba Rebase against upstream changes. 2015-03-11 17:03:50 +01:00
Sebastian Lackner
28ddd8d7d5 ntdll-LZNT1_Compression: Fix test failures on systems with broken RtlDecompressBuffer. 2015-03-10 20:13:07 +01:00
Sebastian Lackner
4b41a20552 Change dependency order of ntdll-LZNT1_Compression and ntdll-RtlIpStringToAddress. 2015-03-10 18:36:54 +01:00
Sebastian Lackner
82b52e11c3 Added patch with tests for VerQueryValueA (by Mark Jansen). 2015-03-10 18:16:26 +01:00
Sebastian Lackner
538f3aaaea Rebase against upstream changes. 2015-03-10 17:50:41 +01:00
Sebastian Lackner
ffdcf51981 Added patch to fix multithreading issues with fullscreen clipping. 2015-03-10 17:42:08 +01:00
Sebastian Lackner
a812ef647e Added patch for tests of RtlIpv6StringToAddress, RtlIpv{4,6}StringToAddressEx (by Mark Jansen). 2015-03-09 19:23:54 +01:00
Sebastian Lackner
0b477b3ef1 Staging: Update --check-libs to show information about libva libs. 2015-03-09 16:55:13 +01:00
Sebastian Lackner
da0ea43746 Release 1.7.38. 2015-03-07 23:10:42 +01:00
Sebastian Lackner
8afa18829a winex11-Limited_Resolutions: Temporarily disable patchset.
The patchset itself should be fine, but statically linking against libXNVCtrl
might be problematic because of the different license. Moreover, on Debian it
is even a bit more complicated because a dynamic library is provided. Since we
do not want to have a fixed dependency on Nvidia-specific packages (winex11
would depend on it) we will have to investigate this a bit more...
2015-03-07 21:26:33 +01:00
Sebastian Lackner
fa3bf612ea Mark one additional upstream bug as fixed. 2015-03-07 20:47:26 +01:00
Sebastian Lackner
521e8aa38c Added patch to process APC calls before starting process. 2015-03-07 18:14:35 +01:00
Sebastian Lackner
c1ee00741d debian/control: Add nvidia-settings as build dependency (for libXNVCtrl.a). 2015-03-07 15:02:18 +01:00
Sebastian Lackner
9127b8c30a winex11-Limited_Resolutions: Actually show the winediag message. 2015-03-07 07:36:00 +01:00
Sebastian Lackner
41cad2ab96 winex11-Limited_Resolutions: Clean up configure check. 2015-03-07 07:06:41 +01:00
Sebastian Lackner
6d2bd768c8 Added patch to implement cuModuleLoad wrapper function. 2015-03-07 06:21:57 +01:00
Sebastian Lackner
17eccd79dc debian/changelog: Update changelog, new patches for TransmitFile were already added. 2015-03-07 05:15:45 +01:00
Erich E. Hoover
def2378b7a Added patch to report the correct refresh rates for some NVIDIA cards. 2015-03-06 15:32:49 -07:00
Sebastian Lackner
9e39b598ad ws2_32-TransmitFile: Use correct type for return value of WS2_send, fix check in follow-up patch. 2015-03-06 21:04:56 +01:00
Sebastian Lackner
05cb27bb21 ws2_32-TransmitFile: Various fixes and style improvements. 2015-03-06 19:58:39 +01:00
Sebastian Lackner
89e58b5105 patchupdate.py: Add back code to query wine bugzilla, show upstream bug status during patch updater step. 2015-03-06 00:25:45 +01:00
Sebastian Lackner
0f1cce7ba2 Removed patch to fix parameters for ConvertToIndexedBlendedMesh stub (accepted upstream). 2015-03-05 17:39:14 +01:00
Erich E. Hoover
2cba978c4d Fix 64-bit compile warnings in the Hearthstone patch. 2015-03-04 23:25:41 -07:00
Erich E. Hoover
150c6dce28 Long overdue update to the TransmitFile patches. 2015-03-04 21:28:37 -07:00
Sebastian Lackner
ef97a06e99 winex11-Thread_data: Add reference to upstream bug report. 2015-03-05 02:45:23 +01:00
Sebastian Lackner
48c5b12ec2 ntdll-FD_Cache: Update patchset with latest version. 2015-03-05 02:15:11 +01:00
Sebastian Lackner
3c1f26970c d3dxof-Cleanup: Update patchset to use assignment instead of memcpy. 2015-03-04 23:42:40 +01:00
Sebastian Lackner
20e97e50b3 Added patch to replace hardcoded values with sizeof(GUID) for d3dxof. 2015-03-04 21:31:59 +01:00
Sebastian Lackner
e3616aa15c Added patch to increase wineconsole commandline buffer size. 2015-03-04 21:24:11 +01:00
Sebastian Lackner
e7b99e4558 debian/control: Add recommendation for optional runtime dependency libva-drm1. 2015-03-04 19:47:16 +01:00
Sebastian Lackner
c02bdae45d dxva2-Video_Decoder: Various improvements to dxva2 vaapi support. 2015-03-04 19:36:04 +01:00
Sebastian Lackner
4a8df258cd Removed multiple patches (accepted upstream). 2015-03-04 17:56:00 +01:00
Sebastian Lackner
6b31c6f9e2 ntdll-Vista_Threadpool: Various cleanup and splitting into smaller patchsets. 2015-03-04 14:19:38 +01:00
Sebastian Lackner
274fe74055 Added patches to improve performance by reusing old async IO structure if possible. 2015-03-03 19:35:46 +01:00
Sebastian Lackner
db827ac766 kernel32-Named_Pipe: Remove two todo_wine's - somehow magically fixed by the recent changes to wine APC handling. 2015-03-03 18:37:29 +01:00
Sebastian Lackner
4d3a96536e Removed various patches (accepted upstream), disabled patchset for TransmitFile (rewrite in progress). 2015-03-03 18:18:58 +01:00
Sebastian Lackner
cb7f47b637 ntdll-NtQuerySection: Fix all field names in SECTION_IMAGE_INFORMATION structure. 2015-03-03 00:42:30 +01:00
Erich E. Hoover
6038eeee95 quartz/strmbase: Added patch to fix MediaSeekingPassThru_GetPositions when the pins are unconnected. 2015-03-02 11:09:07 -07:00
Sebastian Lackner
ce2930fb30 Added patch to fix crash when trying to switch back to a 16-bit stack. 2015-03-02 16:25:46 +01:00
Sebastian Lackner
e86c1653d8 Removed patches to use interlocked functions for library refcounts (accepted upstream). 2015-03-02 16:17:41 +01:00
Sebastian Lackner
3efff4cb88 Added patch to correct DDSCAPS2 and DDSURFACEDESC2 structure (by Amine Khaldi, wine-patched/pull/7). 2015-03-01 19:10:52 +01:00
Sebastian Lackner
985f04d9ba Added patch to avoid unloading msctf library while textservices are activated. 2015-03-01 05:10:43 +01:00
Sebastian Lackner
6cf3424356 Added patches to fix race-condition when closing browseui IProcessDialog. 2015-03-01 04:10:54 +01:00
Sebastian Lackner
67e8c4d0a9 Added patch to make GetLogicalProcessorInformationEx a stub which returns TRUE. 2015-03-01 01:12:40 +01:00
Sebastian Lackner
6c1e7ddfb2 Added patches to make various functions in d3d8 / ddraw hotpatchable (required for fraps). 2015-02-28 22:00:48 +01:00
Sebastian Lackner
99bf902a97 Added patch to fix crash in clip_cursor_notify caused by uninitialized TLS. 2015-02-28 21:55:43 +01:00
Sebastian Lackner
c9d3b931f7 Added patch to implement support for waiting on job object. 2015-02-28 07:01:09 +01:00
Sebastian Lackner
d4871a1b6e server-JobObjects: Fix a wineserver crash when terminated processes are added to a job. 2015-02-28 06:52:37 +01:00
Sebastian Lackner
1564f9cd05 Added patch with tests for waiting on a job object. 2015-02-28 06:10:59 +01:00
Sebastian Lackner
aac61f746b Added patch to implement support for NULL job handles in IsProcessInJob. 2015-02-28 05:19:50 +01:00
Sebastian Lackner
348fe1182f Added patch to implement PROGDLG_AUTOTIME for IProgressDialog. 2015-02-28 02:48:26 +01:00
Sebastian Lackner
96bb4ddd1d Add missing file... don't ask. 2015-02-28 02:01:53 +01:00
Sebastian Lackner
ec8049fcf5 Added patch to implement JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE. 2015-02-28 01:52:48 +01:00
Sebastian Lackner
e7b9fc8d16 Added patch to properly track handle count of wineserver objects. 2015-02-28 01:38:49 +01:00
Sebastian Lackner
8cc25d0fe4 Added patch for job object completion support. 2015-02-28 01:20:47 +01:00
Sebastian Lackner
cd62b5bedc Added patch in order to allow to override number of quality levels for D3DMULTISAMPLE_NONMASKABLE. 2015-02-28 00:36:25 +01:00
Sebastian Lackner
9e9b76a6a9 shell32-Progress_Dialog: Remove useless cast. 2015-02-28 00:06:27 +01:00
Sebastian Lackner
5d4b0f6a7b browseui-Progress_Dialog: Make sure that a valid resource id is passed in IProgressDialog::SetAnimation. 2015-02-27 23:34:24 +01:00
Sebastian Lackner
a9622970cd Added patch to implement IProgressDialog::SetAnimation. 2015-02-27 22:53:56 +01:00
Sebastian Lackner
2672abd9e0 Added patch to enforce that surfaces are flushed after ReleaseDC. 2015-02-27 22:44:57 +01:00
Sebastian Lackner
9146caa7ae Added patch to display animations for SHFileOperation progress dialog. 2015-02-27 21:06:05 +01:00
Sebastian Lackner
480bab002e Added patch for basic implementation of job objects. 2015-02-27 20:56:05 +01:00
Sebastian Lackner
2de8f84fb0 Removed multiple patches (accepted upstream). 2015-02-27 15:34:05 +01:00
Sebastian Lackner
e01d563654 Added patch for support of shell32 file operation progress dialog. 2015-02-27 02:12:30 +01:00
Sebastian Lackner
cc1368ba9e ntoskrnl-Stubs: Mark one additional bug as fixed. 2015-02-27 01:36:56 +01:00
Sebastian Lackner
a63ea08036 Added patches for ntoskrnl.ProbeFor{Read,Write}. 2015-02-27 01:31:59 +01:00
Sebastian Lackner
b4c665d65a Added patch for stub of gdiplus.GdipCreateEffect. 2015-02-27 01:18:50 +01:00
Sebastian Lackner
870feed3e2 Added first set of patches for job objects (by Andrew Cook). 2015-02-26 22:41:29 +01:00
Michael MĂĽller
ec1b9737d0 Update progress callback patch. 2015-02-26 21:57:05 +01:00
Sebastian Lackner
6b6bb2edce Rename ntdll-CopyFileEx patchset to kernel32-CopyFileEx (Oops..). 2015-02-26 16:57:16 +01:00
Sebastian Lackner
98c6f8974b Removed multiple patchsets (accepted upstream). 2015-02-26 16:44:38 +01:00
Sebastian Lackner
f133ccbf40 Rename ntdll-SetFileInformationByHandle to kernel32-SetFileInformationByHandle. 2015-02-26 07:14:13 +01:00
Sebastian Lackner
b74ea4b14d Added patch for CopyFileEx progress callback and cancellation support. 2015-02-26 07:10:29 +01:00
Sebastian Lackner
7d2b751466 Added patch to implement SetFileInformationByHandle. 2015-02-26 06:12:24 +01:00
Sebastian Lackner
dd12b420e8 Added patch to fallback to global key state for threads without a queue. 2015-02-26 04:26:59 +01:00
Sebastian Lackner
d25e78cefb Added patch to avoid deadlock by using _exit() in NtTerminateProcess. 2015-02-25 23:27:09 +01:00
Sebastian Lackner
8f64b37ee2 Added patch to fix race-condition when threads are killed during shutdown. 2015-02-25 23:12:37 +01:00
Sebastian Lackner
11fe964c46 Removed several patches (accepted upstream). 2015-02-24 18:00:05 +01:00
Sebastian Lackner
8b3e8d11a8 Added patch to complete and properly pack DNS_HEADER structure (by Amine Khaldi, wine-patched/pull/6). 2015-02-23 22:35:00 +01:00
Sebastian Lackner
eaefcc8a3f Added patch to declare pDirectInputCreateEx in a MSVC compatible way (by Amine Khaldi, wine-patched/pull/5). 2015-02-23 22:34:35 +01:00
Sebastian Lackner
a412b6082a Added patch to skip Wine specific __wine_check_for_events calls in ReactOS (by Amine Khaldi, wine-patched/pull/4). 2015-02-23 20:31:13 +01:00
Sebastian Lackner
50b6ba8394 patchupdate.py: Use a threadpool to check patches in parallel. 2015-02-23 19:14:25 +01:00
Sebastian Lackner
c1eea67020 Added patch to mark DllCanUnloadNow and DllGetClassObject as private (by Amine Khaldi, wine-patched/pull/3). 2015-02-23 18:35:31 +01:00
Sebastian Lackner
f11e82495a Disabled patchset for reg.exe cleanup (partially accepted upstream). 2015-02-23 18:32:33 +01:00
Sebastian Lackner
5261bd8a89 patchupdate.py: Introduce a new Apply-After definition file variable. 2015-02-23 18:12:32 +01:00
Sebastian Lackner
b7777f405b patchutils.py: Fix some spelling errors (thanks Amine Khaldi). 2015-02-22 20:03:51 +01:00
Sebastian Lackner
1b4d215dd7 Release 1.7.37. 2015-02-22 06:59:18 +01:00
Sebastian Lackner
6c276e039c dxva2-Video_Decoder: Fix an incorrect FIXME message. 2015-02-22 05:46:02 +01:00
Sebastian Lackner
f354e38ec0 dxva2-Video_Decoder: Update configure check to make sure that libva exports vaQuerySurfaceAttributes. 2015-02-22 05:14:20 +01:00
Michael MĂĽller
282bb25d73 Add libva as build dependency for debian package. 2015-02-22 04:09:14 +01:00
Michael MĂĽller
44ea94f633 Added patch for MPEG2/H264 DXVA2 video decoding through vaapi. 2015-02-22 04:08:15 +01:00
Sebastian Lackner
8f19269b34 Added patch for support of non-blocking SIO_ADDRESS_LIST_CHANGE requests. 2015-02-22 00:32:18 +01:00
Sebastian Lackner
3bfb699f09 Added patch to implement ntoskrnl.KeInitializeMutex. 2015-02-21 12:01:06 +01:00
Sebastian Lackner
591c89dcaa Added patch to add stub for ntoskrnl.Mm{Map,Unmap}LockedPages. 2015-02-21 11:55:16 +01:00
Sebastian Lackner
65895dcd33 Added patch to ignore unsupported alpha channels in TIFF decoder. 2015-02-21 11:25:55 +01:00
Sebastian Lackner
ea6d6ce494 Added patches to implement semi-stubs for GetFileVersionInfoSizeExA/W and GetFileVersionInfoExA/W. 2015-02-21 11:10:51 +01:00
Sebastian Lackner
d734456470 wined3d-DXTn: Do not require libtxc_dxtn at compile-time, always search at runtime for common library names. 2015-02-21 02:21:01 +01:00
Sebastian Lackner
eea70481fe Rebase against upstream changes. 2015-02-20 15:57:32 +01:00
Sebastian Lackner
ea9f209292 Rebase against upstream changes, remove patch for IDirectPlayVoiceClient::GetCompressionTypes (accepted upstream). 2015-02-20 01:56:07 +01:00
Sebastian Lackner
9717d3f69e Rebase against upstream changes. 2015-02-18 20:15:35 +01:00
Sebastian Lackner
1078096afe d3dx9_36-GetShaderSemantics: Rebase against upstream changes. 2015-02-16 18:14:05 +01:00
Sebastian Lackner
eab42cde10 Added patches to improve stubs for AEV_{Get,Set}MasterVolumeLevel and AEV_{Get,Set}Mute. 2015-02-15 14:53:01 +01:00
Sebastian Lackner
c3d4426edd Added patch to implement IApplicationAssociationRegistration::QueryCurrentDefault. 2015-02-14 04:47:25 +01:00
Sebastian Lackner
6a98a1f8aa Added patch to avoid accessing stack below ESP when restoring thread context. 2015-02-13 01:46:19 +01:00
Sebastian Lackner
9afb8c2b6d wined3d-CSMT_Main: Rebase against upstream changes. 2015-02-12 20:50:03 +01:00
Sebastian Lackner
dc04777d5a Added patch to add stub for ntoskrnl.ExDeleteResourceLite. 2015-02-12 08:52:01 +01:00
Sebastian Lackner
3f9cc193b7 Added patch to add stub for ntoskrnl.ExReleaseResourceForThread. 2015-02-12 08:45:21 +01:00
Sebastian Lackner
a40b3e341a Added patch to add stub for ntoskrnl.ExAcquireResourceExclusiveLite. 2015-02-12 08:27:14 +01:00
Sebastian Lackner
2000faae13 wined3d-CSMT_{Helper,Main}: Rebase against upstream changes. 2015-02-12 08:07:54 +01:00
Sebastian Lackner
28bd360291 ntdll-WRITECOPY: Adjust patch based on changes in ws2_32-WriteWatches. 2015-02-11 21:19:10 +01:00
Sebastian Lackner
3f60978f12 Added patch to implement basic handling of write watches while we're on the signal stack. 2015-02-11 13:37:53 +01:00
Sebastian Lackner
d8772033dd d3dx9_36-GetShaderSemantics: Fix issue in implementation of D3DXGetShaderInputSemantics. 2015-02-10 23:26:58 +01:00
Sebastian Lackner
65c1bc4fd2 ntdll-DVD_Read_Size: Avoid dereferencing NULL pointer / accessing structure when size is invalid. 2015-02-10 21:53:58 +01:00
Sebastian Lackner
16f0d70b79 Added patch to implement D3DXGetShaderOutputSemantics. 2015-02-10 21:16:32 +01:00
Sebastian Lackner
5188eda906 Removed patches for SIO_ADDRESS_LIST_CHANGE ioctl (accepted upstream). 2015-02-10 18:21:42 +01:00
Sebastian Lackner
1ffd40e9de Added patch to avoid race-conditions with write watches in WS2_async_accept. 2015-02-10 07:37:49 +01:00
Sebastian Lackner
e8d4cc0cb0 Avoid race-conditions in NtReadFile() operations with write watches. 2015-02-10 06:40:25 +01:00
Sebastian Lackner
c1ae413bcc ntdll-RtlUnwind: Update patchset and fix a second bug in the unwinding code.
Fixes https://bugs.wine-staging.com/show_bug.cgi?id=68.
2015-02-10 00:10:32 +01:00
Sebastian Lackner
d329354032 Removed patches for UTF7 support (accepted upstream). 2015-02-09 17:22:09 +01:00
Sebastian Lackner
e2cd273303 iphlpapi-TCP_Table: Fix an incorrect TRACE message. 2015-02-08 20:32:31 +01:00
Sebastian Lackner
b7770327f1 Release 1.7.36. 2015-02-08 19:15:49 +01:00
Sebastian Lackner
b8c9d22e4c Added patch to improve stub for AEV_GetVolumeRange. 2015-02-08 18:02:28 +01:00
Sebastian Lackner
2b2f2d70ab Added patch to fix wrong defition of ntoskrnl.IoReleaseCancelSpinLock function. 2015-02-08 17:58:49 +01:00
Sebastian Lackner
c81eb4cfa6 Added patch to improve various ntoskrnl stub functions. 2015-02-08 17:55:46 +01:00
Sebastian Lackner
221a419640 Added patch to implement stub for ntoskrnl.KeDelayExecutionThread. 2015-02-08 17:51:06 +01:00
Sebastian Lackner
f1b08404b8 Added patch to implement stubs for ntoskrnl.ObReferenceObjectByPointer and ntoskrnl.ObDereferenceObject. 2015-02-08 17:47:43 +01:00
Sebastian Lackner
28fc684ff9 Added patch to implement stubs for ntoskrnl.Ex{Acquire,Release}FastMutexUnsafe. 2015-02-08 17:44:07 +01:00
Sebastian Lackner
cb402d63de Added patch to implement stub for ntoskrnl.IoGetAttachedDeviceReference. 2015-02-08 17:35:02 +01:00
Sebastian Lackner
865083f801 Mark various upstream bugs as fixed. 2015-02-08 17:29:34 +01:00
Sebastian Lackner
b70612a236 Staging: Avoid a warning on x86_64. 2015-02-08 15:18:58 +01:00
Sebastian Lackner
340a8a9e73 patchupdate.py: Replace '.' with underscore for patchinstall.sh script. 2015-02-08 15:02:51 +01:00
Sebastian Lackner
39787f3608 Added patch to make nvcuda.dll compatible with CUDA 7.0. 2015-02-08 09:44:03 +01:00
Sebastian Lackner
f2831c4a36 Added patch to implement NVIDIA video encoder library (nvencodeapi). 2015-02-08 08:40:31 +01:00
Sebastian Lackner
6a5466cff1 Added patch to add performance library registry keys needed by MS SQL Server Management Studio Express 2008 R2. 2015-02-08 06:39:31 +01:00
Sebastian Lackner
fbf97b4ef0 Added patchset for various improvements and cleanup of reg.exe. 2015-02-07 15:41:23 +01:00
Sebastian Lackner
cfdc80f823 Add library override instead of closing winecfg when pressing ENTER over the combobox. 2015-02-07 08:07:40 +01:00
Sebastian Lackner
1b9fa30106 Rebase against upstream changes. 2015-02-06 21:41:46 +01:00
Sebastian Lackner
99fc70333a ntdll-Vista_Threadpool: Update threadpool patchset, implement additional wait object functions. 2015-02-06 20:49:32 +01:00
Sebastian Lackner
dac872a3f7 dinput-Events: Update patch to fix bug 42, some games do not explicitly poll for mouse events. 2015-02-04 06:51:05 +01:00
Sebastian Lackner
94558a24fb Removed several patches (accepted upstream). 2015-02-03 17:16:22 +01:00
Sebastian Lackner
1eeba48e51 Added patch to fix arguments for OSMesaMakeCurrent when using 16 bit formats. 2015-02-03 12:24:48 +01:00
Sebastian Lackner
70b8d10d2f Added patch to fix crash in Jedi Knight: Dark Forces II when winmm is set to native. 2015-02-03 07:13:28 +01:00
Sebastian Lackner
95d7e3c5a9 ntdll-Vista_Threadpool: Avoid race conditions between tp_object_{submit,shutdown} for simple callbacks. 2015-02-03 05:33:58 +01:00
Sebastian Lackner
647efb0b9b wined3d-CSMT_Main: Rebase against upstream changes. 2015-02-02 17:52:20 +01:00
Sebastian Lackner
1ac4ac7302 ntdll-Vista_Threadpool: Make sure that threadpools have always at least one worker thread. 2015-02-02 14:09:18 +01:00
Sebastian Lackner
af245c20be Added patchset to implement Vista+ threadpool functions for work / timers. 2015-02-01 19:58:36 +01:00
Sebastian Lackner
e51f6d2439 Added patch to implement additional stubs for vcomp dlls. 2015-01-29 00:43:26 +01:00
Sebastian Lackner
96b6186af1 Rebase patches against upstream Wine. 2015-01-28 23:25:01 +01:00
Sebastian Lackner
cfdd73e2c4 ntoskrnl-KeWaitForMultipleObjects: Remove definition of KWAIT_BLOCK (accepted upstream). 2015-01-28 02:03:28 +01:00
Sebastian Lackner
e3c329b656 ntoskrnl-KeWaitForMultipleObjects: Avoid duplicate definitions in ntdef.h and winternl.h. 2015-01-27 15:09:32 +01:00
Sebastian Lackner
aab0c9dd62 ntoskrnl-KeWaitForMultipleObjects: Directly use new header file ntdef.h. 2015-01-27 04:38:18 +01:00
Sebastian Lackner
42ef436373 ntdll-Junction_Points: Rebase against upstream changes. 2015-01-27 04:07:25 +01:00
Sebastian Lackner
8d231bde1d Added patch to fix mouse jittering in Planetside 2. 2015-01-26 13:31:24 +01:00
Sebastian Lackner
a5566f1e8e Added patch to fix check for end_frame in RtlUnwindEx on x86_64. 2015-01-26 11:57:43 +01:00
Michael MĂĽller
a3813c45a0 Added patch to call DriverUnload during driver unload. 2015-01-26 04:39:12 +01:00
Sebastian Lackner
0c2b776e83 patchinstall.sh: Only apply patchlist when 'Staging' patchset is enabled. Ensure Staging/004-*.patch also compiles without patchlist. 2015-01-26 03:46:33 +01:00
Sebastian Lackner
e65c2c7954 patchinstall.sh: Avoid using '&>' syntax which spawns a detached shell with dash instead of forwarding output (thanks DarkPlayer). 2015-01-26 01:13:49 +01:00
Sebastian Lackner
9ee1d8c391 nvcuvid-CUDA_Video_Support: Remove another duplicate struct definition (ancient compilers again ...). 2015-01-25 06:01:27 +01:00
334 changed files with 35413 additions and 7561 deletions

View File

@@ -38,92 +38,150 @@ Wine. All those differences are also documented on the
Included bug fixes and improvements
===================================
**Bugs fixed in Wine Staging 1.7.35 [146]:**
**Bugs fixed in Wine Staging 1.7.39 [205]:**
* Add Dynamic DST exceptions for Israel Standard Time ([Wine Bug #36374](https://bugs.winehq.org/show_bug.cgi?id=36374))
* Add default ACLs for user shell folders
* Add implementation for CreateThreadpool ([Wine Bug #35192](https://bugs.winehq.org/show_bug.cgi?id=35192))
* 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 GetFileVersionInfoExA/W ([Wine Bug #38098](https://bugs.winehq.org/show_bug.cgi?id=38098))
* Add semi-stub for GetFileVersionInfoSizeExA/W ([Wine Bug #38090](https://bugs.winehq.org/show_bug.cgi?id=38090))
* Add stub for D3DXComputeNormalMap
* Add stub for D3DXComputeTangentFrameEx ([Wine Bug #31984](https://bugs.winehq.org/show_bug.cgi?id=31984))
* Add stub for D3DXIntersect
* Add stub for KeWaitForMultipleObjects
* Add stub for NtSetLdtEntries/ZwSetLdtEntries ([Wine Bug #26268](https://bugs.winehq.org/show_bug.cgi?id=26268))
* Add stub for PowerCreateRequest
* Add stub for gdiplus.GdipCreateEffect ([Wine Bug #32163](https://bugs.winehq.org/show_bug.cgi?id=32163))
* Add stub for ntoskrnl.ExAcquireResourceExclusiveLite
* Add stub for ntoskrnl.ExDeleteResourceLite
* Add stub for ntoskrnl.ExReleaseResourceForThread
* Add stub for ntoskrnl.KeWaitForMultipleObjects
* Add stub for ntoskrnl.Mm{Map,Unmap}LockedPages
* Add stub for wininet.ParseX509EncodedCertificateForListBoxEntry ([Wine Bug #29842](https://bugs.winehq.org/show_bug.cgi?id=29842))
* Add stubs for D3DXCreateAnimationController interface
* Add support for CopyFileEx progress callback ([Wine Bug #22692](https://bugs.winehq.org/show_bug.cgi?id=22692))
* Add support for GetPropValue to PulseAudio backend
* Adobe Reader needs ITextSelection_fnGetDuplicate implementation
* 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 override number of quality levels for D3DMULTISAMPLE_NONMASKABLE. ([Wine Bug #12652](https://bugs.winehq.org/show_bug.cgi?id=12652))
* Anno 1602 installer depends on Windows 98 behavior of SHFileOperationW ([Wine Bug #37916](https://bugs.winehq.org/show_bug.cgi?id=37916))
* 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.
* Avoid unloading msctf library while textservices are activated ([Wine Bug #31579](https://bugs.winehq.org/show_bug.cgi?id=31579))
* Avseq crashes when multisampling is enabled ([Wine Bug #31998](https://bugs.winehq.org/show_bug.cgi?id=31998))
* 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
* Child of Light expects FindConnectionPoint to succeed and increase the refcount ([Wine Bug #36408](https://bugs.winehq.org/show_bug.cgi?id=36408))
* 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 append duplicate NULL characters when importing keys with regedit ([Wine Bug #37575](https://bugs.winehq.org/show_bug.cgi?id=37575))
* Do not fail when a used context is passed to wglShareLists ([Wine Bug #11436](https://bugs.winehq.org/show_bug.cgi?id=11436))
* Don't fill KdHelp structure for usermode applications ([Wine Bug #37272](https://bugs.winehq.org/show_bug.cgi?id=37272))
* EA Origin needs support for job objects ([Wine Bug #33723](https://bugs.winehq.org/show_bug.cgi?id=33723))
* Emulate access to KI_USER_SHARED_DATA kernel page on x86_64 ([Wine Bug #33849](https://bugs.winehq.org/show_bug.cgi?id=33849))
* Enforce that surfaces are flushed after ReleaseDC
* Ensure NtProtectVirtualMemory and NtCreateSection are on separate pages ([Wine Bug #33162](https://bugs.winehq.org/show_bug.cgi?id=33162))
* Ensure X11 input events are handled even without explicit message loop ([Wine Bug #8854](https://bugs.winehq.org/show_bug.cgi?id=8854))
* Exception during start of fr-043 caused by missing DXTn support ([Wine Bug #37391](https://bugs.winehq.org/show_bug.cgi?id=37391))
* Expose PKEY_AudioEndpoint_PhysicalSpeakers device property in PulseAudio driver
* FEAR 1 installer expects basic_string_wchar_dtor to return NULL ([Wine Bug #37358](https://bugs.winehq.org/show_bug.cgi?id=37358))
* Fallback to global key state for threads without a queue ([Wine Bug #27238](https://bugs.winehq.org/show_bug.cgi?id=27238))
* Fix NULL dereference in ICSeqCompressFrameStart ([Wine Bug #27595](https://bugs.winehq.org/show_bug.cgi?id=27595))
* Fix access violation when calling GetStringTypeW with NULL src. ([Wine Bug #37759](https://bugs.winehq.org/show_bug.cgi?id=37759))
* Fix black screen on startup introduced by pixelformat changes. ([Wine Bug #35950](https://bugs.winehq.org/show_bug.cgi?id=35950))
* Fix caps lock state issues with multiple processes ([Wine Bug #35907](https://bugs.winehq.org/show_bug.cgi?id=35907))
* Fix check for end_frame in RtlUnwindEx on x86_64. ([Wine Bug #34254](https://bugs.winehq.org/show_bug.cgi?id=34254))
* 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 in clip_cursor_notify caused by uninitialized TLS ([Wine Bug #36915](https://bugs.winehq.org/show_bug.cgi?id=36915))
* Fix crash of Trine Demo on start ([Wine Bug #19231](https://bugs.winehq.org/show_bug.cgi?id=19231))
* Fix crash of winedevice when relocation entry crosses page boundary ([Wine Bug #28254](https://bugs.winehq.org/show_bug.cgi?id=28254))
* Fix cursor clip regression / broken raw input in multiple games ([Wine Bug #33479](https://bugs.winehq.org/show_bug.cgi?id=33479))
* Fix flickering introduced by pixelformat changes. ([Wine Bug #35718](https://bugs.winehq.org/show_bug.cgi?id=35718))
* 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 gray screen on startup introduced by pixelformat changes. ([Wine Bug #35975](https://bugs.winehq.org/show_bug.cgi?id=35975))
* 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 init of LONGLONG variable with a negative value in TGA decoder
* 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 parameters for ConvertToIndexedBlendedMesh stub ([Wine Bug #36449](https://bugs.winehq.org/show_bug.cgi?id=36449))
* 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
* Fix regression causing black screen on startup ([Wine Bug #38248](https://bugs.winehq.org/show_bug.cgi?id=38248))
* Fix regression causing too dark/missing textures in several games ([Wine Bug #38256](https://bugs.winehq.org/show_bug.cgi?id=38256))
* Fix return value of ScrollWindowEx for invisible windows ([Wine Bug #37706](https://bugs.winehq.org/show_bug.cgi?id=37706))
* Fix texture corruption in CSI: Fatal Conspiracy ([Wine Bug #33768](https://bugs.winehq.org/show_bug.cgi?id=33768))
* Fix unintentional leaks with ntdll internals
* Fix wined3d performance drop introduced by pixelformat changes. ([Wine Bug #35655](https://bugs.winehq.org/show_bug.cgi?id=35655))
* 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))
* Games For Windows Live 1.x expects a valid linker version in the PE header ([Wine Bug #28768](https://bugs.winehq.org/show_bug.cgi?id=28768))
* 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))
* Graphical issues in Inquisitor ([Wine Bug #32490](https://bugs.winehq.org/show_bug.cgi?id=32490))
* Hearthstone fails to start ([Wine Bug #36216](https://bugs.winehq.org/show_bug.cgi?id=36216))
* IOCTL_DVD_READ_STRUCTURE expects the wrong size of output buffer for some requests ([Wine Bug #37767](https://bugs.winehq.org/show_bug.cgi?id=37767))
* Ignore unsupported alpha channels in TIFF decoder ([Wine Bug #38027](https://bugs.winehq.org/show_bug.cgi?id=38027))
* Ignore unsupported flags for CoInternetSetFeatureEnabled ([Wine Bug #35197](https://bugs.winehq.org/show_bug.cgi?id=35197))
* Implement D3DXGetShaderOutputSemantics
* Implement ID3DXEffect::FindNextValidTechnique ([Wine Bug #34101](https://bugs.winehq.org/show_bug.cgi?id=34101))
* Implement IDXGIOutput::GetDesc
* Implement SetFileInformationByHandle
* Implement SetupLogError[A|W] and Setup[Open|Close]Log
* Implement a Microsoft Yahei replacement font ([Wine Bug #13829](https://bugs.winehq.org/show_bug.cgi?id=13829))
* Implement additional stubs for vcomp dlls ([Wine Bug #31640](https://bugs.winehq.org/show_bug.cgi?id=31640))
* Implement an Arial replacement font ([Wine Bug #32323](https://bugs.winehq.org/show_bug.cgi?id=32323))
* Implement combase.WindowsSubstring function
* Implement exclusive mode in PulseAudio backend ([Wine Bug #37042](https://bugs.winehq.org/show_bug.cgi?id=37042))
* Implement locking and synchronization of key states ([Wine Bug #31899](https://bugs.winehq.org/show_bug.cgi?id=31899))
* Implement ntoskrnl driver testing framework.
* Implement semi-stub for IDirectPlayVoiceClient::GetCompressionTypes ([Wine Bug #29238](https://bugs.winehq.org/show_bug.cgi?id=29238))
* Implement ntoskrnl.KeInitializeMutex
* 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
* Implement threadpool timers ([Wine Bug #37306](https://bugs.winehq.org/show_bug.cgi?id=37306))
* Implement threadpool wait objects
* Implement threadpool work items ([Wine Bug #32531](https://bugs.winehq.org/show_bug.cgi?id=32531))
* Improve stub for AEV_GetVolumeRange ([Wine Bug #35658](https://bugs.winehq.org/show_bug.cgi?id=35658))
* Improve stub for ID3DXEffectImpl_CloneEffect
* Improve stubs for AEV_{Get,Set}MasterVolumeLevel
* Improve stubs for AEV_{Get,Set}Mute
* Improvement for heap allocation performance
* Increase wineconsole commandline buffer size ([Wine Bug #34814](https://bugs.winehq.org/show_bug.cgi?id=34814))
* Invalidate key state cache globally after calling LL hooks ([Wine Bug #29871](https://bugs.winehq.org/show_bug.cgi?id=29871))
* 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))
* Limit cross thread access to ImmSet* functions ([Wine Bug #35361](https://bugs.winehq.org/show_bug.cgi?id=35361))
* Lockfree algorithm for filedescriptor cache (improves file access speed)
* MSVCRT crashes when NULL is passed as string to atof or strtod ([Wine Bug #32550](https://bugs.winehq.org/show_bug.cgi?id=32550))
* MSYS2 expects correct handling of WRITECOPY memory protection ([Wine Bug #35561](https://bugs.winehq.org/show_bug.cgi?id=35561))
* Make it possible to change media center / tablet pc status ([Wine Bug #18732](https://bugs.winehq.org/show_bug.cgi?id=18732))
* 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))
* Multiple applications start wrong executable if whitespace present in name ([Wine Bug #19666](https://bugs.winehq.org/show_bug.cgi?id=19666))
* Need for Speed 3 installer requires devices in HKEY_DYN_DATA ([Wine Bug #7115](https://bugs.winehq.org/show_bug.cgi?id=7115))
* 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
* Process Hacker 2.x needs ntoskrnl.ProbeForRead ([Wine Bug #38103](https://bugs.winehq.org/show_bug.cgi?id=38103))
* Properly track handle count of wineserver objects
* Python PIP needs better NtQueryInformationJobObject stub
* Reduced SetTimer minimum value from 10 ms to 5 ms (improves Silverlight framerates)
* 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 ([Wine Bug #23174](https://bugs.winehq.org/show_bug.cgi?id=23174))
@@ -144,9 +202,10 @@ Included bug fixes and improvements
* Support for DOS hidden/system file attributes ([Wine Bug #9158](https://bugs.winehq.org/show_bug.cgi?id=9158))
* Support for Dynamic DST (daylight saving time) information in registry
* Support for GdipCreateRegionRgnData ([Wine Bug #34843](https://bugs.winehq.org/show_bug.cgi?id=34843))
* Support for GetFinalPathNameByHandle ([Wine Bug #36073](https://bugs.winehq.org/show_bug.cgi?id=36073))
* Support for GetFinalPathNameByHandle ([Wine Bug #34851](https://bugs.winehq.org/show_bug.cgi?id=34851))
* Support for GetSystemTimes ([Wine Bug #19813](https://bugs.winehq.org/show_bug.cgi?id=19813))
* Support for GetVolumePathName
* 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 ITextDocument_fnRange function ([Wine Bug #12458](https://bugs.winehq.org/show_bug.cgi?id=12458))
@@ -154,25 +213,26 @@ Included bug fixes and improvements
* 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 LoadIconMetric ([Wine Bug #35375](https://bugs.winehq.org/show_bug.cgi?id=35375))
* 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 NtSetInformationFile class FileDispositionInformation ([Wine Bug #30397](https://bugs.winehq.org/show_bug.cgi?id=30397))
* Support for PulseAudio backend for audio ([Wine Bug #10495](https://bugs.winehq.org/show_bug.cgi?id=10495))
* Support for RtlDecompressBuffer ([Wine Bug #37449](https://bugs.winehq.org/show_bug.cgi?id=37449))
* Support for SHCreateSessionKey ([Wine Bug #35630](https://bugs.winehq.org/show_bug.cgi?id=35630))
* Support for SLGetWindowsInformationDWORD ([Wine Bug #36709](https://bugs.winehq.org/show_bug.cgi?id=36709))
* Support for TOOLTIPS_GetTipText edge cases ([Wine Bug #30648](https://bugs.winehq.org/show_bug.cgi?id=30648))
* Support for TransmitFile ([Wine Bug #5048](https://bugs.winehq.org/show_bug.cgi?id=5048))
* Support for UTF7 encoding/decoding ([Wine Bug #27388](https://bugs.winehq.org/show_bug.cgi?id=27388))
* 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 ([Wine Bug #34406](https://bugs.winehq.org/show_bug.cgi?id=34406))
* Support for interface change notifications ([Wine Bug #32328](https://bugs.winehq.org/show_bug.cgi?id=32328))
* 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 non-blocking SIO_ADDRESS_LIST_CHANGE requests ([Wine Bug #38062](https://bugs.winehq.org/show_bug.cgi?id=38062))
* 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 stored file ACLs ([Wine Bug #31858](https://bugs.winehq.org/show_bug.cgi?id=31858))
* Support for shell32 file operation progress dialog
* Support for stored file ACLs ([Wine Bug #33576](https://bugs.winehq.org/show_bug.cgi?id=33576))
* Try harder to get the host name address in getaddrinfo() ([Wine Bug #29609](https://bugs.winehq.org/show_bug.cgi?id=29609))
* 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))
@@ -185,5 +245,4 @@ Included bug fixes and improvements
* 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))
* wglDescribePixelFormat should return max index for NULL descriptor ([Wine Bug #6176](https://bugs.winehq.org/show_bug.cgi?id=6176))
* wininet should allow Accept-Encoding header for HTTP/1.0 ([Wine Bug #37046](https://bugs.winehq.org/show_bug.cgi?id=37046))

156
debian/changelog vendored
View File

@@ -1,3 +1,159 @@
wine-staging (1.7.39) unstable; urgency=low
* Fix a build failure on MacOS caused by using of strndup in the server-Inherited_ACLs patchset.
* Update patchset for ntdll-RtlUnwindEx to fix an issue with dwarf handling (fixes Wine Staging Bug #170).
* Updated patchset for dinput-Events to be compatible with more games (fixes Wine Staging Bug #149).
* Added patch for tests of RtlIpv6StringToAddress, RtlIpv{4,6}StringToAddressEx (by Mark Jansen).
* Added patch to fix multithreading issues with fullscreen clipping.
* Added patch with tests for VerQueryValueA (by Mark Jansen).
* Added patch to implement proper locking of keystate and synchronization with desktop thread.
* Added patch to implement better stub function for NtQueryInformationJobObject.
* Added patch to avoid crash in d3d9 tests by skipping when texture/surface creation fails.
* Added patch to fix wrong version of ID3DXEffect interface for d3dx9_24.
* Added patch to fix wrong version of ID3DXEffect interface for d3dx9_25.
* Added patch to allow to query for d3dx9_26 specific ID3DXEffect interface.
* Added patch to modify GetMessage to return already seen messages with higher priority.
* Added patch to silence repeated 'Unhandled blend factor 0' FIXME messages.
* Added patch for stub of PowerCreateRequest.
* Added patch to invalidate key state cache globally after calling LL hooks.
* Added patch to fix Wine Staging Bug #162 - Caesar III demo installer crashes.
* Added patch to fix wrong return values of RtlFindActivationContextSectionString for NULL data (by Mark Jansen).
* Added patch to implement _ismbckata and _mbctohira, moreover fix wrong return value of _ismbckata.
* Added patch to improve stub for ID3DXEffectImpl_CloneEffect.
* Added patch with additional tests for server-PeekMessage.
* Added patch to only zero the buffer up 32767 bytes in GetTempPathW.
* Added patches to implement shared memory wineserver communication for various user32 functions.
* Added patch to implement combase.WindowsSubstring function.
* Added patch with stub for wininet.ParseX509EncodedCertificateForListBoxEntry.
* Added patch to allow to edit winecfg library override by double clicking.
* Added patch to fix regression causing too dark/missing textures in several games.
* Added patch to fix regression causing black screen on startup.
* Added patch to implement SetupLogError[A|W] and Setup[Open|Close]Log.
* Added patches to get rid of wineserver call for GetActiveWindow, GetFocus, GetCapture.
* Removed patch to avoid hardcoded values for sizeof(GUID) (accepted upstream).
* Removed patches for SLGetWindowsInformationDWORD (accepted upstream).
* Removed patches for _ismbckata and _mbctohira (fixed upstream).
* Removed patches to fix wrong return values of RtlFindActivationContextSectionString for NULL data (accepted upstream).
* Removed patch for server-PeekMessage tests (accepted upstream).
* Removed patch to only zero the buffer up 32767 bytes in GetTempPathW (accepted upstream).
* Removed first patch of series ws2_32_WriteWatches (accepted upstream).
-- Sebastian Lackner <sebastian@fds-team.de> Sun, 22 Mar 2015 04:05:46 +0100
wine-staging (1.7.38) unstable; urgency=low
* Various improvements to patchupdate.py.
* Various improvements to dxva2 vaapi support.
* Long overdue update to the TransmitFile patches.
* Disabled patchset for reg.exe cleanup (partially accepted upstream).
* Added patch to report the correct refresh rates for some NVIDIA cards.
* Added patch to mark DllCanUnloadNow and DllGetClassObject as private (by Amine Khaldi, wine-patched/pull/3).
* Added patch to skip Wine specific __wine_check_for_events calls in ReactOS (by Amine Khaldi, wine-patched/pull/4).
* Added patch to declare pDirectInputCreateEx in a MSVC compatible way (by Amine Khaldi, wine-patched/pull/5).
* Added patch to complete and properly pack DNS_HEADER structure (by Amine Khaldi, wine-patched/pull/6).
* Added patch to fix race-condition when threads are killed during shutdown.
* Added patch to avoid deadlock by using _exit() in NtTerminateProcess.
* Added patch to fallback to global key state for threads without a queue.
* Added patch to implement SetFileInformationByHandle.
* Added patch for CopyFileEx progress callback and cancellation support.
* Added first set of patches for job objects (by Andrew Cook).
* Added patch for stub of gdiplus.GdipCreateEffect.
* Added patches for ntoskrnl.ProbeFor{Read,Write}.
* Added patch for support of shell32 file operation progress dialog.
* Added patch for basic implementation of job objects.
* Added patch to display animations for SHFileOperation progress dialog.
* Added patch to enforce that surfaces are flushed after ReleaseDC.
* Added patch to implement IProgressDialog::SetAnimation.
* Added patch in order to allow to override number of quality levels for D3DMULTISAMPLE_NONMASKABLE.
* Added patch for job object completion support.
* Added patch to properly track handle count of wineserver objects.
* Added patch to implement JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE.
* Added patch to implement PROGDLG_AUTOTIME for IProgressDialog.
* Added patch to implement support for NULL job handles in IsProcessInJob.
* Added patch to implement support for waiting on job object.
* Added patch to fix crash in clip_cursor_notify caused by uninitialized TLS.
* Added patches to make various functions in d3d8 / ddraw hotpatchable (required for fraps).
* Added patch to make GetLogicalProcessorInformationEx a stub which returns TRUE.
* Added patches to fix race-condition when closing browseui IProcessDialog.
* Added patch to avoid unloading msctf library while textservices are activated.
* Added patch to correct DDSCAPS2 and DDSURFACEDESC2 structure (by Amine Khaldi, wine-patched/pull/7).
* Added patch to fix crash when trying to switch back to a 16-bit stack.
* Added patches to improve performance by reusing old async IO structure if possible.
* Added patch to increase wineconsole commandline buffer size.
* Added patch to replace hardcoded values with sizeof(GUID) for d3dxof.
* Added patch to implement cuModuleLoad wrapper function.
* Added patch to process APC calls before starting process.
* Removed patch to properly call DriverUnload when unloading device drivers (accepted upstream).
* Removed patch to allow Accept-Encoding for HTTP/1.0 in wininet (accepted upstream).
* Removed patch to declare pDirectInputCreateEx in a MSVC compatible way (accepted upstream).
* Removed patch to limit cross thread access to ImmSet* functions (accepted upstream).
* Removed patch to fix arguments for OSMesaMakeCurrent when using 16 bit formats (accepted upstream).
* Removed patch to fix memory leak in ApplicationAssociationRegistration_QueryCurrentDefault (accepted upstream).
* Removed patch to complete and properly pack DNS_HEADER structure (accepted upstream).
* Removed patch to avoid accessing stack below ESP when restoring thread context (accepted upstream).
* Removed patch to fix mouse jittering in Planetside 2 (accepted upstream).
* Removed patch to handle write watches while we're on the signal stack (accepted upstream).
* Removed patch with tests for NtQueryLicenseKey (accepted upstream).
* Removed patch to fix crash when trying to switch back to a 16-bit stack (accepted upstream).
* Removed patch to fix definition of SECTION_BASIC_INFORMATION and SECTION_IMAGE_INFORMATION (accepted upstream).
* Removed patch to add library override instead of closing winecfg when pressing ENTER (accepted upstream).
* Removed patch to fix init of LONGLONG variable with a negative value in TGA decoder (accepted upstream).
* Removed patch to fix parameters for ConvertToIndexedBlendedMesh stub (accepted upstream).
-- Sebastian Lackner <sebastian@fds-team.de> Sat, 07 Mar 2015 23:09:11 +0100
wine-staging (1.7.37) unstable; urgency=low
* Fix a TRACE line in the iphlpapi-TCP_Table patchset.
* Fix an issue in the d3dx9_36-GetShaderSemantics patchset.
* Update patchset for RtlUnwindEx on x86_64 and fix a second bug.
* Updated patch for DXTn support to avoid libtxc_dxtn as compile time dependency.
* Added patch to avoid race-conditions in NtReadFile() operations with write watches.
* Added patch to avoid race-conditions with write watches in WS2_async_accept.
* Added patch to implement D3DXGetShaderOutputSemantics.
* Added patch to implement basic handling of write watches while we're on the signal stack.
* Added patch to add stub for ntoskrnl.ExAcquireResourceExclusiveLite.
* Added patch to add stub for ntoskrnl.ExReleaseResourceForThread.
* Added patch to add stub for ntoskrnl.ExDeleteResourceLite.
* Added patch to avoid accessing stack below ESP when restoring thread context.
* Added patch to implement IApplicationAssociationRegistration::QueryCurrentDefault.
* Added patch to improve stubs for AEV_{Get,Set}MasterVolumeLevel.
* Added patch to improve stubs for AEV_{Get,Set}Mute.
* Added patch to implement semi-stub for GetFileVersionInfoSizeExA/W.
* Added patch to implement semi-stub for GetFileVersionInfoExA/W.
* Added patch to ignore unsupported alpha channels in TIFF decoder.
* Added patch to add stub for ntoskrnl.Mm{Map,Unmap}LockedPages.
* Added patch to implement ntoskrnl.KeInitializeMutex.
* Added patch for support of non-blocking SIO_ADDRESS_LIST_CHANGE requests.
* Added patch for MPEG2/H264 DXVA2 video decoding through vaapi.
* Removed patches for UTF7 support (accepted upstream).
* Removed patches for SIO_ADDRESS_LIST_CHANGE ioctl (accepted upstream).
* Removed patch for IApplicationAssociationRegistration::QueryCurrentDefault (accepted upstream).
* Removed patch for IDirectPlayVoiceClient::GetCompressionTypes (accepted upstream).
-- Sebastian Lackner <sebastian@fds-team.de> Sun, 22 Feb 2015 06:58:09 +0100
wine-staging (1.7.36) unstable; urgency=low
* Fix an incompatibility of patchinstall.sh with non-bash shells under specific situations.
* Improve dinput-Events patch to be compatible with applications which do not explicitly poll for input.
* Added patch to properly call DriverUnload when unloading device drivers.
* Added patch to fix check for end_frame in RtlUnwindEx on x86_64.
* Added patch to fix mouse jittering in Planetside 2.
* Added patch to implement additional stubs for vcomp dlls.
* Added patchset to implement Vista+ threadpool functions for work / timers.
* Added patchset for Vista+ threadpool wait objects.
* Added patch to fix crash in Jedi Knight: Dark Forces II when winmm is set to native.
* Added patch to fix arguments for OSMesaMakeCurrent when using 16 bit formats.
* Added patch to add library override instead of closing winecfg when pressing ENTER over the combobox.
* Added patchset for various improvements and cleanup of reg.exe.
* Added patch to add performance library registry keys needed by MS SQL Server Management Studio Express 2008 R2.
* Added patch to implement NVIDIA video encoder library (nvencodeapi).
* Added patch to make nvcuda.dll compatible with CUDA 7.0.
* Added patch to implement stub for ntoskrnl.IoGetAttachedDeviceReference.
* Added patch to implement stubs for ntoskrnl.Ex{Acquire,Release}FastMutexUnsafe.
* Added patch to implement stubs for ntoskrnl.ObReferenceObjectByPointer and ntoskrnl.ObDereferenceObject.
* Added patch to implement stub for ntoskrnl.KeDelayExecutionThread.
* Added patch to improve various ntoskrnl stub functions.
* Added patch to fix wrong defition of ntoskrnl.IoReleaseCancelSpinLock function.
* Added patch to improve stub for AEV_GetVolumeRange.
* Removed patch to add additional tests for SLGetWindowsInformationDWORD (accepted upstream).
* Removed patch to avoid filling KdHelp structure for usermode applications (accepted upstream).
-- Sebastian Lackner <sebastian@fds-team.de> Sun, 08 Feb 2015 19:14:24 +0100
wine-staging (1.7.35) unstable; urgency=low
* Add stub for KeWaitForMultipleObjects.
* Add support for patchinstall.sh parameters '--no-patchlist' and '--no-autoconf'.

5
debian/control vendored
View File

@@ -48,6 +48,7 @@ Build-Depends: autotools-dev,
libtiff5-dev | libtiff4-dev | libtiff-dev,
libtxc-dxtn-s2tc-dev,
libv4l-dev,
libva-dev,
libx11-dev,
libxcomposite-dev,
libxcursor-dev,
@@ -95,6 +96,8 @@ Recommends: libcapi20-3,
libtiff5 | libtiff4,
libtxc-dxtn-s2tc0,
libv4l-0,
libva-drm1,
libva-x11-1,
libxcomposite1,
libxcursor1,
libxi6,
@@ -149,6 +152,8 @@ Recommends: libcapi20-3,
libtiff5 | libtiff4,
libtxc-dxtn-s2tc0,
libv4l-0,
libva-drm1,
libva-x11-1,
libxcomposite1,
libxcursor1,
libxi6,

View File

@@ -53,6 +53,12 @@ abort()
exit 1
}}
# Show a warning
warning()
{{
echo "WARNING: $1" >&2
}}
{patch_helpers}
# Default settings
@@ -65,7 +71,7 @@ enable=1
# Find location of patches
patchdir="$(dirname "$(readlink -f "$0")")"
if ! test -f "$patchdir/patchinstall.sh"; then
if test ! -f "$patchdir/patchinstall.sh"; then
if test -f ./patchinstall.sh; then
patchdir="$(pwd)"
else
@@ -154,7 +160,7 @@ fi
# are applied, but the exitcode is zero. To avoid broken builds we
# will workaround this issue or abort. For more information see
# https://github.com/wine-compholio/wine-staging/issues/7
test ! -d "$DESTDIR/.git" && (cd "$DESTDIR"; git rev-parse --git-dir) &> /dev/null
test ! -d ".git" && git rev-parse --git-dir >/dev/null 2>&1
workaround_git_bug="$?"
# Apply the patches using gitapply.sh, a small wrapper around 'patch'
@@ -183,9 +189,10 @@ elif test "$backend" = "epatch"; then
gitapply_args=""
fi
if ! command -v epatch &> /dev/null || \
! command -v ebegin &> /dev/null || \
! command -v eend &> /dev/null; then
if ! command -v epatch >/dev/null 2>&1 || \
! command -v ebegin >/dev/null 2>&1 || \
! command -v eend >/dev/null 2>&1 || \
! command -v die >/dev/null 2>&1; then
abort "Shell functions epatch/ebegin/eend not found. You have to source this script from your ebuild."
fi
@@ -269,9 +276,14 @@ patch_apply ()
# If autoupdate is enabled then create a tempfile to keep track of all patches
if test "$enable_patchlist" -eq 1; then
patchlist=$(mktemp)
if test ! -f "$patchlist"; then
abort "Unable to create temporary file for patchlist."
if test "$enable_Staging" -eq 1; then
patchlist=$(mktemp)
if test ! -f "$patchlist"; then
abort "Unable to create temporary file for patchlist."
fi
else
warning "Skipping generation of patchlist because 'Staging' patchset is disabled."
enable_patchlist=0
fi
fi
@@ -283,29 +295,18 @@ if test "$enable_patchlist" -eq 1; then
# Generate a temporary patch containing the patchlist and apply it
patch_data=$(cat "$patchlist" | sort)
patch_lines=$(echo "$patch_data" | wc -l)
if test ! -z "$patch_data"; then
patch_lines=$((${{patch_lines}}+23))
patch_lines=$(echo "$patch_data" | wc -l)
patch_lines=$((${{patch_lines}}+21))
cat > "$patchlist" <<EOF
From: Wine Staging Team <webmaster@fds-team.de>
Subject: Autogenerated patch list.
diff --git a/include/wine/library.h b/include/wine/library.h
--- a/include/wine/library.h
+++ b/include/wine/library.h
@@ -43,6 +43,7 @@ extern const char *wine_get_data_dir(void);
extern const char *wine_get_server_dir(void);
extern const char *wine_get_user_name(void);
extern const char *wine_get_version(void);
+extern const void *wine_get_patches(void);
extern const char *wine_get_build_id(void);
extern void wine_init_argv0_path( const char *argv0 );
extern void wine_exec_wine_binary( const char *name, char **argv, const char *env_var );
diff --git a/libs/wine/config.c b/libs/wine/config.c
index a273502..0a3182f 100644
index 5262c76..0a3182f 100644
--- a/libs/wine/config.c
+++ b/libs/wine/config.c
@@ -478,6 +478,${{patch_lines}} @@ const char *wine_get_version(void)
@@ -478,10 +478,${{patch_lines}} @@ const char *wine_get_version(void)
return PACKAGE_VERSION;
}}
@@ -321,39 +322,14 @@ ${{patch_data}}
+ {{ NULL, NULL, 0 }}
+}};
+
+/* return the applied non-standard patches */
+const void *wine_get_patches(void)
+{{
+ return &wine_patch_data[0];
+}}
+
/* return the build id string */
const char *wine_get_build_id(void)
/* return the applied non-standard patches */
const void *wine_get_patches(void)
{{
diff --git a/libs/wine/wine.def b/libs/wine/wine.def
index ed315bd..5b42029 100644
--- a/libs/wine/wine.def
+++ b/libs/wine/wine.def
@@ -83,6 +83,7 @@ EXPORTS
wine_get_sortkey
wine_get_user_name
wine_get_version
+ wine_get_patches
wine_init
wine_init_argv0_path
wine_is_dbcs_leadbyte
diff --git a/libs/wine/wine.map b/libs/wine/wine.map
index 2159fac..7cb2918 100644
--- a/libs/wine/wine.map
+++ b/libs/wine/wine.map
@@ -90,6 +90,7 @@ WINE_1.0
wine_get_ss;
wine_get_user_name;
wine_get_version;
+ wine_get_patches;
wine_init;
wine_init_argv0_path;
wine_is_dbcs_leadbyte;
- return NULL;
+ return &wine_patch_data[0];
}}
/* return the build id string */
EOF
patch_apply_file "$patchlist"
fi

View File

@@ -21,6 +21,8 @@
import binascii
import cPickle as pickle
import contextlib
import fnmatch
import hashlib
import itertools
import math
@@ -35,6 +37,8 @@ import subprocess
import sys
import tempfile
import textwrap
import urllib
import xml.dom.minidom
_devnull = open(os.devnull, 'wb')
@@ -73,6 +77,7 @@ class PatchSet(object):
self.patches = []
self.modified_files = set()
self.depends = set()
self.auto_depends = set()
self.verify_time = None
@@ -133,6 +138,34 @@ def _parse_int(val, default=0):
except AttributeError:
return default
def _winebugs_query(bugids):
"""Query short_desc from multiple wine bugzilla bugs at the same time."""
bugids = list(set(bugids)) # Remove duplicates and convert to fixed order
if len(bugids) == 0: return {}
# Query bugzilla
url = "http://bugs.winehq.org/show_bug.cgi?%s&ctype=xml&field=short_desc&field=bug_status&field=resolution" % \
"&".join(["id=%d" % bugid for bugid in bugids])
with contextlib.closing(urllib.urlopen(url)) as fp:
data = xml.dom.minidom.parseString(fp.read())
# convert xml in a dictionary containing all bugs we found
result = {}
for element in data.getElementsByTagName('bug_id'):
bugids.remove(int(element.firstChild.data))
def _get_text(n):
return n.firstChild.data if (n and n.firstChild) else None
for bugid, element in zip(bugids, data.getElementsByTagName('bug')):
if element.getElementsByTagName('bug_id'): continue
result[bugid] = {
'short_desc': _get_text(element.getElementsByTagName('short_desc')[0]),
'bug_status': _get_text(element.getElementsByTagName('bug_status')[0]),
'resolution': _get_text(element.getElementsByTagName('resolution')[0]) }
return result
def _read_changelog():
"""Read information from changelog."""
with open(config.path_changelog) as fp:
@@ -188,65 +221,12 @@ def enum_directories(revision, path):
return dirs
def read_definition(revision, filename, name_to_id):
"""Read a definition file and return information as tuple (depends, fixes)."""
filename = os.path.join(filename, "definition")
if revision is None:
with open(filename) as fp:
content = fp.read()
else:
filename = "%s:%s" % (revision, filename)
try:
content = subprocess.check_output(["git", "show", filename], stderr=_devnull)
except subprocess.CalledProcessError:
raise IOError("Failed to load %s" % filename)
depends = set()
fixes = []
disabled = False
ifdefined = None
for line in content.split("\n"):
if line.startswith("#"):
continue
tmp = line.split(":", 1)
if len(tmp) != 2:
continue
key, val = tmp[0].lower(), tmp[1].strip()
if key == "depends":
if name_to_id is not None:
if not name_to_id.has_key(val):
raise PatchUpdaterError("Definition file %s references unknown dependency %s" % (filename, val))
depends.add(name_to_id[val])
elif key == "fixes":
r = re.match("^[0-9]+$", val)
if r:
fixes.append((int(val), None))
continue
r = re.match("^\\[ *([0-9]+) *\\](.*)$", val)
if r:
fixes.append((int(r.group(1)), r.group(2).strip()))
continue
fixes.append((None, val))
elif key == "disabled":
disabled = _parse_int(val)
elif key == "ifdefined":
ifdefined = val
elif revision is None:
print "WARNING: Ignoring unknown command in definition file %s: %s" % (filename, line)
return depends, fixes, disabled, ifdefined
def read_patchset(revision = None):
"""Read information about all patchsets for a specific revision."""
unique_id = itertools.count()
all_patches = {}
name_to_id = {}
all_bugids = set()
# Read in sorted order (to ensure created Makefile doesn't change too much)
for name, directory in sorted(enum_directories(revision, config.path_patches)):
@@ -283,10 +263,72 @@ def read_patchset(revision = None):
# Now read the definition files in a second step
for i, patch in all_patches.iteritems():
try:
patch.depends, patch.fixes, patch.disabled, patch.ifdefined = \
read_definition(revision, os.path.join(config.path_patches, patch.name), name_to_id)
except IOError:
patch.depends, patch.fixes, patch.disabled, patch.ifdefined = set(), [], False, None
filename = os.path.join(os.path.join(config.path_patches, patch.name), "definition")
if revision is None:
with open(filename) as fp:
content = fp.read()
else:
filename = "%s:%s" % (revision, filename)
content = subprocess.check_output(["git", "show", filename], stderr=_devnull)
except (IOError, subprocess.CalledProcessError):
continue # Skip this definition file
for line in content.split("\n"):
if line.startswith("#"):
continue
tmp = line.split(":", 1)
if len(tmp) != 2:
continue
key, val = tmp[0].lower(), tmp[1].strip()
if key == "depends":
if not name_to_id.has_key(val):
raise PatchUpdaterError("Definition file %s references unknown dependency %s" % (filename, val))
patch.depends.add(name_to_id[val])
elif key == "apply-after":
for j, other_patch in all_patches.iteritems():
if i != j and any([fnmatch.fnmatch(f, val) for f in other_patch.modified_files]):
patch.auto_depends.add(j)
elif key == "fixes":
r = re.match("^[0-9]+$", val)
if r:
bugid = int(val)
patch.fixes.append((bugid, None))
all_bugids.add(bugid)
continue
r = re.match("^\\[ *([0-9]+) *\\](.*)$", val)
if r:
bugid = int(r.group(1))
patch.fixes.append((bugid, r.group(2).strip()))
all_bugids.add(bugid)
continue
patch.fixes.append((None, val))
elif key == "disabled":
patch.disabled = _parse_int(val)
elif key == "ifdefined":
patch.ifdefined = val
elif revision is None:
print "WARNING: Ignoring unknown command in definition file %s: %s" % (filename, line)
# To simplify the task of keeping the bug list up-to-date, list all bugs
# which might require attention.
if revision is None:
once = True
for bugid, bug in sorted(_winebugs_query(all_bugids).items()):
if bug['bug_status'] not in ["UNCONFIRMED", "NEW", "REOPENED"]:
if once:
print ""
print "WARNING: The following bugs might require attention:"
print ""
once = False
print " #%d - \"%s\" - %s %s" % (bugid, bug['short_desc'], bug['bug_status'],
bug['resolution'] if bug['resolution'] else "")
print ""
return all_patches
@@ -375,6 +417,7 @@ def resolve_dependencies(all_patches, index = None, depends = None):
# Recusively resolve dependencies
all_patches[i].verify_resolved = -1
_resolve(all_patches[i].depends)
_resolve(all_patches[i].auto_depends)
all_patches[i].verify_resolved = 1
resolved.append(i)
@@ -458,46 +501,59 @@ def generate_script(all_patches):
modified_files[f].append(i)
# Check dependencies
for filename, indices in modified_files.iteritems():
pool = multiprocessing.pool.ThreadPool(processes=4)
try:
for filename, indices in modified_files.iteritems():
# If one of patches is a binary patch, then we cannot / won't verify it - require dependencies in this case
if contains_binary_patch(all_patches, indices, filename):
if not causal_time_relation_any(all_patches, indices):
raise PatchUpdaterError("Because of binary patch modifying file %s the following patches need explicit dependencies: %s" %
(filename, ", ".join([all_patches[i].name for i in indices])))
continue
# If one of patches is a binary patch, then we cannot / won't verify it - require dependencies in this case
if contains_binary_patch(all_patches, indices, filename):
if not causal_time_relation_any(all_patches, indices):
raise PatchUpdaterError("Because of binary patch modifying file %s the following patches need explicit dependencies: %s" %
(filename, ", ".join([all_patches[i].name for i in indices])))
continue
original_content = get_wine_file(filename)
selected_patches = select_patches(all_patches, indices, filename)
original_content = get_wine_file(filename)
selected_patches = select_patches(all_patches, indices, filename)
# Show a progress bar while applying the patches - this task might take some time
with progressbar.ProgressBar(desc=filename, total=2 ** len(indices)) as progress:
for k, bitstring in enumerate(itertools.product([0,1], repeat=len(indices))):
progress.update(k)
# Show a progress bar while applying the patches - this task might take some time
chunk_size = 20
with progressbar.ProgressBar(desc=filename, total=2 ** len(indices) / chunk_size) as progress:
set_apply = [(i, all_patches[i]) for u, i in zip(bitstring, indices) if u]
set_skip = [(i, all_patches[i]) for u, i in zip(bitstring, indices) if not u]
test_apply = True
def test_apply(bitstring):
set_apply = [(i, all_patches[i]) for u, i in zip(bitstring, indices) if u]
set_skip = [(i, all_patches[i]) for u, i in zip(bitstring, indices) if not u]
# Check if there is any patch2 which depends directly or indirectly on patch1.
# If this is the case we found an impossible situation, we can be skipped in this test.
for i, patch1 in set_apply:
for j, patch2 in set_skip:
if causal_time_smaller(patch2.verify_time, patch1.verify_time):
test_apply = False
break
if not test_apply:
break
# Check if there is any patch2 which depends directly or indirectly on patch1.
# If this is the case we found an impossible situation, we can be skipped in this test.
for i, patch1 in set_apply:
for j, patch2 in set_skip:
if causal_time_smaller(patch2.verify_time, patch1.verify_time):
return True # we can skip this test
if test_apply:
try:
original = original_content
for i, patch in set_apply:
original = patchutils.apply_patch(original, selected_patches[i][1], fuzz=0)
except patchutils.PatchApplyError:
return False
return True # everything is fine
def test_apply_seq(bitstrings):
for bitstring in bitstrings:
if not test_apply(bitstring):
return False
return True
it = _split_seq(itertools.product([0,1], repeat=len(indices)), chunk_size)
for k, res in enumerate(pool.imap_unordered(test_apply_seq, it)):
if not res:
progress.finish("<failed to apply>")
raise PatchUpdaterError("Changes to file %s don't apply: %s" %
(filename, ", ".join([all_patches[i].name for i in indices])))
progress.update(k)
finally:
pool.close()
# Generate code for helper functions
lines = []
@@ -505,7 +561,7 @@ def generate_script(all_patches):
lines.append("patch_enable_all ()\n")
lines.append("{\n")
for i, patch in sorted([(i, all_patches[i]) for i in resolved], key=lambda x:x[1].name):
patch.variable = "enable_%s" % patch.name.replace("-","_")
patch.variable = "enable_%s" % patch.name.replace("-","_").replace(".","_")
lines.append("\t%s=\"$1\"\n" % patch.variable)
lines.append("}\n")
lines.append("\n")
@@ -589,7 +645,7 @@ def generate_markdown(all_patches, stable_patches, stable_compholio_version):
return "* %s ([Wine Bug #%d](https://bugs.winehq.org/show_bug.cgi?id=%d))" % \
(bugname, bugid, bugid) #, short_desc.replace("\\", "\\\\").replace("\"", "\\\""))
all_fixes = {}
all_fixes = {}
# Get fixes for current version
for _, patch in all_patches.iteritems():

View File

@@ -375,7 +375,7 @@ def generate_ifdef_patch(original, patched, ifdef):
"""Generate a patch which adds #ifdef where necessary to keep both the original and patched version."""
def _preprocess_source(fp):
"""Simple C preprocessor to determine where we can savely add #ifdef instructions."""
"""Simple C preprocessor to determine where we can safely add #ifdef instructions."""
_re_state0 = re.compile("(\"|/[/*])")
_re_state1 = re.compile("(\\\"|\")")
@@ -418,7 +418,7 @@ def generate_ifdef_patch(original, patched, ifdef):
elif match.group(0) == "/*":
state = 2 # Begin of comment
elif match.group(0) == "//":
break # Rest of the line is a comment, which can be savely ignored
break # Rest of the line is a comment, which can be safely ignored
else:
assert 0
@@ -460,7 +460,7 @@ def generate_ifdef_patch(original, patched, ifdef):
# The basic of idea of this algorithm is as following:
#
# (1) determine diff between original file and patched file
# (2) run the preprocessor, to determine where #ifdefs can be savely added
# (2) run the preprocessor, to determine where #ifdefs can be safely added
# (3) use diff and preprocessor information to create a merged version containing #ifdefs
# (4) create another diff to apply the changes on the patched version
#

View File

@@ -1,4 +1,4 @@
From 8c7754a1da9f43cf15057a8467c0b76c9da2ce40 Mon Sep 17 00:00:00 2001
From 5a4827d5c16aefd82029583710b9032a2356917b Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Sat, 22 Nov 2014 05:49:30 +0100
Subject: ntdll: Fix issues with write watches when using Exagear.
@@ -8,10 +8,10 @@ Subject: ntdll: Fix issues with write watches when using Exagear.
1 file changed, 21 insertions(+)
diff --git a/dlls/ntdll/virtual.c b/dlls/ntdll/virtual.c
index 1a8e4a4..4140323 100644
index f7aae0b..3fa2027 100644
--- a/dlls/ntdll/virtual.c
+++ b/dlls/ntdll/virtual.c
@@ -1558,6 +1558,26 @@ NTSTATUS virtual_handle_fault( LPCVOID addr, DWORD err )
@@ -1558,6 +1558,26 @@ NTSTATUS virtual_handle_fault( LPCVOID addr, DWORD err, BOOL on_signal_stack )
{
void *page = ROUND_ADDR( addr, page_mask );
BYTE *vprot = &view->prot[((const char *)page - (const char *)view->base) >> page_shift];
@@ -38,14 +38,14 @@ index 1a8e4a4..4140323 100644
if (err & EXCEPTION_WRITE_FAULT)
{
if ((view->protect & VPROT_WRITEWATCH) && (*vprot & VPROT_WRITEWATCH))
@@ -1573,6 +1593,7 @@ NTSTATUS virtual_handle_fault( LPCVOID addr, DWORD err )
@@ -1573,6 +1593,7 @@ NTSTATUS virtual_handle_fault( LPCVOID addr, DWORD err, BOOL on_signal_stack )
/* ignore fault if page is writable now */
if (VIRTUAL_GetUnixProt( *vprot ) & PROT_WRITE) ret = STATUS_SUCCESS;
}
+#endif
if (*vprot & VPROT_GUARD)
if (!on_signal_stack && (*vprot & VPROT_GUARD))
{
VIRTUAL_SetProt( view, page, page_size, *vprot & ~VPROT_GUARD );
--
2.1.3
2.2.2

View File

@@ -1,13 +1,17 @@
From 6661529d2422f99287336b764fe7a5b61484b8ad Mon Sep 17 00:00:00 2001
From f23512417cb3d149a8be4f757282d17cc1f99f9a Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Thu, 29 May 2014 23:43:45 +0200
Subject: loader: Add commandline option --patches to show the patch list.
---
dlls/ntdll/misc.c | 8 ++++++++
dlls/ntdll/ntdll.spec | 1 +
loader/main.c | 36 +++++++++++++++++++++++++++++++++++-
3 files changed, 44 insertions(+), 1 deletion(-)
dlls/ntdll/misc.c | 8 ++++++++
dlls/ntdll/ntdll.spec | 1 +
include/wine/library.h | 1 +
libs/wine/config.c | 6 ++++++
libs/wine/wine.def | 1 +
libs/wine/wine.map | 1 +
loader/main.c | 42 +++++++++++++++++++++++++++++++++++++++++-
7 files changed, 59 insertions(+), 1 deletion(-)
diff --git a/dlls/ntdll/misc.c b/dlls/ntdll/misc.c
index ad1b43b..1f985e7 100644
@@ -29,7 +33,7 @@ index ad1b43b..1f985e7 100644
*/
const char * CDECL NTDLL_wine_get_build_id(void)
diff --git a/dlls/ntdll/ntdll.spec b/dlls/ntdll/ntdll.spec
index 7e95969..f9483aa 100644
index 51de6e7..ee4ed49 100644
--- a/dlls/ntdll/ntdll.spec
+++ b/dlls/ntdll/ntdll.spec
@@ -1421,6 +1421,7 @@
@@ -40,8 +44,61 @@ index 7e95969..f9483aa 100644
@ cdecl wine_get_build_id() NTDLL_wine_get_build_id
@ cdecl wine_get_host_version(ptr ptr) NTDLL_wine_get_host_version
diff --git a/include/wine/library.h b/include/wine/library.h
index 242bb69..fae73fe 100644
--- a/include/wine/library.h
+++ b/include/wine/library.h
@@ -43,6 +43,7 @@ extern const char *wine_get_data_dir(void);
extern const char *wine_get_server_dir(void);
extern const char *wine_get_user_name(void);
extern const char *wine_get_version(void);
+extern const void *wine_get_patches(void);
extern const char *wine_get_build_id(void);
extern void wine_init_argv0_path( const char *argv0 );
extern void wine_exec_wine_binary( const char *name, char **argv, const char *env_var );
diff --git a/libs/wine/config.c b/libs/wine/config.c
index a273502..5262c76 100644
--- a/libs/wine/config.c
+++ b/libs/wine/config.c
@@ -478,6 +478,12 @@ const char *wine_get_version(void)
return PACKAGE_VERSION;
}
+/* return the applied non-standard patches */
+const void *wine_get_patches(void)
+{
+ return NULL;
+}
+
/* return the build id string */
const char *wine_get_build_id(void)
{
diff --git a/libs/wine/wine.def b/libs/wine/wine.def
index ed315bd..5b42029 100644
--- a/libs/wine/wine.def
+++ b/libs/wine/wine.def
@@ -83,6 +83,7 @@ EXPORTS
wine_get_sortkey
wine_get_user_name
wine_get_version
+ wine_get_patches
wine_init
wine_init_argv0_path
wine_is_dbcs_leadbyte
diff --git a/libs/wine/wine.map b/libs/wine/wine.map
index 2159fac..7cb2918 100644
--- a/libs/wine/wine.map
+++ b/libs/wine/wine.map
@@ -90,6 +90,7 @@ WINE_1.0
wine_get_ss;
wine_get_user_name;
wine_get_version;
+ wine_get_patches;
wine_init;
wine_init_argv0_path;
wine_is_dbcs_leadbyte;
diff --git a/loader/main.c b/loader/main.c
index ac67290..b1df463 100644
index ce21173..4794e51 100644
--- a/loader/main.c
+++ b/loader/main.c
@@ -89,7 +89,8 @@ static void check_command_line( int argc, char *argv[] )
@@ -54,7 +111,7 @@ index ac67290..b1df463 100644
if (argc <= 1)
{
@@ -106,6 +107,39 @@ static void check_command_line( int argc, char *argv[] )
@@ -106,6 +107,45 @@ static void check_command_line( int argc, char *argv[] )
printf( "%s\n", wine_get_build_id() );
exit(0);
}
@@ -68,6 +125,12 @@ index ac67290..b1df463 100644
+ }
+ *next, *cur = wine_get_patches();
+
+ if (!cur)
+ {
+ fprintf( stderr, "Patchlist not available.\n" );
+ exit(1);
+ }
+
+ while (cur->author)
+ {
+ next = cur + 1;
@@ -77,7 +140,7 @@ index ac67290..b1df463 100644
+ next++;
+ }
+
+ printf( "%s (%d):\n", cur->author, next - cur );
+ printf( "%s (%d):\n", cur->author, (int)(next - cur) );
+ while (cur < next)
+ {
+ printf( " %s", cur->subject );
@@ -95,5 +158,5 @@ index ac67290..b1df463 100644
--
2.1.3
2.2.1

View File

@@ -1,19 +1,19 @@
From 5f0f1d8dc69cd473f35c874b46e98a34930d0b46 Mon Sep 17 00:00:00 2001
From e71a6c24c41e3d390a81aac1986938a1db71f9e6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Wed, 28 May 2014 19:50:51 +0200
Subject: loader: Add commandline option --check-libs.
---
include/wine/library.h | 2 +
libs/wine/config.c | 103 +++++++++++++++++++++++++++++++++++++++++++++++++
libs/wine/loader.c | 36 +++++++++++++++++
libs/wine/config.c | 112 +++++++++++++++++++++++++++++++++++++++++++++++++
libs/wine/loader.c | 36 ++++++++++++++++
libs/wine/wine.def | 2 +
libs/wine/wine.map | 2 +
loader/main.c | 50 +++++++++++++++++++++++-
6 files changed, 194 insertions(+), 1 deletion(-)
loader/main.c | 50 +++++++++++++++++++++-
6 files changed, 203 insertions(+), 1 deletion(-)
diff --git a/include/wine/library.h b/include/wine/library.h
index 242bb69..fa1e339 100644
index fae73fe..7395a11 100644
--- a/include/wine/library.h
+++ b/include/wine/library.h
@@ -40,6 +40,7 @@ extern "C" {
@@ -24,7 +24,7 @@ index 242bb69..fa1e339 100644
extern const char *wine_get_server_dir(void);
extern const char *wine_get_user_name(void);
extern const char *wine_get_version(void);
@@ -51,6 +52,7 @@ extern void wine_exec_wine_binary( const char *name, char **argv, const char *en
@@ -52,6 +53,7 @@ extern void wine_exec_wine_binary( const char *name, char **argv, const char *en
typedef void (*load_dll_callback_t)( void *, const char * );
@@ -33,10 +33,10 @@ index 242bb69..fa1e339 100644
extern void *wine_dlsym( void *handle, const char *symbol, char *error, size_t errorsize );
extern int wine_dlclose( void *handle, char *error, size_t errorsize );
diff --git a/libs/wine/config.c b/libs/wine/config.c
index a273502..58e4977 100644
index 5262c76..7acf51b 100644
--- a/libs/wine/config.c
+++ b/libs/wine/config.c
@@ -444,6 +444,109 @@ const char *wine_get_build_dir(void)
@@ -444,6 +444,118 @@ const char *wine_get_build_dir(void)
return build_dir;
}
@@ -104,6 +104,15 @@ index a273502..58e4977 100644
+#ifdef SONAME_LIBV4L1
+ SONAME_LIBV4L1,
+#endif
+#ifdef SONAME_LIBVA
+ SONAME_LIBVA,
+#endif
+#ifdef SONAME_LIBVA_DRM
+ SONAME_LIBVA_DRM,
+#endif
+#ifdef SONAME_LIBVA_X11
+ SONAME_LIBVA_X11,
+#endif
+#ifdef SONAME_LIBX11
+ SONAME_LIBX11,
+#endif
@@ -194,7 +203,7 @@ index 3591ede..2718857 100644
*/
void *wine_dlsym( void *handle, const char *symbol, char *error, size_t errorsize )
diff --git a/libs/wine/wine.def b/libs/wine/wine.def
index ed315bd..b6acbce 100644
index 5b42029..6acf329 100644
--- a/libs/wine/wine.def
+++ b/libs/wine/wine.def
@@ -64,6 +64,7 @@ EXPORTS
@@ -214,7 +223,7 @@ index ed315bd..b6acbce 100644
wine_get_sortkey
wine_get_user_name
diff --git a/libs/wine/wine.map b/libs/wine/wine.map
index 2159fac..91ace06 100644
index 7cb2918..72ffed8 100644
--- a/libs/wine/wine.map
+++ b/libs/wine/wine.map
@@ -65,6 +65,7 @@ WINE_1.0
@@ -234,7 +243,7 @@ index 2159fac..91ace06 100644
wine_get_sortkey;
wine_get_ss;
diff --git a/loader/main.c b/loader/main.c
index 76bf324..36738f2 100644
index fa0efa2..e96363d 100644
--- a/loader/main.c
+++ b/loader/main.c
@@ -36,6 +36,12 @@
@@ -260,7 +269,7 @@ index 76bf324..36738f2 100644
if (argc <= 1)
{
@@ -135,6 +142,47 @@ static void check_command_line( int argc, char *argv[] )
@@ -146,6 +153,47 @@ static void check_command_line( int argc, char *argv[] )
exit(0);
}
@@ -309,5 +318,5 @@ index 76bf324..36738f2 100644
--
2.1.2
2.3.1

View File

@@ -0,0 +1,53 @@
From fe4f06bfdb1a53e0be15aca8f1f8f897f7fef632 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Fri, 27 Feb 2015 17:46:11 +0100
Subject: browseui: Implement IProgressDialog::SetAnimation.
---
dlls/browseui/progressdlg.c | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
diff --git a/dlls/browseui/progressdlg.c b/dlls/browseui/progressdlg.c
index 598197b..a14fa17 100644
--- a/dlls/browseui/progressdlg.c
+++ b/dlls/browseui/progressdlg.c
@@ -175,6 +175,7 @@ static INT_PTR CALLBACK dialog_proc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM l
case WM_INITDIALOG:
{
struct create_params *params = (struct create_params *)lParam;
+ LONG_PTR style;
/* Note: until we set the hEvent, the object is protected by
* the critical section held by StartProgress */
@@ -191,6 +192,10 @@ static INT_PTR CALLBACK dialog_proc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM l
if (This->dwFlags & PROGDLG_NOMINIMIZE)
SetWindowLongW(hwnd, GWL_STYLE, GetWindowLongW(hwnd, GWL_STYLE) & (~WS_MINIMIZEBOX));
+ style = GetWindowLongPtrW(GetDlgItem(hwnd, IDC_ANIMATION), GWL_STYLE);
+ style |= ACS_AUTOPLAY | ACS_TRANSPARENT;
+ SetWindowLongPtrW(GetDlgItem(hwnd, IDC_ANIMATION), GWL_STYLE, style);
+
update_dialog(This, 0xffffffff);
This->dwUpdate = 0;
This->isCancelled = FALSE;
@@ -396,7 +401,16 @@ static HRESULT WINAPI ProgressDialog_SetTitle(IProgressDialog *iface, LPCWSTR pw
static HRESULT WINAPI ProgressDialog_SetAnimation(IProgressDialog *iface, HINSTANCE hInstance, UINT uiResourceId)
{
- FIXME("(%p, %p, %d) - stub\n", iface, hInstance, uiResourceId);
+ ProgressDialog *This = impl_from_IProgressDialog(iface);
+
+ TRACE("(%p, %p, %d)\n", iface, hInstance, uiResourceId);
+
+ if (uiResourceId & ~0xFFFF)
+ return S_OK;
+
+ if (!SendDlgItemMessageW(This->hwnd, IDC_ANIMATION, ACM_OPENW, (WPARAM)hInstance, uiResourceId))
+ WARN("Failed to load animation\n");
+
return S_OK;
}
--
2.3.0

View File

@@ -0,0 +1,161 @@
From 61fce27e29e7e61b76916d0e1014a3294217fb54 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sat, 28 Feb 2015 02:28:08 +0100
Subject: browseui: Implement PROGDLG_AUTOTIME flag for IProgressDialog.
---
dlls/browseui/browseui.rc | 5 ++++
dlls/browseui/progressdlg.c | 64 +++++++++++++++++++++++++++++++++++++++++----
dlls/browseui/resids.h | 5 ++++
3 files changed, 69 insertions(+), 5 deletions(-)
diff --git a/dlls/browseui/browseui.rc b/dlls/browseui/browseui.rc
index 833b139..64b859d 100644
--- a/dlls/browseui/browseui.rc
+++ b/dlls/browseui/browseui.rc
@@ -25,6 +25,11 @@ LANGUAGE LANG_ENGLISH, SUBLANG_DEFAULT
STRINGTABLE
{
IDS_CANCELLING "Canceling..."
+ IDS_REMAINING1 "%u %s remaining"
+ IDS_REMAINING2 "%u %s and %u %s remaining"
+ IDS_SECONDS "seconds"
+ IDS_MINUTES "minutes"
+ IDS_HOURS "hours"
}
IDD_PROGRESS_DLG DIALOG 0, 0, 260, 85
diff --git a/dlls/browseui/progressdlg.c b/dlls/browseui/progressdlg.c
index 598197b..d632860 100644
--- a/dlls/browseui/progressdlg.c
+++ b/dlls/browseui/progressdlg.c
@@ -73,6 +73,9 @@ typedef struct tagProgressDialog {
ULONGLONG ullCompleted;
ULONGLONG ullTotal;
HWND hwndDisabledParent; /* For modal dialog: the parent that need to be re-enabled when the dialog ends */
+ ULONGLONG startTime;
+ LPWSTR remainingMsg[2];
+ LPWSTR timeMsg[3];
} ProgressDialog;
static inline ProgressDialog *impl_from_IProgressDialog(IProgressDialog *iface)
@@ -257,14 +260,18 @@ static DWORD WINAPI dialog_thread(LPVOID lpParameter)
static void ProgressDialog_Destructor(ProgressDialog *This)
{
+ int i;
TRACE("destroying %p\n", This);
if (This->hwnd)
end_dialog(This);
- heap_free(This->lines[0]);
- heap_free(This->lines[1]);
- heap_free(This->lines[2]);
+ for (i = 0; i < 3; i++)
+ heap_free(This->lines[i]);
heap_free(This->cancelMsg);
heap_free(This->title);
+ for (i = 0; i < 2; i++)
+ heap_free(This->remainingMsg[i]);
+ for (i = 0; i < 3; i++)
+ heap_free(This->timeMsg[i]);
This->cs.DebugInfo->Spare[0] = 0;
DeleteCriticalSection(&This->cs);
heap_free(This);
@@ -326,8 +333,6 @@ static HRESULT WINAPI ProgressDialog_StartProgressDialog(IProgressDialog *iface,
TRACE("(%p, %p, %x, %p)\n", iface, punkEnableModeless, dwFlags, reserved);
if (punkEnableModeless || reserved)
FIXME("Reserved parameters not null (%p, %p)\n", punkEnableModeless, reserved);
- if (dwFlags & PROGDLG_AUTOTIME)
- FIXME("Flags PROGDLG_AUTOTIME not supported\n");
if (dwFlags & PROGDLG_NOTIME)
FIXME("Flags PROGDLG_NOTIME not supported\n");
@@ -358,6 +363,7 @@ static HRESULT WINAPI ProgressDialog_StartProgressDialog(IProgressDialog *iface,
This->hwndDisabledParent = hwndDisable;
}
+ This->startTime = GetTickCount64();
LeaveCriticalSection(&This->cs);
return S_OK;
@@ -406,6 +412,52 @@ static BOOL WINAPI ProgressDialog_HasUserCancelled(IProgressDialog *iface)
return This->isCancelled;
}
+static void load_time_strings(ProgressDialog *This)
+{
+ int i;
+
+ for (i = 0; i < 2; i++)
+ {
+ if (!This->remainingMsg[i])
+ This->remainingMsg[i] = load_string(BROWSEUI_hinstance, IDS_REMAINING1 + i);
+ }
+ for (i = 0; i < 3; i++)
+ {
+ if (!This->timeMsg[i])
+ This->timeMsg[i] = load_string(BROWSEUI_hinstance, IDS_SECONDS + i);
+ }
+}
+
+static void update_time_remaining(ProgressDialog *This, ULONGLONG ullCompleted, ULONGLONG ullTotal)
+{
+ unsigned int remaining, remainder = 0;
+ ULONGLONG elapsed;
+ WCHAR line[128];
+ int i;
+
+ if (!This->startTime || !ullCompleted || !ullTotal)
+ return;
+
+ load_time_strings(This);
+
+ elapsed = GetTickCount64() - This->startTime;
+ remaining = (elapsed * ullTotal / ullCompleted - elapsed) / 1000;
+
+ for (i = 0; remaining >= 60 && i < 2; i++)
+ {
+ remainder = remaining % 60;
+ remaining /= 60;
+ }
+
+ if (i > 0 && remaining < 2 && remainder != 0)
+ wsprintfW(line, This->remainingMsg[1], remaining, This->timeMsg[i], remainder, This->timeMsg[i-1]);
+ else
+ wsprintfW(line, This->remainingMsg[0], remaining, This->timeMsg[i]);
+
+ set_buffer(&This->lines[2], line);
+ This->dwUpdate |= UPDATE_LINE3;
+}
+
static HRESULT WINAPI ProgressDialog_SetProgress64(IProgressDialog *iface, ULONGLONG ullCompleted, ULONGLONG ullTotal)
{
ProgressDialog *This = impl_from_IProgressDialog(iface);
@@ -418,6 +470,8 @@ static HRESULT WINAPI ProgressDialog_SetProgress64(IProgressDialog *iface, ULONG
This->ullCompleted = ullCompleted;
This->dwUpdate |= UPDATE_PROGRESS;
hwnd = This->hwnd;
+ if (This->dwFlags & PROGDLG_AUTOTIME)
+ update_time_remaining(This, ullCompleted, ullTotal);
LeaveCriticalSection(&This->cs);
if (hwnd)
diff --git a/dlls/browseui/resids.h b/dlls/browseui/resids.h
index cd44a8e..865cdd1 100644
--- a/dlls/browseui/resids.h
+++ b/dlls/browseui/resids.h
@@ -21,6 +21,11 @@
#include "commctrl.h"
#define IDS_CANCELLING 16
+#define IDS_REMAINING1 17
+#define IDS_REMAINING2 18
+#define IDS_SECONDS 19
+#define IDS_MINUTES 20
+#define IDS_HOURS 21
#define IDC_ANIMATION 100
#define IDC_PROGRESS_BAR 102
--
2.3.0

View File

@@ -0,0 +1,48 @@
From da4415d947b792fc5e0de978cf22e68d2b6b8601 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Sun, 1 Mar 2015 03:52:06 +0100
Subject: browseui: Avoid race-conditions when progress dialog is released
before thread terminates.
---
dlls/browseui/progressdlg.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/dlls/browseui/progressdlg.c b/dlls/browseui/progressdlg.c
index e61a4cc..7d07ee9 100644
--- a/dlls/browseui/progressdlg.c
+++ b/dlls/browseui/progressdlg.c
@@ -235,6 +235,7 @@ static DWORD WINAPI dialog_thread(LPVOID lpParameter)
/* Note: until we set the hEvent in WM_INITDIALOG, the ProgressDialog object
* is protected by the critical section held by StartProgress */
struct create_params *params = lpParameter;
+ ProgressDialog *This = params->This;
HWND hwnd;
MSG msg;
@@ -252,6 +253,7 @@ static DWORD WINAPI dialog_thread(LPVOID lpParameter)
}
}
+ IProgressDialog_Release(&This->IProgressDialog_iface);
return 0;
}
@@ -341,10 +343,14 @@ static HRESULT WINAPI ProgressDialog_StartProgressDialog(IProgressDialog *iface,
return S_OK; /* as on XP */
}
This->dwFlags = dwFlags;
+
params.This = This;
params.hwndParent = hwndParent;
params.hEvent = CreateEventW(NULL, TRUE, FALSE, NULL);
+ /* thread holds one reference to ensure clean shutdown */
+ IProgressDialog_AddRef(&This->IProgressDialog_iface);
+
hThread = CreateThread(NULL, 0, dialog_thread, &params, 0, NULL);
WaitForSingleObject(params.hEvent, INFINITE);
CloseHandle(params.hEvent);
--
2.3.0

View File

@@ -0,0 +1,181 @@
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

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

View File

@@ -0,0 +1,25 @@
From c8dd8ae321e08d94954fe011de653cc333d0cbbb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sat, 28 Feb 2015 21:24:54 +0100
Subject: d3d8: Make IDirect3DSwapChain8::Present hotpachable.
---
dlls/d3d8/swapchain.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/d3d8/swapchain.c b/dlls/d3d8/swapchain.c
index 067a3e0..44fc02a 100644
--- a/dlls/d3d8/swapchain.c
+++ b/dlls/d3d8/swapchain.c
@@ -86,7 +86,7 @@ static ULONG WINAPI d3d8_swapchain_Release(IDirect3DSwapChain8 *iface)
return ref;
}
-static HRESULT WINAPI d3d8_swapchain_Present(IDirect3DSwapChain8 *iface,
+static HRESULT WINAPI DECLSPEC_HOTPATCH d3d8_swapchain_Present(IDirect3DSwapChain8 *iface,
const RECT *src_rect, const RECT *dst_rect, HWND dst_window_override,
const RGNDATA *dirty_region)
{
--
2.3.0

View File

@@ -0,0 +1,43 @@
From d4c757fd049018cad57ad8d6ef304b9dd2220ae0 Mon Sep 17 00:00:00 2001
From: Christian Costa <titan.costa@gmail.com>
Date: Fri, 13 Mar 2015 23:42:20 +0100
Subject: d3d9/tests: Avoid crash when surface and texture creation fails.
---
dlls/d3d9/tests/device.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/dlls/d3d9/tests/device.c b/dlls/d3d9/tests/device.c
index f1c75e4..46612f5 100644
--- a/dlls/d3d9/tests/device.c
+++ b/dlls/d3d9/tests/device.c
@@ -7779,8 +7779,14 @@ static void test_surface_blocks(void)
break;
default:
+ hr = E_FAIL;
break;
}
+ if (FAILED(hr))
+ {
+ skip("Failed to create surface, skipping tests.\n");
+ continue;
+ }
if (formats[i].block_width > 1)
{
@@ -8661,6 +8667,11 @@ static void test_volume_blocks(void)
hr = IDirect3DDevice9_CreateVolumeTexture(device, 24, 8, 8, 1, 0,
formats[i].fmt, D3DPOOL_SCRATCH, &texture, NULL);
ok(SUCCEEDED(hr), "Failed to create volume texture, hr %#x.\n", hr);
+ if (FAILED(hr))
+ {
+ skip("Failed to create texture, skipping tests.\n");
+ continue;
+ }
/* Test lockrect offset */
for (j = 0; j < sizeof(offset_tests) / sizeof(*offset_tests); j++)
--
2.3.2

View File

@@ -0,0 +1,24 @@
From 348d1eafe2d80017509ebfb79832a7465fd1693b Mon Sep 17 00:00:00 2001
From: Amine Khaldi <amine.khaldi@reactos.org>
Date: Sun, 22 Feb 2015 22:39:25 +0100
Subject: d3drm: Mark DllCanUnloadNow and DllGetClassObject as private.
---
dlls/d3drm/d3drm.spec | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/dlls/d3drm/d3drm.spec b/dlls/d3drm/d3drm.spec
index 4108a72..e83fb0b 100644
--- a/dlls/d3drm/d3drm.spec
+++ b/dlls/d3drm/d3drm.spec
@@ -19,5 +19,5 @@
@ stdcall D3DRMVectorScale(ptr ptr float)
@ stdcall D3DRMVectorSubtract(ptr ptr ptr)
@ stdcall Direct3DRMCreate(ptr)
-@ stub DllCanUnloadNow
-@ stub DllGetClassObject
+@ stub -private DllCanUnloadNow
+@ stub -private DllGetClassObject
--
2.3.0

View File

@@ -0,0 +1,58 @@
From 103ca35d4ed896961341134083aea44ff7267cd2 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Sat, 14 Mar 2015 05:01:05 +0100
Subject: d3dx9_24: Add an interface wrapper for different version of
ID3DXEffect.
---
dlls/d3dx9_24/d3dx9_24.spec | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)
diff --git a/dlls/d3dx9_24/d3dx9_24.spec b/dlls/d3dx9_24/d3dx9_24.spec
index f111618..d1c5b21 100644
--- a/dlls/d3dx9_24/d3dx9_24.spec
+++ b/dlls/d3dx9_24/d3dx9_24.spec
@@ -43,21 +43,21 @@
@ stdcall D3DXCreateCubeTextureFromResourceExW(ptr long long long long long long long long long long ptr ptr ptr) d3dx9_36.D3DXCreateCubeTextureFromResourceExW
@ stdcall D3DXCreateCubeTextureFromResourceW(ptr long ptr ptr) d3dx9_36.D3DXCreateCubeTextureFromResourceW
@ stdcall D3DXCreateCylinder(ptr long long long long long ptr ptr) d3dx9_36.D3DXCreateCylinder
-@ stdcall D3DXCreateEffect(ptr ptr long ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffect
+@ stdcall D3DXCreateEffect(ptr ptr long ptr ptr long ptr ptr ptr) d3dx9_25.D3DXCreateEffect
@ stdcall D3DXCreateEffectCompiler(ptr long ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompiler
@ stdcall D3DXCreateEffectCompilerFromFileA(str ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompilerFromFileA
@ stdcall D3DXCreateEffectCompilerFromFileW(wstr ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompilerFromFileW
@ stdcall D3DXCreateEffectCompilerFromResourceA(long str ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompilerFromResourceA
@ stdcall D3DXCreateEffectCompilerFromResourceW(long wstr ptr ptr long ptr ptr) d3dx9_36.D3DXCreateEffectCompilerFromResourceW
-@ stdcall D3DXCreateEffectEx(ptr ptr long ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectEx
-@ stdcall D3DXCreateEffectFromFileA(ptr str ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromFileA
-@ stdcall D3DXCreateEffectFromFileExA(ptr str ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromFileExA
-@ stdcall D3DXCreateEffectFromFileExW(ptr str ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromFileExW
-@ stdcall D3DXCreateEffectFromFileW(ptr wstr ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromFileW
-@ stdcall D3DXCreateEffectFromResourceA(ptr long str ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromResourceA
-@ stdcall D3DXCreateEffectFromResourceExA(ptr long str ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromResourceExA
-@ stdcall D3DXCreateEffectFromResourceExW(ptr long str ptr ptr str long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromResourceExW
-@ stdcall D3DXCreateEffectFromResourceW(ptr long wstr ptr ptr long ptr ptr ptr) d3dx9_36.D3DXCreateEffectFromResourceW
+@ stdcall D3DXCreateEffectEx(ptr ptr long ptr ptr str long ptr ptr ptr) d3dx9_25.D3DXCreateEffectEx
+@ stdcall D3DXCreateEffectFromFileA(ptr str ptr ptr long ptr ptr ptr) d3dx9_25.D3DXCreateEffectFromFileA
+@ stdcall D3DXCreateEffectFromFileExA(ptr str ptr ptr str long ptr ptr ptr) d3dx9_25.D3DXCreateEffectFromFileExA
+@ stdcall D3DXCreateEffectFromFileExW(ptr str ptr ptr str long ptr ptr ptr) d3dx9_25.D3DXCreateEffectFromFileExW
+@ stdcall D3DXCreateEffectFromFileW(ptr wstr ptr ptr long ptr ptr ptr) d3dx9_25.D3DXCreateEffectFromFileW
+@ stdcall D3DXCreateEffectFromResourceA(ptr long str ptr ptr long ptr ptr ptr) d3dx9_25.D3DXCreateEffectFromResourceA
+@ stdcall D3DXCreateEffectFromResourceExA(ptr long str ptr ptr str long ptr ptr ptr) d3dx9_25.D3DXCreateEffectFromResourceExA
+@ stdcall D3DXCreateEffectFromResourceExW(ptr long str ptr ptr str long ptr ptr ptr) d3dx9_25.D3DXCreateEffectFromResourceExW
+@ stdcall D3DXCreateEffectFromResourceW(ptr long wstr ptr ptr long ptr ptr ptr) d3dx9_25.D3DXCreateEffectFromResourceW
@ stdcall D3DXCreateEffectPool(ptr) d3dx9_36.D3DXCreateEffectPool
@ stdcall D3DXCreateFontA(ptr long long long long long long long long long str ptr) d3dx9_36.D3DXCreateFontA
@ stdcall D3DXCreateFontIndirectA(ptr ptr ptr) d3dx9_36.D3DXCreateFontIndirectA
@@ -115,7 +115,7 @@
@ stdcall D3DXCreateVolumeTextureFromResourceW(ptr long ptr ptr) d3dx9_36.D3DXCreateVolumeTextureFromResourceW
@ stdcall D3DXDebugMute(long) d3dx9_36.D3DXDebugMute
@ stdcall D3DXDeclaratorFromFVF(long ptr) d3dx9_36.D3DXDeclaratorFromFVF
-@ stdcall D3DXDisassembleEffect(ptr long ptr) d3dx9_36.D3DXDisassembleEffect
+@ stdcall D3DXDisassembleEffect(ptr long ptr) d3dx9_25.D3DXDisassembleEffect
@ stdcall D3DXDisassembleShader(ptr long str ptr) d3dx9_36.D3DXDisassembleShader
@ stdcall D3DXFileCreate(ptr) d3dx9_36.D3DXFileCreate
@ stdcall D3DXFillCubeTexture(ptr ptr ptr) d3dx9_36.D3DXFillCubeTexture
--
2.3.2

View File

@@ -0,0 +1,2 @@
Fixes: Fix wrong version of ID3DXEffect interface for d3dx9_24
Depends: d3dx9_25-ID3DXEffect

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