[Webkit-unassigned] [Bug 8753] REGRESSION: Incorrect and non-uniform text zoom applied after going forward and backward

bugzilla-daemon at opendarwin.org bugzilla-daemon at opendarwin.org
Sat May 6 05:57:48 PDT 2006


http://bugzilla.opendarwin.org/show_bug.cgi?id=8753


opendarwin.org at mitzpettel.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |darin at apple.com




------- Comment #1 from opendarwin.org at mitzpettel.com  2006-05-06 05:57 PDT -------
I noticed two problems with the new form element state code:

1) In Document::formElementsState,
    Vector<String> stateVector(m_formElementsWithState.size() * 3);
should be
    Vector<String> stateVector;
    stateVector.reserveCapacity(m_formElementsWithState.size() * 3);

2) Both the keys and the values in the FormElementStateMap get "double-freed".
I'm not sure if this is a problem in the hash map code or in how it's used
here. Here's what happens: when you remove an entry from the map, it calls the
FormElementKey destructor (which derefs the name and type) then it assigns the
deletedValue to the FormElementKey (so the = operator derefs the name and type
again). You can work around this by setting name and type to 0 in the
destructor.
Then I noticed that the same happens with the values: ~Vector is called (which
calls the impl's destructor), then the empty Vector is assigned to the vector
(which will eventually call the impl's destructor again).
Perhaps the solution is as simple as setting the correct traits
(needsDestruction = false) but I don't really understand how it's supposed to
work.


-- 
Configure bugmail: http://bugzilla.opendarwin.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