ChangeLog   [plain text]


=== WebCore-416.13 ===

2005-10-21  Dave Harrison  <harrison@apple.com>

        Reviewed by Justin Garcia.

        If node is an ancestor of refNode, use the highest non-common ancestor instead
        (otherwise we would be trying to append refNode's ancestor after refNode)

        * khtml/editing/htmlediting.cpp:
        (khtml::DeleteSelectionCommand::moveNodesAfterNode):

=== WebCore-416.12 ===

2005-10-19  Adele Peterson  <adele@apple.com>

        Reviewed by Hyatt.

        Fixed <rdar://problem/4243807> Denver Regression: DOM returns lower case strings for tags in empty document

        * khtml/html/html_documentimpl.cpp:
        (HTMLDocumentImpl::HTMLDocumentImpl): initialize hMode to Html4.

=== WebCore-416.11 ===

2005-10-11  Timothy Hatcher  <timothy@apple.com>

        Merged fix from TOT to Safari-Den-branch

    2005-10-10  Justin Garcia  <justin.garcia@apple.com>

        Reviewed by eric
        
        <rdar://problem/4283218> M-JPEG / Server Push and JavaScript
        
        Ignore multipart loads in numRequests, call checkCompleted() after each section is complete.

        * khtml/misc/loader.cpp:

=== WebCore-416.10 ===

2005-10-05  Timothy Hatcher  <timothy@apple.com>

        Merged fix from TOT to Safari-Den-branch

    2005-10-04  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Eric.

	    <rdar://problem/4285236> Denver Regression: crash repeatedly reloading www.supermanhomepage.com
	
	    I couldn't figure out how to make a reproducible test case for this. The failure is
	    random memory trashing.

        * khtml/ecma/kjs_events.cpp:
        (KJS::JSAbstractEventListener::handleEvent):

=== WebCore-416.9 ===

2005-10-03  Timothy Hatcher  <timothy@apple.com>

        Merged fix from TOT to Safari-Den-branch

    2005-10-03  Justin Garcia  <justin.garcia@apple.com>

		Fixes <rdar://problem/4275492> REGRESSION (SuTiDenver): EMBED tag with bogus type attribute downloads .wmv file twice (gorillamask.net)

        Reviewed by geoff, darin

        * khtml/khtml_part.cpp:
        (KHTMLPart::handleFallbackContent):
        Don't handle fallback content for <embed> tags.

=== Safari-416.8 ===

2005-09-16  Timothy Hatcher  <timothy@apple.com>

        Merged fix from TOT to Safari-Den-branch

    2005-09-14  Justin Garcia  <justin.garcia@apple.com>

        Reviewed by john
        
        Test cases added: none, method rename
        
        Part of fix for <rdar://problem/4237479> REGRESSION (Cambridge-Denver): old QuickTime movie continues to play sound after reload

        * kwq/WebCoreBridge.h:
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge handleFallbackContent]):
        Renamed bridge method mainResourceError to handleFallbackContent, since there are some 
        main resource errors for which we should not render fallback content.  E.G user cancels 
        and the cancel we do to prevent loading plugin content twice (see <rdar://problem/4258008>)

2005-09-16  Timothy Hatcher  <thatcher@apple.com>

        Merged fix from TOT to Safari-Den-branch

    2005-09-14 Vicki Murley  <vicki@apple.com>

        Reviewed by Dave Hyatt.
 
        - fixed <rdar://problem/4255274> REGRESSION: in some cases, link jumping to images is broken (4964)

        * khtml/xml/dom_nodeimpl.cpp:
        (DOM::ContainerNodeImpl::getUpperLeftCorner): 

2005-09-14  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Geoff.

	- fixed <rdar://problem/4214783> REGRESSION: kjs_fast_malloc crash due to lack of locking on multiple threads (seen selecting volumes in the installer)

	Make sure to lock using the InterpreterLock class in all places that need it
	(including anything that uses the collector, the parser, the protect count hash table,
	and anything that allocates via fast_malloc).

	Added assertions to ensure that main_thread_malloc and friends are
	only called on the main thread.

	Also changed main_thread_free to schedule a free on the main
	thread if called from a background thread. This contingency is
	rare, but unavoidable in the case that JavaScript runs on
	background threads, since then objects can be garbage collected on
	any thread.
	
        Test cases added: Node, this is impossible to reproduce in Safari without the use of
	PAC files.

        * Makefile.am:
        * khtml/dom/dom_misc.h:
        * khtml/ecma/kjs_events.cpp:
        (JSAbstractEventListener::handleEvent):
        (JSLazyEventListener::parseCode):
        (KJS::getDOMEvent):
        * khtml/ecma/kjs_events.h:
        * khtml/ecma/kjs_proxy.cpp:
        (KJSProxyImpl::~KJSProxyImpl):
        (KJSProxyImpl::evaluate):
        (KJSProxyImpl::clear):
        (KJSProxyImpl::createHTMLEventHandler):
        (KJSProxyImpl::initScript):
        * khtml/ecma/kjs_traversal.cpp:
        (JSNodeFilterCondition::acceptNode):
        * khtml/ecma/kjs_traversal.h:
        * khtml/ecma/kjs_window.cpp:
        (Window::clear):
        (ScheduledAction::execute):
        * khtml/ecma/kjs_window.h:
        * khtml/ecma/xmlhttprequest.cpp:
        (KJS::XMLHttpRequest::send):
        (KJS::XMLHttpRequest::abort):
        (KJS::XMLHttpRequest::slotFinished):
        * khtml/misc/main_thread_malloc.cpp:
        (khtml::main_thread_malloc):
        (khtml::main_thread_calloc):
        (khtml::main_thread_free):
        (khtml::main_thread_realloc):
        (khtml::initialize_scheduled_free_list):
        (khtml::drain_scheduled_free_list):
        (khtml::schedule_free_on_main_thread):
        (khtml::public_fREe):
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::bindingRootObject):
        (KWQKHTMLPart::windowScriptObject):
        (KWQKHTMLPart::saveLocationProperties):
        (KWQKHTMLPart::restoreLocationProperties):
        (KWQKHTMLPart::openURLFromPageCache):
        (KWQKHTMLPart::cleanupPluginRootObjects):
        * kwq/KWQPageState.mm:
        (-[KWQPageState clear]):
        * kwq/KWQTimer.h:
        * kwq/KWQTimer.mm:
        (-[KWQMainThreadPerformTarget initWithFunction:]):
        (-[KWQMainThreadPerformTarget callFunction:]):
        (QTimer::immediateSingleShotOnMainThread):
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge saveDocumentToPageCache]):
        * kwq/WebCoreJavaScript.mm:
        (+[WebCoreJavaScript rootObjectClasses]):
        (+[WebCoreJavaScript garbageCollect]):
        * kwq/WebCoreScriptDebugger.mm:
        (-[WebCoreScriptCallFrame evaluateWebScript:]):

