[Bug 48620] libmdbx (memory-mapped DB) needs ntdll.NtExtendSection stub
WineHQ Bugzilla
wine-bugs at winehq.org
Tue Feb 18 05:07:57 CST 2020
https://bugs.winehq.org/show_bug.cgi?id=48620
--- Comment #8 from Leonid Yuriev <leo at yuriev.ru> ---
(In reply to Anastasius Focht from comment #7)
> Hello folks,
>
> filling some fields and confirming.
Thanks a lot.
> This results in auto-generated stub ('GetProcAddress' will return non-NULL).
> Any call of the function pointer will result in a crash, accompanied with
> infamous 'unimplemented function foobar' message.
My last question:
- Will the following trick work to determine a stub?
i.e. is the stub code single and shared for all not implemented functions?
- Otherwise, what other workaround can I use for old Wine versions?
--- snip ---
mdbx_NtExtendSection =
(MDBX_NtExtendSection)GetProcAddress(hNtdll, "NtExtendSection");
/* Workaround for Wine.
* erthink: I assume that ZwCallbackReturn in Wine will always be a stub
* function or (at least) will be implemented after NtExtendSection).
* So, this check allows us to determine NtExtendSection is a stub and
* must not be used. */
const void *unimplemented_stub = GetProcAddress(hNtdll, "ZwCallbackReturn");
if (mdbx_NtExtendSection == unimplemented_stub)
mdbx_NtExtendSection = NULL;
--- snip ---
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.
More information about the wine-bugs
mailing list