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
- 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>
--
v2: oleaut32: Factor out TLB_get_typeinfo_by_guid()
oleaut32: Rewrite ITypeInfo_fnGetIDsOfNames()
https://gitlab.winehq.org/wine/wine/-/merge_requests/7449
- 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>
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7449
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
Partial, as per documentation, implement fixing as the default
locale.
Signed-off-by: Edward O'Callaghan <edward(a)antitrust.cc>
--
v2: oleaut32: Implement (S|G)etVarConversionLocaleSetting()
https://gitlab.winehq.org/wine/wine/-/merge_requests/7447
On Fri Feb 28 22:41:11 2025 +0000, Bernhard Übelacker wrote:
> I am not sure if I understand you right. Before this patch `res ==
> STATUS_INVALID_PARAMETER` was part of the ok and the if condition around
> the skip. After my patch the ok should never get reached with `res ==
> STATUS_INVALID_PARAMETER`, so isn't checking for it superfluous?
> I am happy with either way, should I add it again?
Maybe I have misread part of the patch, sorry for that.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7445#note_96273
Since 9b8409fce4da18e3d9a914a9e5831d10eb9052de, a PE compiler is required for 32 bit arm.
That can either be supplied by using plain Clang (from a distro), or llvm-mingw. However when using plain Clang (in MSVC mode), we're lacking compiler builtin functions that either would be provided by MSVC libraries or by compiler-rt libraries bundled in llvm-mingw.
Vendor a copy of the relevant files from compiler-rt and include them when building for arm in MSVC mode.
This allows building a functional wine for 32 bit arm without requiring third party tools such as llvm-mingw.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7205