"Robert Shearman" rob@codeweavers.com wrote:
if (req->exe_module)
dll = list_head( &process->dlls ) ?
LIST_ENTRY(list_head( &process->dlls ), struct process_dll, entry) : NULL;
else
dll = find_process_dll( process, req->base_address );
Is it really necessary to introduce the exe_module request parameter? Main executable has its own base address which should work just fine in find_process_dll().
Dmitry Timoshkov wrote:
"Robert Shearman" rob@codeweavers.com wrote:
if (req->exe_module)
dll = list_head( &process->dlls ) ?
LIST_ENTRY(list_head( &process->dlls ), struct
process_dll, entry) : NULL;
else
dll = find_process_dll( process, req->base_address );
Is it really necessary to introduce the exe_module request parameter?
Yes.
Main executable has its own base address which should work just fine in find_process_dll().
Really? http://msdn2.microsoft.com/en-us/library/f7f5138s(VS.71).aspx
Robert Shearman rob@codeweavers.com writes:
Dmitry Timoshkov wrote:
Is it really necessary to introduce the exe_module request parameter?
Yes.
Main executable has its own base address which should work just fine in find_process_dll().
Really? http://msdn2.microsoft.com/en-us/library/f7f5138s(VS.71).aspx
The usual convention is that a NULL module address means the main exe, I think that would be appropriate here.
"Robert Shearman" rob@codeweavers.com wrote:
Main executable has its own base address which should work just fine in find_process_dll().
Really? http://msdn2.microsoft.com/en-us/library/f7f5138s(VS.71).aspx
I don't see how the page above is related to what I said. Main exe module is being added to the process dlls list at the end of the initialization process by load_dll server call with its real base address.
Dmitry Timoshkov wrote:
"Robert Shearman" rob@codeweavers.com wrote:
Main executable has its own base address which should work just fine in find_process_dll().
Really? http://msdn2.microsoft.com/en-us/library/f7f5138s(VS.71).aspx
I don't see how the page above is related to what I said. Main exe module is being added to the process dlls list at the end of the initialization process by load_dll server call with its real base address.
I don't see how that is relevant either. We don't know the main exe module base address in anything other than the server and that one process.