The intention is to have ICreateTypeLib2_fnDeleteTypeInfo() fully implemented such that Cashbooks can run on Linux. I believe this should fix a number of other Windows apps that lean heavily on oleaut32.dll as well.
--
v5: dlls/oleaut32: fn(Is|Find)Name should set szNameBuf with correct case
dlls/oleaut32: Use array indexing in ITypeLib2_Constructor_SLTG()
dlls/oleaut32: Use consistent param identifiers in fnFindName
https://gitlab.winehq.org/wine/wine/-/merge_requests/7203
On Thu Jan 16 14:02:03 2025 +0000, Patrick Laimbock wrote:
> > I don't want to break something else this late.
> That makes total sense :smiley:
> I'm happy to test anything so feel free to ping me.
Hi Rémi and co, is there any movement on this? (an open mr or the like) Now that wine 10 is done could we consider getting this fix in?
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/6569#note_93309
The intention is to have ICreateTypeLib2_fnDeleteTypeInfo() fully implemented such that Cashbooks can run on Linux. I believe this should fix a number of other Windows apps that lean heavily on oleaut32.dll as well.
--
v4: dlls/oleaut32: Mostly mirror fnFindName impl in typelib.c
dlls/oleaut32: Use common and correct identifiers in typelib.c
https://gitlab.winehq.org/wine/wine/-/merge_requests/7203
* * *
BTW I did try to create tests to make sure we connect collection the same way Windows does it. Problem is `GUID_ConnectToDLSCollection` is not gettable. Then I tried to create a `IDirectMusicPerformance` implementation and intercept `DownloadInstrument`. Interestingly Windows `IDirectMusicSegment::Download` doesn't call `DownloadInstrument` at all, instead it downloads instruments through a private, undocumented interface. So there seems to be no way to test this.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7230
Startup and lock counts in native Windows are separate, and the lock count does not decrease when an async result is freed if the platform has been started.
--
v3: rtworkq: Do not unlock the platform when async result objects are freed if the platform is started.
rtworkq: Introduce a platform startup count.
rtworkq/tests: Test work queue.
mfplat/tests: Test platform startup and lock counts.
mfplat/tests: Test mixing of MF platform functions with their Rtwq equivalents.
mfplat/tests: Introduce a helper to check the platform lock count.
mfplat/tests: Release callback2 in test_event_queue().
https://gitlab.winehq.org/wine/wine/-/merge_requests/7174
The Windows Bluetooth stack uses private IOCTLs in order to set the [discoverability](https://learn.microsoft.com/en-us/windows/win32/api/blueto… and [connectability](https://learn.microsoft.com/en-us/windows/win32/api/bluetoo… status of a local radio, and to start/stop the device inquiry procedure. This MR introduces 3 wine-specific IOCTL codes for the same purposes, as most applications seem to the Win32 API itself for these operations:
* IOCTL_WINBTH_RADIO_SET_FLAG
* IOCTL_WINEBTH_RADIO_START_DISCOVERY
* IOCTL_WINEBTH_RADIO_STOP_DISCOVERY
--
v6: winebth.sys: Call bluez_watcher_close as part of bluetooth_shutdown.
winebth.sys: Implement IOCTL_WINEBTH_RADIO_STOP_DISCOVERY.
winebth.sys: Implement IOCTL_WINEBTH_RADIO_START_DISCOVERY.
winebth.sys: Implement IOCTL_WINEBTH_RADIO_SET_FLAG.
https://gitlab.winehq.org/wine/wine/-/merge_requests/7216
The intention is to have ICreateTypeLib2_fnDeleteTypeInfo() fully implemented such that Cashbooks can run on Linux. I believe this should fix a number of other Windows apps that lean heavily on oleaut32.dll as well.
--
v3: dlls/oleaut32: Implement SetHelpStringContext()
dlls/oleaut32: Add DeleteTypeInfo() base-cases in typelib.c
dlls/oleaut32: Allow TLB_get_typeinfo_by_name() to also return the index
dlls/oleaut32: Disambiguate pIndex in typelib.c
dlls/oleaut32: Avoid possible infinite loops and invalid mem access
dlls/oleaut32: Simplify SLTG_DoRefs() readability
dlls/oleaut32: Consistently use TLB_REF_NOT_FOUND
dlls/oleaut32: Consistently use lstrcmpiW() while looking for names
dlls/oleaut32: Simplify loop in ITypeLib2_Constructor_MSFT()
https://gitlab.winehq.org/wine/wine/-/merge_requests/7203