=== WebCore-416.7 ===

2005-09-09  Adele Peterson  <adele@apple.com>

        Merged fix from TOT to Safari-2-0-branch

    2005-09-07 Vicki Murley  <vicki@apple.com>

        Reviewed by Justin.
 
        - fix <rdar://problem/4246096> REGRESSION links to named anchors don't scroll to the right place (4825)

        This is really just a better fix for 4233844. Also consolidated manual-tests/scrollToAnchorWithNewline.html
	and the test case from Bugzilla bug 4825 into manual-tests/scrollToAnchor.html.

        Test cases added:
        * manual-tests/scrollToAnchor.html: Added.

        * khtml/xml/dom_nodeimpl.cpp:
        (DOM::ContainerNodeImpl::getUpperLeftCorner): when calculating scroll position, skip child nodes of the anchor
        if they do not have text boxes.

2005-09-08  Adele Peterson  <adele@apple.com>

        Merged fix from TOT to Safari-2-0-branch

    2005-09-08  Justin Garcia  <justin.garcia@apple.com>

        Reviewed by darin

        WebCore portion of multipart/x-mixed-replace support

        * khtml/misc/loader.cpp:
        (Request::Request):
        (Loader::slotReceivedResponse):
        Only allow a multipart load for images, clear out the old multipart section to prepare for a replace
        (Loader::slotData):
        Multipart sections are delivered to the coreLoader by WebKit all at once, send eof to CachedImage::data
        * khtml/misc/loader.h:
        (khtml::CachedObject::isImage): Added
        (khtml::CachedImage::isImage):
        * kwq/KWQKJobClasses.h:
        * kwq/KWQKJobClasses.mm:
        (KIO::TransferJob::cancel): 
        Added a way to cancel a subresource loader from WebCore
        * kwq/KWQLoader.h:
        * kwq/KWQLoader.mm:
        (KWQResponseIsMultipart):
        * kwq/KWQResourceLoader.h:
        * kwq/KWQResourceLoader.mm:
        (-[KWQResourceLoader jobCanceledLoad]):

