How to debug assert failure in awt.dll?
Pete Brunet
peter.brunet at oracle.com
Wed Jul 10 15:03:44 UTC 2013
Thanks Denis, I will try a different dirty hack :-) I changed the
DASSERT in Hashtable.cpp to
if (value == NULL) return NULL;
That seems to work.
Pete
On 7/10/13 4:15 AM, Denis Fokin wrote:
> Hi Pete,
>
> As a dirty hack, you can just comment out
>
> ret = MessageBoxA(NULL, assertMsg, "AWT Assertion Failure",
> MB_YESNO|MB_ICONSTOP|MB_TASKMODAL);
>
> // if clicked Yes, break into the debugger
> if ( ret == IDYES ) {
> # if defined(_M_IX86)
> _asm { int 3 };
> # else
> DebugBreak();
> # endif
> }
> // otherwise, try to continue execution
>
> from jdk/src/windows/native/sun/windows/awt_Debug.cpp
>
> this prevents showing the MessageBox and breaking into the debugger.
>
> Thank you,
> Denis.
>
>
> On Jul 10, 2013, at 2:01 AM, Pete Brunet <peter.brunet at oracle.com> wrote:
>
>> Using code cloned from yesterday, I built the jdk portion of the 7u-dev
>> forest using the debug target and the 7u45 import and am getting an
>> assert failure in Hashtable.cpp when accessibility is enabled. This is
>> a 32 bit build using a 32 bit import.
>>
>> Letting the execution transition into the debugger stops pointing at
>> awt.dll.
>>
>> How do I debug this? Assuming having debug symbols would help, I set
>> the Visual Studio debugger symbols dialog to point at either of these
>> two directories but the debugger fails to find the symbols:
>> jdk7u-dev\jdk\build\windows-i586\tmp\sun\sun.awt\awt\obj_g or obj_gO.
>>
>> Pete
More information about the build-dev
mailing list