Commit Graph

106587 Commits

Author SHA1 Message Date
Sebastian Lackner 6c586d5db8 kernel32: Forward threadpool wait functions to ntdll. 2015-07-06 14:49:39 +09:00
Sebastian Lackner 0021569778 ntdll: Try to merge threadpool wait queue buckets if possible.
When the number of elements per bucket is too small, then try to reduce
the number of threads by merging buckets. This is to ensure that the
number of running wait queue threads doesn't get too big.
2015-07-06 14:49:39 +09:00
Sebastian Lackner 634bbed3fb ntdll/tests: Add threadpool wait tests with more than 63 objects. 2015-07-06 14:49:39 +09:00
Sebastian Lackner 553ae488d0 ntdll/tests: Add basic tests for threadpool wait objects. 2015-07-06 14:49:39 +09:00
Sebastian Lackner 185247576b ntdll: Implement TpSetWait and TpWaitForWait. 2015-07-06 14:49:39 +09:00
Sebastian Lackner f1be5dcac0 ntdll: Implement threadpool wait queues.
To implement waiting for an arbitrary number of handles, we group them
in buckets up to (MAXIMUM_WAIT_OBJECTS - 1) objects, and then assign a
dedicated wait queue thread. The last handle is used to notify about
changes.
2015-07-06 14:49:38 +09:00
Sebastian Lackner 4523a54c62 ntdll: Implement TpAllocWait and TpReleaseWait. 2015-07-06 14:34:20 +09:00
Nikolay Sivov 8b566b1da7 dwrite: Reset calculated text height before updating it. 2015-07-03 22:58:07 +09:00
Nikolay Sivov ed54767030 dwrite: Store layout width/height directly in metrics structure. 2015-07-03 22:58:05 +09:00
Michael Stefaniuc 0789ddc322 dmime: Use the generic IPersistStream for DMWaveTrack. 2015-07-03 22:57:58 +09:00
Michael Stefaniuc f70498f121 dmime: Remove the extraneous IUnknown from DMWaveTrack.
Also lock/unlock the module only on creation/destruction of the object.
2015-07-03 22:57:53 +09:00
Michael Stefaniuc 861081be65 dmime: COM cleanup for IDirectMusicTrack of DMWaveTrack. 2015-07-03 22:57:49 +09:00
Michael Stefaniuc b905999761 dmime: Implement the E_NOTIMPL methods in DMWaveTrack. 2015-07-03 22:57:44 +09:00
Michael Stefaniuc 4a9eb8bfe0 dmime: Use the generic IPersistStream for DMParamControlTrack. 2015-07-03 22:57:40 +09:00
Michael Stefaniuc 22184e3694 dmime: Remove the extraneous IUnknown from DMParamControlTrack.
Also lock/unlock the module only on creation/destruction of the object.
2015-07-03 22:57:36 +09:00
Michael Stefaniuc 243ff86fbf dmime: COM cleanup for IDirectMusicTrack of DMParamControlTrack. 2015-07-03 22:57:32 +09:00
Michael Stefaniuc 10f3d166a9 dmime: Implement the E_NOTIMPL methods in DMParamControlTrack. 2015-07-03 22:57:28 +09:00
Michael Stefaniuc aad75398dd dmime: Use the generic IPersistStream for DMLyricsTrack. 2015-07-03 22:57:23 +09:00
Michael Stefaniuc 696168cc00 dmime: Remove the extraneous IUnknown from DMLyricsTrack.
Also lock/unlock the module only on creation/destruction of the object.
2015-07-03 22:57:19 +09:00
Michael Stefaniuc ac277120ba dmime: COM cleanup for IDirectMusicTrack of DMLyricsTrack. 2015-07-03 22:57:14 +09:00
Michael Stefaniuc 1637360fa8 dmime: Implement the E_NOTIMPL methods in DMLyricsTrack. 2015-07-03 22:57:09 +09:00
Michael Stefaniuc 64e8b6c03a dmime: Use the generic IPersistStream for DMSysExTrack. 2015-07-03 22:57:05 +09:00
Michael Stefaniuc b9360bd999 dmime: Remove the extraneous IUnknown from DMSysExTrack.
Also lock/unlock the module only on creation/destruction of the object.
2015-07-03 22:57:00 +09:00
Michael Stefaniuc 9a47a46a95 dmime: COM cleanup for IDirectMusicTrack of DMSysExTrack. 2015-07-03 22:56:54 +09:00
Michael Stefaniuc ac18130e76 dmime: Use the generic IPersistStream for DMSeqTrack. 2015-07-03 22:56:50 +09:00
Michael Stefaniuc 7da799a26f dmime: Remove the extraneous IUnknown from DMSeqTrack.
Also lock/unlock the module only on creation/destruction of the object.
2015-07-03 22:56:44 +09:00
Michael Stefaniuc 1b1d95e9d6 dmime: COM cleanup for IDirectMusicTrack of DMSeqTrack. 2015-07-03 22:56:39 +09:00
Michael Stefaniuc 9b4ed8858f dmime: Implement the E_NOTIMPL methods of IDMTrack8 for DMSysExTrack. 2015-07-03 22:56:32 +09:00
Michael Stefaniuc 4a7664275f dmime: Implement the E_NOTIMPL methods of IDMTrack8 for DMSeqTrack. 2015-07-03 22:56:26 +09:00
Józef Kucia 399cf7e4b9 d3d9/tests: Add basic tests for vertex blending. 2015-07-03 16:51:39 +09:00
Józef Kucia 4a8e0ec3d6 wined3d: Implement normals transformation for vertex blending. 2015-07-03 16:51:37 +09:00
Józef Kucia 1f680c52fe wined3d: Implement vertex blending in glsl_vertex_pipe. 2015-07-03 16:51:34 +09:00
Józef Kucia 1fc4a17175 wined3d: Show fixme about unimplemented vertex processing once. 2015-07-03 16:51:29 +09:00
Matteo Bruni 13ceb3fddc wined3d: Don't hardcode WINED3DPTEXTURECAPS_NONPOW2CONDITIONAL cap flag. 2015-07-03 16:51:27 +09:00
Matteo Bruni 4f57581310 wined3d: Improve NP2 fixups in GLSL PS texture sampling code. 2015-07-03 16:51:25 +09:00
Matteo Bruni a8fb1eee49 wined3d: Fix NP2 fixups in GLSL fragment FFP replacement. 2015-07-03 16:51:23 +09:00
Matteo Bruni 30031f6da4 wined3d: Replace an open-coded implementation of LIST_FOR_EACH_ENTRY_SAFE. 2015-07-03 16:51:21 +09:00
Matteo Bruni 93c88d34a8 wined3d: Fix GLSL backend with non-GLSL vertex and pixel pipeline combination.
That can only happen by manually modifying
select_vertex_implementation() and select_fragment_implementation(),
which may be useful for testing non-default vertex / fragment pipeline
implementations.
2015-07-03 16:51:17 +09:00
Sebastian Lackner d2a3c9c20e kernel32/tests: Fix leak of threadpool object. 2015-07-03 13:08:28 +09:00
Sebastian Lackner eadd27a38a kernel32: Forward remaining threadpool functions to ntdll. 2015-07-03 13:08:20 +09:00
Sebastian Lackner 56b9af1150 kernel32: Forward threadpool instance functions to ntdll. 2015-07-03 13:08:05 +09:00
Sebastian Lackner 4b0ecd3e22 kernel32: Forward threadpool timer functions to ntdll. 2015-07-03 13:07:47 +09:00
Sebastian Lackner 1165cc0953 kernel32: Forward threadpool work functions to ntdll. 2015-07-03 13:07:37 +09:00
Sebastian Lackner a54d972868 kernel32: Forward threadpool cleanup group functions to ntdll. 2015-07-03 13:07:18 +09:00
Sebastian Lackner 9f71015a99 ntdll/tests: Add tests for threadpool timer merging. 2015-07-03 13:06:50 +09:00
Sebastian Lackner aefb85ddab ntdll/tests: Add basic tests for threadpool timer functions. 2015-07-03 13:06:45 +09:00
Sebastian Lackner cb2aae1af8 ntdll: Implement threadpool timer queues. 2015-07-03 13:06:41 +09:00
Sebastian Lackner bd7cb07358 ntdll: Implement TpAllocTimer and TpReleaseTimer. 2015-07-03 13:06:31 +09:00
Sebastian Lackner 66c46e6960 ntdll/tests: Add tests for TpDisassociateCallback. 2015-07-03 13:06:21 +09:00
Sebastian Lackner 775d3dcecb ntdll: Implement TpDisassociateCallback and add a separate group completion event. 2015-07-03 13:06:15 +09:00