=== Safari-416.6 ===

2005-09-02  Adele Peterson  <adele@apple.com>

        Merged fix from TOT to Safari-2-0-branch

    2005-09-02  Beth Dakin  <bdakin@apple.com>

        Fix for <rdar://problem/4235531> Denver Regression: Safari crash in KWQStringData::makeUnicode
	The other half of the fix is in JavaScriptCore

	Fix written by Maciej and Darin.
	Reviewed by me/Maciej

	As Maciej said in Radar: These problems was caused by a conflict between some of our custom 
	allocators, causing them to return null. Symptom is typically a null pointer dereference in 
	a place where it might be expected an allocation has just occurred.

        * khtml/misc/main_thread_malloc.cpp: Added #define for MORECORE_CONTIGUOUS, MORECORE_CANNOT_TRIM, 
					and MALLOC_FAILURE_ACTION. 

2005-09-02  Adele Peterson  <adele@apple.com>

        Merged fix from TOT to Safari-2-0-branch

    2005-09-02  Adele Peterson  <adele@apple.com>

        Reviewed by Darin.

        Test cases updated:  manual-tests/select_hr.html: 
        updated for case where selection is changed for a list box that has an <hr> in its list items, even though it doesn't appear in the list.

        * khtml/rendering/render_form.cpp:
        (RenderSelect::slotSelectionChanged):  Added counter that increments only for visible list items (options and optgroups).  Before this change, 
        list boxes that had invisible <hr>s could have the visible selected option get out of sync from the selected state.
        (RenderSelect::updateSelection):  ditto.
        * kwq/KWQListBox.h: Changed enum from ItemType to KWQListBoxItemType and values to KWQListBoxOption, KWQListBoxGroupLabel, and KWQListBoxSeparator.
        (KWQListBoxItem::KWQListBoxItem): ditto.
        (QListBox::appendItem): ditto.
        (QListBox::appendGroupLabel): ditto.
        * kwq/KWQListBox.mm:
        (QListBox::appendItem): ditto.
        (QListBox::sizeForNumberOfLines): ditto.
        (-[KWQTableView tableView:shouldSelectRow:]): ditto.
        (-[KWQTableView drawRow:clipRect:]): ditto.
        * kwq/KWQComboBox.h: 
        (QComboBox::appendItem): ditto.
        (QComboBox::appendGroupLabel): ditto.
        (QComboBox::appendSeparator): ditto.
        * kwq/KWQComboBox.mm:
        (QComboBox::setTitle): ditto.
        (QComboBox::appendItem): ditto.
        (QComboBox::sizeHint): ditto.
        (QComboBox::populateMenu): ditto.

    2005-08-31  Adele Peterson  <adele@apple.com>

        Reviewed by Dave Hyatt.

        - fixed <rdar://problem/4229189> add a way to get a separator into a <select>

        This will allow an <hr> within a select element to display a separator in a popup menu.
        These extra elements are added to our listItems array, which we use internally.  But this should not
        affect JavaScript operations, such as getting an index of an option element, or getting the length of the select,
        or getting the selected index.  In these cases, the <hr>s will be ignored.

        Test cases added:
        * manual-tests/select_hr.html: Added.

        * khtml/html/html_formimpl.h: 
        (DOM::HTMLSelectElementImpl::listItems): Now that our listItems can also contain <hr>s, 
        I've changed listItems to be a QMemArray<HTMLElementImpl*> instead of QMemArray<HTMLGenericFormElementImpl*>
        (DOM::HTMLOptGroupElementImpl::checkDTD): Added check for <hr>

        * khtml/html/html_formimpl.cpp:
        (DOM::HTMLSelectElementImpl::checkDTD): Added check for <hr>
        (DOM::HTMLSelectElementImpl::add): Added check for <hr> so these elements can be added through Javascript.
        (DOM::HTMLSelectElementImpl::recalcListItems): Added case for <hr> to add the element to the listItems array.
        (DOM::HTMLSelectElementImpl::selectedIndex): Updated type for array of listItems.
        (DOM::HTMLSelectElementImpl::setSelectedIndex): ditto.
        (DOM::HTMLSelectElementImpl::length): ditto.
        (DOM::HTMLSelectElementImpl::remove): ditto.
        (DOM::HTMLSelectElementImpl::value): ditto.
        (DOM::HTMLSelectElementImpl::setValue): ditto.
        (DOM::HTMLSelectElementImpl::state): ditto.
        (DOM::HTMLSelectElementImpl::restoreState): ditto.
        (DOM::HTMLSelectElementImpl::appendFormData): ditto.
        (DOM::HTMLSelectElementImpl::optionToListIndex): ditto.
        (DOM::HTMLSelectElementImpl::listToOptionIndex): ditto.
        (DOM::HTMLSelectElementImpl::reset): ditto.
        (DOM::HTMLSelectElementImpl::notifyOptionSelected): ditto.
        (DOM::HTMLOptionElementImpl::index): ditto.

        * khtml/rendering/render_form.cpp:
        (RenderSelect::updateFromElement): If the list item is an <hr>, and we're not using a ListBox, then we call appendSeparator on the widget.  
        (RenderSelect::layout): Updated type for array of listItems.
        (RenderSelect::slotSelected): ditto.
        (RenderSelect::slotSelectionChanged): ditto.
        (RenderSelect::updateSelection): ditto.

        * kwq/KWQListBox.h: Added ItemType enum with the following values: Option, GroupLabel, and Separator.
        (KWQListBoxItem::KWQListBoxItem): Updated to use ItemType instead of old isGroupLabel bool.
        (QListBox::appendItem): ditto.
        (QListBox::appendGroupLabel): ditto.

        * kwq/KWQComboBox.h:
        (QComboBox::appendItem): the private version of appendItem used to take isLabel as a parameter.  Now it takes an ItemType.
        (QComboBox::appendGroupLabel): calls appendItem with an ItemType of GroupLabel
        (QComboBox::appendSeparator): calls appendItem with an ItemType of Separator

        * kwq/KWQComboBox.mm:
        (QComboBox::setTitle): Updated to check for the ItemType instead of the old isGroupLabel bool.
        (QComboBox::appendItem): If the new item is a Separator, then we add a separatorItem to the popup menu.
        (QComboBox::sizeHint): Updated to check for the ItemType instead of the old isGroupLabel bool.
        (QComboBox::populateMenu): If the new item is a Separator, then we add a separatorItem to the popup menu.

        * kwq/KWQListBox.mm:
        (QListBox::appendItem): Updated to use the ItemType instead of the old isLabel bool.
        (QListBox::sizeForNumberOfLines): ditto.
        (-[KWQTableView tableView:shouldSelectRow:]): ditto.
        (-[KWQTableView drawRow:clipRect:]): ditto.


