gdi32/tests: Add a test to check for ERROR_NOACCESS when passing an invalid buffer to GetObject

Jerome Leclanche adys.wh at gmail.com
Mon May 10 02:59:45 CDT 2010


I just tried messing around with it, but all I can get is a timeout
like this in the tests:
err:ntdll:RtlpWaitForCriticalSection section 0x688add20 "gdiobj.c:
gdi_section" wait timed out in thread 0024, blocked by 0023, retrying
(60 sec)

Or worse, a crash in the app:
err:gdi:GDI_CheckNotLock BUG: holding GDI lock
wine: Unhandled exception 0x80000003 at address 0x7edebb63 (thread
0009), starting debugger...
DebugBreak () at /home/adys/src/wine/dlls/kernel32/../../include/winternl.h:1957
0x7edebb63 DebugBreak+0x3
[/home/adys/src/wine/dlls/kernel32/../../include/winternl.h:1957] in
kernel32: int    $3
1957    static inline void WINAPI DbgBreakPoint(void) { __asm__
__volatile__("int3"); }

What am I missing?


J. Leclanche



On Mon, May 10, 2010 at 6:31 AM, Vitaliy Margolen
<wine-devel at kievinfo.com> wrote:
> On 05/09/2010 03:15 PM, Jerome Leclanche wrote:
>> On Sun, May 9, 2010 at 11:55 PM, Jerome Leclanche <adys.wh at gmail.com> wrote:
>>> Testcase for bug 18864.
>>>
>> This patch reveals a crash in GetObject in wine which I'm unsure how
>> to fix. Someone proposed using IsBadWritePtr(), but from what I
>> understand, this is not a recommended solution. Any idea?
> If it doesn't crash on windows and you have a program that depends on broken
> behavior - wrap the entire function with exception handler block. For
> example see lstrcatA & co.
>
> Vitaliy.
>



More information about the wine-devel mailing list