Monday, November 28, 2005, 3:29:51 PM, Raphael wrote:
Hi, fix crash on Corel 9 start (http://bugs.winehq.org/show_bug.cgi?id=2884) Changelog:
- don't crash on GetProcAddress when input mapped modules as data
I think you need to make some tests of this. It shouldn't be to hard to load some dll as a resource and try to get proc address. Also check if you can do that for already loaded dll (like kernel32.dll).
Now the patch:
- if ((ULONG_PTR)module & 1)
- {
module = (HMODULE)((ULONG_PTR)module & ~1);
- }
Check is some-what redundant. Just use: module = (HMODULE)((ULONG_PTR)module & ~1);
void *proc = name ? find_named_export( module, exports, exp_size, name->Buffer, -1 )
: find_ordinal_export( module, exports, exp_size, ord - exports->Base );
void *proc = NULL;
if (name)
{
proc = find_named_export( module, exports, exp_size, name->Buffer, -1 );
}
else
{
proc = find_ordinal_export( module, exports, exp_size, ord - exports->Base );
}
Any reason for this? It's the same no matter how you write it only 7 lines longer <g>
Vitaliy Margolen