2005-08-31  Adele Peterson  <adele@apple.com>

        Merged fix from TOT to Safari-2-0-branch

    2005-08-31  Vicki Murley  <vicki@apple.com>

        Reviewed by hyatt.

	- fixed <rdar://problem/4233844> in some cases, HTML href named anchors don't scroll to the right place
        
	Test cases added: 
        * manual-tests/scrollToAnchorWithNewline.html: Added.

        * khtml/xml/dom_nodeimpl.cpp:
        (DOM::ContainerNodeImpl::getUpperLeftCorner): skip text nodes that do not have associated text boxes

2005-08-30  Adele Peterson  <adele@apple.com>

        Merged fix from TOT to Safari-2-0-branch

    2005-08-30  John Sullivan  <sullivan@apple.com>

        Reviewed by Maciej.

        Test cases added: none, doesn't affect layout
        
        - fixed <rdar://problem/4237183> REGRESSION (Denver): crash in 
        JSUnprotectedEventListener::~JSUnprotectedEventListener

        * khtml/ecma/kjs_events.cpp:
        (KJS::JSUnprotectedEventListener::~JSUnprotectedEventListener):
        check for nil window pointer
        (KJS::JSUnprotectedEventListener::clearWindowObj):
        new method, sets window pointer to nil
        
        (KJS::JSEventListener::~JSEventListener):
        (KJS::JSEventListener::clearWindowObj):
        same changes for this class. We don't think the bug would ever happen for
        this similar class, but we're not completely sure, so best to play it safe.
        
        * khtml/ecma/kjs_events.h:
        declaration of new clearWindowObj methods
        
        * khtml/ecma/kjs_window.cpp:
        (KJS::Window::~Window):
        iterate through event listeners, clearing their window pointers

