This MR stems out from testing if an app may be detecting
Wine presence by checking wine_get_version() entry point
presence in ntdll.
I had wished that simply commenting out the entry point in
ntdll.spec would be sufficient.
It isn't as 2 buitin DLLs directly link to wine_get_version().
This MR let them dynamically load the entry point's address.
For the record, there are three other DLLs/programs which
make use of wine_get_version(), but using dynamic loading.
I can live without this MR being merged upstream, but looked
a good idea:
- to be consistent throughout the code
- allow the simple comment in ntdll.spec to be possible.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/4772
When len is 256, (ARRAY_SIZE(title) - len) is 0. When LoadStringW() is called with the last parameter
being zero, a WCHAR string pointer is stored at 'title + 256', writing title out of bounds.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/4767
Currently there is `NtContinue()` test only for `aarch64` so implement it for amd64 aswell.
This implementation is very similar to `aarch64` and it's very basic test.
It doesn't change/test `ContextFlags` so it won't catch https://bugs.winehq.org/show_bug.cgi?id=56050 but that can be implemented later on top of this.
--
v5: ntdll/tests: Implement test_continue() for amd64
https://gitlab.winehq.org/wine/wine/-/merge_requests/4720