[2/3] ntdll: Use PAGE_READWRITE access when resolving DLL imports.
Alexandre Julliard
julliard at winehq.org
Thu Nov 3 04:42:28 CDT 2011
Dmitry Timoshkov <dmitry at baikal.ru> writes:
> Alexandre Julliard <julliard at winehq.org> wrote:
>
>> > NtProtectVirtualMemory( NtCurrentProcess(), &protect_base,
>> > - &protect_size, PAGE_WRITECOPY, &protect_old );
>> > + &protect_size, PAGE_READWRITE, &protect_old );
>>
>> Restoring the permissions is not going to work if it was already
>> writable.
>
> Do you mean that mprotect may fail or something else? Also, how is that
> different from what current code is doing? Do you suggest to check
> the old protection permissions before changing/restoring access with
> NtProtectVirtualMemory()?
What I mean is that if the old protection contains WRITECOPY, you won't
be able to restore it correctly since you are going to make
NtProtectVirtualMemory reject that.
--
Alexandre Julliard
julliard at winehq.org
More information about the wine-devel
mailing list