=== Safari-416.5 ===

2005-08-28  Adele Peterson  <adele@apple.com>

        Merged fix from TOT to Safari-2-0-branch to make debugging easier on the branch.

    2005-08-16  David Harrison  <harrison@apple.com>

        <rdar://problem/4119646> assertion failure in DOM::Position::upstream at babelfish.com
        <rdar://problem/4125949> Assertion failure clicking outside of textarea in page containing only textarea

        Removed asserts that did not account for iterating from a nested node to its parent.

        Test cases added: n/a for assert removal

        * khtml/xml/dom_position.cpp:
        (DOM::Position::upstream):
        (DOM::Position::downstream):

2005-08-27  Adele Peterson  <adele@apple.com>

        Merged fix from TOT to Safari-2-0-branch

    2005-08-27  David Harrison  <harrison@apple.com>

        Reviewed by Adele and John.

        - fixes <rdar://problem/4214259> (REGRESSION: DENVER )Safari app will crash when pressing Command + a to select all (Word XML format)

        Problem is that NodeImpl::maxDeepOffset() was using the wrong test for being able to call the
        TextImpl length() function, so it was being called on a ProcessingInstruction node.
 
        Test cases added:
        * manual-tests/wordXML-selectall.xml: Added.

        * khtml/xml/dom_nodeimpl.cpp:
        (NodeImpl::maxDeepOffset): use isTextNode() instead of offsetInCharacters(). 

2005-08-27  Adele Peterson  <adele@apple.com>

        Fixing merge error.

        * khtml/editing/markup.cpp:
        (khtml::startMarkup):

