[Webkit-unassigned] [Bug 22444] Strange Infinite Loop in FontCache.cpp

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Nov 24 09:53:19 PST 2008


bfulgham at gmail.com changed:

           What    |Removed                     |Added
            Summary|Strange deadlocking in      |Strange Infinite Loop in
                   |FontCache.cpp               |FontCache.cpp

------- Comment #7 from bfulgham at gmail.com  2008-11-24 09:53 PDT -------
The specific problem seems to be that the HashTable implementation 'add' method
can't figure out how to handle the key that was passed into the routine.  If
breakpoints are placed on each of the ways of breaking out of the "while (1)"
loop in hashtable.h (around line 636-653), none are ever hit.

The key that is passed in appears to be fully-constructed.

It first calls "isEmptyOrDeleted", which calls the troublesome "emptyValue"
method.  It appears to keep returning the same address for its object. 
However, changing the declaration back to a stack-allocated object causes the
routine to perform properly.  The return value is used in an equality
operation, which indicates that the two objects are not the same .

They are not the same because m_scaledFont is set to 0xbaadf00d in the
'emptyValue' object, while the passed in key is set to 0x00.

Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

More information about the webkit-unassigned mailing list