Salvage tests and fix a leak found in another review: see https://gitlab.winehq.org/wine/wine/-/merge_requests/897#note_9175 points 1 and 2. 3. is why !897 was reverted.
This does not contain the (incorrect) changes to VariantCopyInd, but instead fixes the leak identified in VariantClear (VT_RECORD needs to free pvRecord), and the wrong allocator being used in VariantCopy (it should have been IMalloc, rather than `HeapAlloc`, as shown by the fact IMallocSpy observes these allocations).
This also cleans up some dubious behavior by the test IRecordInfoImpl, which was modifying a VARIANT that it did not own or receive as an argument in the middle of VariantClear. This was likely undefined behavior, and in any case concealed the heap leak.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/1035
Partial, as per documentation, implement fixing as the default
locale.
Signed-off-by: Edward O'Callaghan <edward(a)antitrust.cc>
--
v3: oleaut32: Implement (S|G)etVarConversionLocaleSetting()
https://gitlab.winehq.org/wine/wine/-/merge_requests/7447
Trivial, small set of cleanups patches to start with, non-controversial and NOP functionally speaking.
These are to help get the review process going in making ways towards the bar being lowered for contributing to the oleaut32 implementation.
Signed-off-by: Edward O'Callaghan <edward(a)antitrust.cc>
--
v4: dlls/oleaut32: Invert if-stmt in ITypeLib2_fnRelease()
dlls/oleaut32: Invert if stmt for clarity
dlls/oleaut32: Consistently use TLB_REF_NOT_FOUND
https://gitlab.winehq.org/wine/wine/-/merge_requests/7375
- Clean up method implementations to be consistent and pass tests.
- Factor out common code.
- Validate arguments.
- Correctly match szNameBuf user passed strings as case-insensitive as per documentation.
- Match method parameter identifiers to be as per documentation.
- Rewrite where required to use common helpers.
Signed-off-by: Edward O'Callaghan <edward(a)antitrust.cc>
--
v3: oleaut32: Factor out TLB_get_typeinfo_by_guid()
https://gitlab.winehq.org/wine/wine/-/merge_requests/7449
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.
--
v11: dlls/oleaut32: ptr_size should be a ULONG
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/7203