2005-08-27  Adele Peterson  <adele@apple.com>

        Merged fix from TOT to Safari-2-0-branch.

        * khtml/editing/htmlediting.cpp:  ReplaceSelectionCommand changes are made here. 

    2005-08-26  John Sullivan  <sullivan@apple.com>

        Reviewed by Darin Adler.

        Test cases added: none, doesn't affect layout
        
        - fixed these leaks:
        <rdar://problem/4232514> many leaks of StyleBaseImpl called within computeAndStoreNodeDesiredStyle within -[WebView paste:], 
        seen running webkit tests (probably affects Mail)
        <rdar://problem/4232572> many leaks of StyleBaseImpl called within fixupNodeStyles within -[WebView paste:], 
        seen running webkit tests (probably affects Mail)
        <rdar://problem/4232629> many leaks of StyleBaseImpl within startMarkup within -[WebHTMLView _writeSelectionToPasteboard:], 
        seen running webkit tests
        <rdar://problem/4232779> many leaks of StyleBaseImpl within createMarkup within -[WebHTMLView _writeSelectionToPasteboard:], 
        seen running webkit tests        

        * khtml/editing/markup.cpp:
        (khtml::startMarkup):
        Put Position::computedStyle() result into a local variable so it can be reffed/dereffed, avoids a leak.
        Done in two places in this method. This fixes 4232629.
        (khtml::createMarkup):
        ditto, but only in one place. This fixes 4232779.
        
        * khtml/editing/replace_selection_command.cpp:
        (khtml::ReplaceSelectionCommand::fixupNodeStyles):
        ditto. This fixes 4232572.
        (khtml::computeAndStoreNodeDesiredStyle):
        ditto, but in two places. This fixes 4232514.

2005-08-26  David Hyatt  <hyatt@apple.com>

	Fix for 4226539, blank content on leaky-cauldron.org.  Revert
	back to proper strict SGML comment parsing and just relax the
	rules for comments inside <style> blocks (which weren't supposed
	to be parsed by the HTML parser anyway... same problem as
	<script> on news.com).
	
        Reviewed by adele

        * khtml/html/htmltokenizer.cpp:
        (khtml::HTMLTokenizer::parseComment):

=== Safari-416.3 ===

2005-08-25  Adele Peterson  <adele@apple.com>

        Merged fix from TOT to Safari-2-0-branch

    2005-08-23  Vicki Murley  <vicki@apple.com>

        Reviewed by Adele.

	- fixed <rdar://problem/4229177> REGRESSION (Denver): crash dispatching mouse events (4608)
 
        Test cases added:
        * manual-tests/mouseevent-on-closeddoc.html: Added.
        * manual-tests/resources/mouseevent-on-closeddoc.html: Added.

        * khtml/khtmlview.cpp:
        (KHTMLView::dispatchMouseEvent): add nil check 

2005-08-24  Adele Peterson  <adele@apple.com>

        Merged fix from TOT to Safari-2-0-branch

    2005-08-23  David Harrison  <harrison@apple.com>

        Reviewed by Darin.

        <rdar://problem/4226539> REGRESSION: Blank content at http://www.the-leaky-cauldron.org/ with Denver and TOT

        Test cases added:
        * layout-tests/fast/parser/comments-expected.txt: Added.
        * layout-tests/fast/parser/comments.html: Added.

        * khtml/html/htmltokenizer.cpp:
        (khtml::HTMLTokenizer::parseComment):
        When non-space follows comment end, ignore that comment end.

2005-08-24  Adele Peterson  <adele@apple.com>

        * WebCore-tests.exp: removing KWQValueListIteratorImpl4nodeEv symbol since its not needed.

2005-08-23  Adele Peterson  <adele@apple.com>

        Merged another version of reset which is used in our xmlhttprequest leak fix.

        * khtml/misc/shared.h:
        (khtml::SharedPtr::reset):

