=== WebCore-416.13 === 2005-10-21 Dave Harrison 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 Reviewed by Hyatt. Fixed 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 Merged fix from TOT to Safari-Den-branch 2005-10-10 Justin Garcia Reviewed by eric 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 Merged fix from TOT to Safari-Den-branch 2005-10-04 Maciej Stachowiak Reviewed by Eric. 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 Merged fix from TOT to Safari-Den-branch 2005-10-03 Justin Garcia Fixes 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 tags. === Safari-416.8 === 2005-09-16 Timothy Hatcher Merged fix from TOT to Safari-Den-branch 2005-09-14 Justin Garcia Reviewed by john Test cases added: none, method rename Part of fix for 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 ) 2005-09-16 Timothy Hatcher Merged fix from TOT to Safari-Den-branch 2005-09-14 Vicki Murley Reviewed by Dave Hyatt. - fixed REGRESSION: in some cases, link jumping to images is broken (4964) * khtml/xml/dom_nodeimpl.cpp: (DOM::ContainerNodeImpl::getUpperLeftCorner): 2005-09-14 Maciej Stachowiak Reviewed by Geoff. - fixed 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 Merged fix from TOT to Safari-2-0-branch 2005-09-07 Vicki Murley Reviewed by Justin. - fix 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 Merged fix from TOT to Safari-2-0-branch 2005-09-08 Justin Garcia 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 Merged fix from TOT to Safari-2-0-branch 2005-09-02 Beth Dakin Fix for 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 Merged fix from TOT to Safari-2-0-branch 2005-09-02 Adele Peterson 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
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
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 Reviewed by Dave Hyatt. - fixed add a way to get a separator into a