Windows provides DPMI host according to DPMI version 0.9.
Add cases for all missing DPMI 0.9 function calls into wine code, set
Carry flag which indicates DPMI failure and mark them with appropriate
FIXME comments.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7902
Signed-off-by: YeshunYe <yeyeshun(a)uniontech.com>
Change-Id: I2a8099278fae6dcc45bc92fb1f1f606407fba000
Although MSDN does not mention that CreateFile can be used to create folders, it is actually supported.
Verified on WinXP, Win7, and Win10.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/8033
Fixes some stuttering in Secret of Mana.
Native seems to only preroll 2 samples, but it still stutters a bit in
Secret of Mana without at least 3 buffers. This is probably caused by
a different sample decoding pattern, and 3 buffers in flight should be
fine.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/6848
(For after the code freeze.)
I think we want to have this DLL living in Wine for easier development, and probably dynamically load our custom Chromium fork from here. (just like MSHTML and wine-Gecko)
The code for that fork could then be created in its own repo.
--
v7: embeddedbrowserwebview: Create CreateWebViewEnvironmentWithOptionsInternal stub.
embeddedbrowserwebview: Add stub dll.
https://gitlab.winehq.org/wine/wine/-/merge_requests/7032
If entry->stgmedium.hEnhMetaFile is NULL, the data_size we get will be 0, we
then allocate 0 bytes for data, but expect it to contain at least a
METAFILEPICT, resulting in reading out-of-bound.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/8298
In wined3d_swapchain_cleanup, before decrementing the reference counts of each of the back/front
buffers, we first set their swapchain to NULL, presumably to stop the current under-destruction
swapchain from being used through them. But there is an oversight.
When we call wined3d_texture_decref on the front_buffer, the back_buffers still have their
swapchains pointing to the swapchain being destroyed. In texture_resource_unload, we call
context_acquire(device, NULL, 0), note the NULL texture parameter here. When the texture parameter
is NULL, wined3d_context_gl_acquire (in turn called by context_acquire) will default to using the
first back buffer from the implicit swapchain of "device", which, as previously stated, has not had
their swapchain set to NULL yet. From here, we reach wined3d_context_gl_activate with a texture
whose swapchain is currently being destroyed. This swapchain is then assigned to "context_gl" here
before being freed, leaving a dangling pointer.
When this context_gl is acquired again later, we will try to access
context_gl->c.swapchain->win_handle, thus complete the use-after-free cycle.
This commit makes sure the swapchain pointer of ALL front and back buffers are set to NULL before
decrementing their reference counts.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=58325
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/8406
This should at least fix foreground window inconsistencies between Wine and X11, when _NET_ACTIVE_WINDOW is supported by the WM, allowing us to then better implement focus tracking (to avoid changing focus when not desired), as well as SWP_NOACTIVATE.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7367
I think it would be very nice to have something like that to reduce the burden of implementing COM interfaces. This shows for instance on the windows.gaming.input module a 30% LoC reduction (from ~6800 to ~4700), even though the module already had a boilerplate helper macros already.
The MR introduces macros to automatically implement each IUnknown method, as well as all of them at once. It also includes a helper to implement IInspectable methods at once, as well as macros to forward both interface methods to a base interface or an outer object. Last, it provides higher-level macros to implement a main interface and any number of sub interfaces and generate IUnknown, forwarding and vtables for all of them at once, with IInspectable support when needed.
It uses widl to generate additional per-interface macros, for things like inheritance and vtable generation. The rest of the macros are otherwise shared in a Wine-specific header.
The implementation is split to show individual macro being used, although they are later replaced by higher-level macros. The individual helpers are still useful in some corner cases where specific behavior needs to be implemented, or for aggregating classes.
--
v6: widl: Generate return traces for COM classes.
widl: Generate method traces for COM classes.
widl: Generate COM class code for IClassFactory.
windows.gaming.input: Generate the provider COM class.
windows.gaming.input: Generate the vector COM classes.
windows.gaming.input: Generate the async COM classes.
windows.gaming.input: Generate the manager COM classes.
windows.gaming.input: Generate the force feedback COM classes.
windows.gaming.input: Generate the ramp effect COM classes.
windows.gaming.input: Generate the periodic effect COM classes.
windows.gaming.input: Generate the constant effect COM classes.
windows.gaming.input: Generate the condition effect COM classes. (broken)
windows.gaming.input: Generate the racing wheel COM classes.
windows.gaming.input: Generate the gamepad COM classes.
windows.gaming.input: rename controller to raw_controller
widl: Generate initializers for COM classes.
widl: Generate vtables for COM classes.
widl: Generate impl unwrappers for COM classes.
widl: Generate QueryInterface for COM classes.
widl: generate some query interface helpers
widl: Generate default IUnknown / IInspectable implementation.
widl: Generate IUnkonwn and IInspectable forwarding for COM classes.
widl: Generate impl_from helpers for COM classes.
windows.gaming.input: Use the generated COM class structs.
widl: Generate some structs for COM classes.
widl: Parse a widl-specific impl attribute on structs.
makedep: Generate some new impl.h headers from the IDLs.
widl: Generate some new impl.h headers from the IDLs.
windows.gaming.input: Use a separate interface for IAgileObject.
widl: Introduce a new append_declspec helper.
widl: Inline write_args into write_type_right.
widl: Cleanup indentation and variables in write_type_right.
widl: Remove now unnecessary write_callconv argument.
widl: Introduce a new append_type_left helper.
widl: Split write_type_left into a write_type_definition_left helper.
widl: Cleanup indentation and variables in write_type_left.
widl: Introduce a new write_record_type_definition helper.
widl: Move some type name construction out of write_type_left.
widl: Remove unnecessary recursion for TYPE_BITFIELD.
widl: Introduce a new append_basic_type helper.
widl: Wrap strappend parameters in a new struct strbuf.
This merge request has too many patches to be relayed via email.
Please visit the URL below to see the contents of the merge request.
https://gitlab.winehq.org/wine/wine/-/merge_requests/6207