2005-08-23  Adele Peterson  <adele@apple.com>

        Merged fix from TOT to Safari-2-0-branch

    2005-08-22  David Harrison  <harrison@apple.com>

        Reviewed by Justin.

        <rdar://problem/4221384> Denver Regression: stickies widget crashed on 8F15 when pasting text

        Test cases added:  None.  Problem triggered by simple paste, which lots of the
        editing tests already do, but also required particular memory layout/cleanup state, which
        is not specifiable in our tests.

        * khtml/editing/markup.cpp:
        (khtml::createFragmentFromText):
        Ref the new paragraph element right away, rather than allocating more memory first.

2005-08-23  Adele Peterson  <adele@apple.com>

        Merged fix from TOT to Safari-2-0-branch
        <rdar://problem/4220776> memory leak in KWQArrayImpl::resize() at bugzilla.opendarwin.org

    2005-08-17  Beth Dakin  <bdakin@apple.com>

        Reviewed by Maciej

        Test cases added: (NONE)
	
	This is a fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=4499
	which describes a memory leak that happens on bugzilla after
	searching for all open WebKit bugs.	

        * kwq/KWQArrayImpl.mm: 
        (KWQArrayImpl::resize): When resizing to 0, free the old data after setting it
				to NULL.

2005-08-23  Adele Peterson  <adele@apple.com>

        Merged fix from TOT to Safari-2-0-branch
        <rdar://problem/4221430> Safari HTML iBench performance can be improved through inlining and allocator tweaks

    2005-08-14  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Darin.

        - apply a tasty candy shell of inlining and main_thread_malloc for a 1% speedup on HTML iBench
	http://bugzilla.opendarwin.org/show_bug.cgi?id=4425
	
        * kwq/KWQArrayImpl.h:
        (KWQArrayImpl::size):
        * kwq/KWQArrayImpl.mm:
        * kwq/KWQMapImpl.h:
        * kwq/KWQMapImpl.mm:
        * kwq/KWQRefPtr.h:
        (::KWQRefPtr):
        (::operator):
        (::ref):
        (::unref):
        * kwq/KWQValueListImpl.h:
        (KWQValueListIteratorImpl::KWQValueListIteratorImpl):
        (KWQValueListIteratorImpl::operator==):
        (KWQValueListIteratorImpl::operator!=):
        (KWQValueListIteratorImpl::node):
        (KWQValueListIteratorImpl::operator++):
        (KWQValueListIteratorImpl::operator--):
        (KWQValueListNodeImpl::KWQValueListNodeImpl):
        * kwq/KWQValueListImpl.mm:
        (KWQValueListImpl::KWQValueListPrivate::KWQValueListPrivate):
        (KWQValueListImpl::KWQValueListPrivate::~KWQValueListPrivate):

2005-08-23  Adele Peterson  <adele@apple.com>

        Merged fix from TOT to Safari-2-0-branch

    2005-08-22  John Sullivan  <sullivan@apple.com>

        Reviewed by Beth Dakin.
        
        - fixed <rdar://problem/4227019> Several 32-byte leaks after choosing pop-up menu at dzone198.apple.com

        Test cases added: none, doesn't affect layout. I did execute run-layout-tests to verify that there
        were no surprises though.

        * khtml/ecma/xmlhttprequest.h:
        use SharedPtr for onReadyStateChangeListener and onLoadListener
        * khtml/ecma/xmlhttprequest.cpp:
        (KJS::XMLHttpRequest::getValueProperty):
        use notNull() instead of testing SharedPtrs against 0
        (KJS::XMLHttpRequest::putValueProperty):
        use reset() to set values of SharedPtrs; eliminate ref()s that had no deref()s
        (KJS::XMLHttpRequest::mark):
        use notNull() instead of testing SharedPtrs against 0
        (KJS::XMLHttpRequest::XMLHttpRequest):
        don't initialize SharedPtrs
        (KJS::XMLHttpRequest::changeState):
        use notNull() instead of testing SharedPtrs against 0

== Rolled over to ChangeLog-2005-08-23 ==