Timeline
Jun 15, 2008:
- 11:25 PM Changeset in webkit [34591] by
-
- 27 edits4 moves in trunk
WebCore:
2008-06-15 Darin Adler <Darin Adler>
Rubber stamped by Sam.
- renamed kjs_html.h/cpp to JSPluginElementFunctions.h/cpp
- renamed kjs_events.h/cpp to JSEventListener.h/cpp
- GNUmakefile.am:
- WebCore.pro:
- WebCore.vcproj/WebCore.vcproj:
- WebCore.xcodeproj/project.pbxproj:
- WebCoreSources.bkl:
- bindings/js/JSCanvasRenderingContext2DCustom.cpp:
- bindings/js/JSDOMApplicationCacheCustom.cpp:
- bindings/js/JSDOMWindowBase.cpp:
- bindings/js/JSEventCustom.cpp:
- bindings/js/JSEventListener.cpp: Copied from WebCore/bindings/js/kjs_events.cpp.
- bindings/js/JSEventListener.h: Copied from WebCore/bindings/js/kjs_events.h.
- bindings/js/JSEventTargetBase.h:
- bindings/js/JSHTMLAppletElementCustom.cpp:
- bindings/js/JSHTMLCollectionCustom.cpp:
- bindings/js/JSHTMLDocumentCustom.cpp:
- bindings/js/JSHTMLEmbedElementCustom.cpp:
- bindings/js/JSHTMLInputElementBase.h:
- bindings/js/JSHTMLObjectElementCustom.cpp:
- bindings/js/JSHTMLSelectElementCustom.cpp:
- bindings/js/JSPluginElementFunctions.cpp: Copied from WebCore/bindings/js/kjs_html.cpp.
- bindings/js/JSPluginElementFunctions.h: Copied from WebCore/bindings/js/kjs_html.h.
- bindings/js/JSSVGLazyEventListener.h:
- bindings/js/JSXMLHttpRequestCustom.cpp:
- bindings/js/ScriptController.cpp:
- bindings/js/kjs_events.cpp: Removed.
- bindings/js/kjs_events.h: Removed.
- bindings/js/kjs_html.cpp: Removed.
- bindings/js/kjs_html.h: Removed.
WebKitTools:
2008-06-15 Darin Adler <Darin Adler>
- Scripts/do-webcore-rename: Updated for the latest round of renaming.
- 11:22 PM Changeset in webkit [34590] by
-
- 5 edits in trunk/LayoutTests
2008-06-15 Adam Barth <abarth@webkit.org>
Reviewed by Sam Weinig.
Remove my name from the expected test results.
- fast/dom/documenturi-can-hold-arbitrary-string-expected.txt:
- fast/dom/documenturi-can-hold-arbitrary-string.html:
- fast/dom/documenturi-not-affected-by-base-tag-expected.txt:
- fast/dom/documenturi-not-affected-by-base-tag.html:
- 11:13 PM Changeset in webkit [34589] by
-
- 90 edits in trunk
WebCore:
2008-06-15 Darin Adler <Darin Adler>
- give Frame object functions shorter names: scriptProxy() -> script(), selectionController() -> selection(), animationController() -> animation()
- WebCore.base.exp:
- bindings/js/JSCustomSQLStatementCallback.cpp: (WebCore::JSCustomSQLStatementCallback::handleEvent):
- bindings/js/JSCustomSQLStatementErrorCallback.cpp: (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
- bindings/js/JSCustomSQLTransactionCallback.cpp: (WebCore::JSCustomSQLTransactionCallback::handleEvent):
- bindings/js/JSCustomSQLTransactionErrorCallback.cpp: (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
- bindings/js/JSCustomVoidCallback.cpp: (WebCore::JSCustomVoidCallback::handleEvent):
- bindings/js/JSCustomXPathNSResolver.cpp: (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
- bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::~JSDOMWindowBase): (WebCore::allowPopUp): (WebCore::createWindow): (WebCore::windowProtoFuncOpen): (WebCore::toJS): (WebCore::toJSDOMWindow):
- bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::setLocation):
- bindings/js/JSDOMWindowShell.cpp: (WebCore::toJS): (WebCore::toJSDOMWindowShell):
- bindings/js/JSDocumentCustom.cpp: (WebCore::JSDocument::setLocation):
- bindings/js/JSLocationCustom.cpp: (WebCore::navigateIfAllowed): (WebCore::JSLocation::reload):
- bindings/js/JSNodeFilterCondition.cpp: (WebCore::JSNodeFilterCondition::acceptNode):
- bindings/js/ScheduledAction.cpp: (WebCore::ScheduledAction::execute):
- bindings/js/kjs_events.cpp: (WebCore::JSAbstractEventListener::handleEvent): (WebCore::JSLazyEventListener::parseCode):
- bindings/js/kjs_html.cpp: (WebCore::runtimeObjectImplementsCall):
- bindings/objc/DOMInternal.mm: (-[WebScriptObject _initializeScriptDOMNodeImp]):
- bridge/jni/jni_jsobject.mm: (createRootObject):
- css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
- dom/Document.cpp: (WebCore::Document::nodeWillBeRemoved): (WebCore::Document::createHTMLEventListener):
- dom/Element.cpp: (WebCore::Element::updateFocusAppearance):
- dom/EventTarget.cpp: (WebCore::EventTarget::dispatchGenericEvent):
- dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::startElementNs):
- editing/DeleteButtonController.cpp: (WebCore::DeleteButtonController::respondToChangedSelection): (WebCore::DeleteButtonController::enable): (WebCore::DeleteButtonController::deleteTarget):
- editing/EditCommand.cpp: (WebCore::EditCommand::EditCommand):
- editing/Editor.cpp: (WebCore::Editor::selectionForCommand): (WebCore::Editor::canEdit): (WebCore::Editor::canEditRichly): (WebCore::Editor::canDHTMLCut): (WebCore::Editor::canDHTMLCopy): (WebCore::Editor::canCopy): (WebCore::Editor::canDelete): (WebCore::Editor::deleteWithDirection): (WebCore::Editor::deleteSelectionWithSmartDelete): (WebCore::Editor::replaceSelectionWithFragment): (WebCore::Editor::selectedRange): (WebCore::Editor::tryDHTMLCopy): (WebCore::Editor::tryDHTMLCut): (WebCore::Editor::fontForSelection): (WebCore::Editor::selectionUnorderedListState): (WebCore::Editor::selectionOrderedListState): (WebCore::Editor::increaseSelectionListLevel): (WebCore::Editor::increaseSelectionListLevelOrdered): (WebCore::Editor::increaseSelectionListLevelUnordered): (WebCore::Editor::decreaseSelectionListLevel): (WebCore::Editor::dispatchCPPEvent): (WebCore::Editor::applyStyle): (WebCore::Editor::applyParagraphStyle): (WebCore::Editor::applyStyleToSelection): (WebCore::Editor::applyParagraphStyleToSelection): (WebCore::Editor::selectionHasStyle): (WebCore::Editor::appliedEditing): (WebCore::Editor::unappliedEditing): (WebCore::Editor::reappliedEditing): (WebCore::Editor::insertLineBreak): (WebCore::Editor::insertParagraphSeparator): (WebCore::Editor::paste): (WebCore::Editor::selectComposition): (WebCore::Editor::confirmComposition): (WebCore::Editor::setComposition): (WebCore::Editor::advanceToNextMisspelling): (WebCore::Editor::isSelectionUngrammatical): (WebCore::Editor::guessesForUngrammaticalSelection): (WebCore::Editor::getCompositionSelection): (WebCore::Editor::transpose):
- editing/EditorCommand.cpp: (WebCore::expandSelectionToGranularity): (WebCore::executeDeleteToMark): (WebCore::executeMoveBackward): (WebCore::executeMoveBackwardAndModifySelection): (WebCore::executeMoveDown): (WebCore::executeMoveDownAndModifySelection): (WebCore::executeMoveForward): (WebCore::executeMoveForwardAndModifySelection): (WebCore::executeMoveLeft): (WebCore::executeMoveLeftAndModifySelection): (WebCore::executeMovePageDown): (WebCore::executeMovePageDownAndModifySelection): (WebCore::executeMovePageUp): (WebCore::executeMovePageUpAndModifySelection): (WebCore::executeMoveRight): (WebCore::executeMoveRightAndModifySelection): (WebCore::executeMoveToBeginningOfDocument): (WebCore::executeMoveToBeginningOfDocumentAndModifySelection): (WebCore::executeMoveToBeginningOfLine): (WebCore::executeMoveToBeginningOfLineAndModifySelection): (WebCore::executeMoveToBeginningOfParagraph): (WebCore::executeMoveToBeginningOfParagraphAndModifySelection): (WebCore::executeMoveToBeginningOfSentence): (WebCore::executeMoveToBeginningOfSentenceAndModifySelection): (WebCore::executeMoveToEndOfDocument): (WebCore::executeMoveToEndOfDocumentAndModifySelection): (WebCore::executeMoveToEndOfSentence): (WebCore::executeMoveToEndOfSentenceAndModifySelection): (WebCore::executeMoveToEndOfLine): (WebCore::executeMoveToEndOfLineAndModifySelection): (WebCore::executeMoveToEndOfParagraph): (WebCore::executeMoveToEndOfParagraphAndModifySelection): (WebCore::executeMoveParagraphBackwardAndModifySelection): (WebCore::executeMoveParagraphForwardAndModifySelection): (WebCore::executeMoveUp): (WebCore::executeMoveUpAndModifySelection): (WebCore::executeMoveWordBackward): (WebCore::executeMoveWordBackwardAndModifySelection): (WebCore::executeMoveWordForward): (WebCore::executeMoveWordForwardAndModifySelection): (WebCore::executeMoveWordLeft): (WebCore::executeMoveWordLeftAndModifySelection): (WebCore::executeMoveWordRight): (WebCore::executeMoveWordRightAndModifySelection): (WebCore::executeSelectAll): (WebCore::executeSelectToMark): (WebCore::executeSetMark): (WebCore::executeSwapWithMark): (WebCore::executeUnselect): (WebCore::enabledAnySelection): (WebCore::enabledAnySelectionAndMark): (WebCore::enabledInRichlyEditableText): (WebCore::enabledRangeInEditableText): (WebCore::enabledRangeInRichlyEditableText):
- editing/ModifySelectionListLevel.cpp: (WebCore::IncreaseSelectionListLevelCommand::canIncreaseSelectionListLevel): (WebCore::DecreaseSelectionListLevelCommand::canDecreaseSelectionListLevel):
- editing/RemoveFormatCommand.cpp: (WebCore::RemoveFormatCommand::doApply):
- editing/SelectionController.cpp: (WebCore::SelectionController::setSelection): (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
- editing/TypingCommand.cpp: (WebCore::TypingCommand::deleteSelection): (WebCore::TypingCommand::insertText): (WebCore::TypingCommand::deleteKeyPressed): (WebCore::TypingCommand::forwardDeleteKeyPressed):
- history/CachedPage.cpp: (WebCore::CachedPage::CachedPage): (WebCore::CachedPage::restore):
- html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::defaultEventHandler): (WebCore::HTMLAnchorElement::setActive):
- html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler):
- html/HTMLPlugInElement.cpp: (WebCore::HTMLPlugInElement::createNPObject):
- html/HTMLScriptElement.cpp: (WebCore::HTMLScriptElement::evaluateScript):
- html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::parseTag): (WebCore::HTMLTokenizer::processToken):
- loader/FrameLoader.cpp: (WebCore::FrameLoader::executeScript): (WebCore::FrameLoader::clear): (WebCore::FrameLoader::userGestureHint): (WebCore::FrameLoader::open): (WebCore::FrameLoader::dispatchWindowObjectAvailable): (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
- loader/archive/cf/LegacyWebArchive.cpp: (WebCore::LegacyWebArchive::createFromSelection):
- page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::selection): (WebCore::AccessibilityRenderObject::setSelectedTextRange): (WebCore::AccessibilityRenderObject::isFocused): (WebCore::AccessibilityRenderObject::doAXTextMarkerRangeForLine): (WebCore::AccessibilityRenderObject::doSetAXSelectedTextMarkerRange): (WebCore::AccessibilityRenderObject::doAXRangeForLine): (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
- page/ContextMenuController.cpp: (WebCore::ContextMenuController::contextMenuItemSelected):
- page/DOMSelection.cpp: (WebCore::DOMSelection::anchorNode): (WebCore::DOMSelection::baseNode): (WebCore::DOMSelection::anchorOffset): (WebCore::DOMSelection::baseOffset): (WebCore::DOMSelection::focusNode): (WebCore::DOMSelection::extentNode): (WebCore::DOMSelection::focusOffset): (WebCore::DOMSelection::extentOffset): (WebCore::DOMSelection::isCollapsed): (WebCore::DOMSelection::type): (WebCore::DOMSelection::rangeCount): (WebCore::DOMSelection::collapse): (WebCore::DOMSelection::collapseToEnd): (WebCore::DOMSelection::collapseToStart): (WebCore::DOMSelection::empty): (WebCore::DOMSelection::setBaseAndExtent): (WebCore::DOMSelection::setPosition): (WebCore::DOMSelection::modify): (WebCore::DOMSelection::extend): (WebCore::DOMSelection::getRangeAt): (WebCore::DOMSelection::removeAllRanges): (WebCore::DOMSelection::addRange): (WebCore::DOMSelection::deleteFromDocument): (WebCore::DOMSelection::containsNode): (WebCore::DOMSelection::toString):
- page/DragController.cpp: (WebCore::DragController::dragIsMove): (WebCore::DragController::tryDocumentDrag): (WebCore::setSelectionToDragCaret): (WebCore::DragController::concludeDrag): (WebCore::prepareClipboardForImageDrag): (WebCore::DragController::startDrag):
- page/EventHandler.cpp: (WebCore::EventHandler::selectClosestWordFromMouseEvent): (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent): (WebCore::EventHandler::handleMousePressEventDoubleClick): (WebCore::EventHandler::handleMousePressEventTripleClick): (WebCore::EventHandler::handleMousePressEventSingleClick): (WebCore::EventHandler::handleMousePressEvent): (WebCore::EventHandler::updateSelectionForMouseDrag): (WebCore::EventHandler::handleMouseReleaseEvent): (WebCore::nodeIsNotBeingEdited): (WebCore::EventHandler::selectCursor): (WebCore::EventHandler::dispatchMouseEvent): (WebCore::EventHandler::sendContextMenuEvent): (WebCore::EventHandler::handleKeyboardSelectionMovement): (WebCore::EventHandler::handleDrag):
- page/FocusController.cpp: (WebCore::FocusController::setFocusedFrame): (WebCore::clearSelectionIfNeeded): (WebCore::FocusController::setActive):
- page/Frame.cpp: (WebCore::Frame::~Frame): (WebCore::Frame::script): (WebCore::Frame::setDocument): (WebCore::Frame::selectedText): (WebCore::Frame::selection): (WebCore::Frame::animation): (WebCore::Frame::notifyRendererOfSelectionChange): (WebCore::Frame::invalidateSelection): (WebCore::Frame::clearCaretRectIfNeeded): (WebCore::Frame::setFocusedNodeIfNeeded): (WebCore::Frame::selectionLayoutChanged): (WebCore::Frame::caretBlinkTimerFired): (WebCore::Frame::paintCaret): (WebCore::Frame::shouldChangeSelection): (WebCore::Frame::updateSecureKeyboardEntryIfActive): (WebCore::Frame::computeAndSetTypingStyle): (WebCore::Frame::selectionComputedStyle): (WebCore::Frame::bindingRootObject): (WebCore::Frame::windowScriptNPObject): (WebCore::Frame::clearScriptController): (WebCore::Frame::selectionTextRects): (WebCore::Frame::currentForm): (WebCore::Frame::revealSelection): (WebCore::Frame::revealCaret): (WebCore::Frame::clearTimers): (WebCore::Frame::styleForSelectionStart): (WebCore::Frame::setSelectionFromNone): (WebCore::Frame::findString): (WebCore::Frame::pageDestroyed): (WebCore::Frame::respondToChangedSelection): (WebCore::FramePrivate::FramePrivate):
- page/Frame.h:
- page/FramePrivate.h:
- page/InspectorController.cpp: (WebCore::canPassNodeToJavaScript): (WebCore::InspectorController::windowScriptObjectAvailable):
- page/JavaScriptDebugServer.cpp: (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
- page/Page.cpp: (WebCore::Page::findString): (WebCore::Page::selection): (WebCore::Page::setDebugger):
- page/mac/FrameMac.mm: (WebCore::Frame::baseWritingDirectionForSelectionStart): (WebCore::Frame::dragImageForSelection): (WebCore::Frame::createScriptInstanceForWidget): (WebCore::Frame::windowScriptObject):
- page/win/FrameWin.cpp: (WebCore::Frame::dragImageForSelection):
- platform/ContextMenu.cpp: (WebCore::selectionContainsPossibleWord): (WebCore::ContextMenu::populate): (WebCore::ContextMenu::checkOrEnableIfNeeded):
- plugins/PluginView.cpp: (WebCore::PluginView::performRequest): (WebCore::PluginView::bindingInstance):
- rendering/HitTestResult.cpp: (WebCore::HitTestResult::isSelected):
- rendering/RenderBlock.cpp: (WebCore::RenderBlock::paintCaret):
- rendering/RenderListBox.cpp: (WebCore::RenderListBox::paintItemForeground): (WebCore::RenderListBox::paintItemBackground):
- rendering/RenderObject.cpp: (WebCore::RenderObject::selectionBackgroundColor): (WebCore::RenderObject::selectionForegroundColor): (WebCore::RenderObject::setAnimatableStyle): (WebCore::RenderObject::destroy): (WebCore::RenderObject::animation):
- rendering/RenderObject.h:
- rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::selectionStart): (WebCore::RenderTextControl::selectionEnd): (WebCore::RenderTextControl::setSelectionRange): (WebCore::RenderTextControl::selectionChanged): (WebCore::RenderTextControl::capsLockStateMayHaveChanged):
- rendering/RenderTheme.cpp: (WebCore::RenderTheme::isFocused):
- rendering/RenderTreeAsText.cpp: (WebCore::writeSelection):
- rendering/RenderWidget.cpp: (WebCore::RenderWidget::destroy):
- svg/SVGDocumentExtensions.cpp: (WebCore::SVGDocumentExtensions::createSVGEventListener):
- svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::deselectAll):
- svg/SVGTextContentElement.cpp: (WebCore::SVGTextContentElement::selectSubString):
WebKit/gtk:
2008-06-15 Darin Adler <Darin Adler>
- give Frame object functions shorter names: scriptProxy() -> script(), selectionController() -> selection(), animationController() -> animation()
- WebCoreSupport/EditorClientGtk.cpp: (WebKit::EditorClient::handleKeyboardEvent):
- WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::windowObjectCleared):
- webkit/webkitwebframe.cpp:
- webkit/webkitwebview.cpp:
WebKit/mac:
2008-06-15 Darin Adler <Darin Adler>
- give Frame object functions shorter names: scriptProxy() -> script(), selectionController() -> selection(), animationController() -> animation()
- Plugins/WebPluginController.mm: (-[WebPluginController webPlugInContainerSelectionColor]):
- WebView/WebFrame.mm: (-[WebFrame _attachScriptDebugger]): (-[WebFrame _hasSelection]): (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): (-[WebFrame _rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]): (-[WebFrame _convertToNSRange:]): (-[WebFrame _convertToDOMRange:]): (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]): (-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]): (-[WebFrame _insertParagraphSeparatorInQuotedContent]): (-[WebFrame _selectedNSRange]): (-[WebFrame _selectNSRange:]): (-[WebFrame globalContext]):
- WebView/WebHTMLView.mm: (-[WebHTMLView _selectedRange]): (-[WebHTMLView _hasSelection]): (-[WebHTMLView _hasSelectionOrInsertionPoint]): (-[WebHTMLView _hasInsertionPoint]): (-[WebHTMLView _isEditable]): (-[WebHTMLView _updateFocusedAndActiveState]): (-[WebHTMLView readSelectionFromPasteboard:]): (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): (-[WebHTMLView maintainsInactiveSelection]): (-[WebHTMLView paste:]): (isTextInput): (-[WebHTMLView inputContext]): (-[WebTextCompleteController doCompletion]): (-[WebHTMLView selectAll]): (-[WebHTMLView deselectAll]): (-[WebHTMLView selectedAttributedString]):
- WebView/WebView.mm: (-[WebView aeDescByEvaluatingJavaScriptFromString:]): (-[WebView setSelectedDOMRange:affinity:]): (-[WebView selectedDOMRange]): (-[WebView selectionAffinity]):
WebKit/qt:
2008-06-15 Darin Adler <Darin Adler>
- give Frame object functions shorter names: scriptProxy() -> script(), selectionController() -> selection(), animationController() -> animation()
- Api/qwebframe.cpp: (QWebFrame::evaluateJavaScript):
- Api/qwebpage.cpp: (QWebPagePrivate::focusInEvent): (QWebPagePrivate::focusOutEvent): (QWebPage::inputMethodQuery):
- WebCoreSupport/EditorClientQt.cpp: (WebCore::EditorClientQt::handleKeyboardEvent):
WebKit/win:
2008-06-15 Darin Adler <Darin Adler>
- give Frame object functions shorter names: scriptProxy() -> script(), selectionController() -> selection(), animationController() -> animation()
- WebFrame.cpp: (WebFrame::globalContext): (WebFrame::windowObjectCleared):
- WebView.cpp: (WebView::handleContextMenuEvent): (WebViewWndProc): (WebView::updateFocusedAndActiveState): (WebView::hasSelectedRange): (WebView::replaceSelectionWithText): (WebView::clearSelection): (WebView::prepareCandidateWindow): (WebView::onIMERequestCharPosition): (WebView::onIMERequestReconvertString):
WebKit/wx:
2008-06-15 Darin Adler <Darin Adler>
- give Frame object functions shorter names: scriptProxy() -> script(), selectionController() -> selection(), animationController() -> animation()
- WebKitSupport/EditorClientWx.cpp: (WebCore::EditorClientWx::handleKeyboardEvent):
- WebView.cpp: (wxWebView::RunScript): (wxWebView::OnSetFocus): (wxWebView::OnKillFocus):
WebKitTools:
2008-06-15 Darin Adler <Darin Adler>
- Scripts/do-webcore-rename: Updated for the latest round of renaming.
- 10:55 PM Changeset in webkit [34588] by
-
- 2 edits in trunk/WebCore
2008-06-15 Sam Weinig <sam@webkit.org>
Reviewed by Darin Adler.
Remove outdated comment.
- bindings/js/ScriptController.h:
- 10:28 PM Changeset in webkit [34587] by
-
- 148 edits in trunk
2008-06-15 Darin Adler <Darin Adler>
- rename KJS::List to KJS::ArgList
- API/JSCallbackConstructor.cpp: (KJS::JSCallbackConstructor::construct):
- API/JSCallbackConstructor.h:
- API/JSCallbackFunction.cpp: (KJS::JSCallbackFunction::callAsFunction):
- API/JSCallbackFunction.h:
- API/JSCallbackObject.h:
- API/JSCallbackObjectFunctions.h: (KJS::::construct): (KJS::::callAsFunction):
- API/JSObjectRef.cpp: (JSObjectMakeFunction): (JSObjectCallAsFunction): (JSObjectCallAsConstructor):
- JavaScriptCore.exp:
- VM/Machine.cpp: (KJS::Machine::execute): (KJS::Machine::privateExecute):
- VM/Machine.h:
- kjs/ArrayPrototype.cpp: (KJS::arrayProtoFuncToString): (KJS::arrayProtoFuncToLocaleString): (KJS::arrayProtoFuncJoin): (KJS::arrayProtoFuncConcat): (KJS::arrayProtoFuncPop): (KJS::arrayProtoFuncPush): (KJS::arrayProtoFuncReverse): (KJS::arrayProtoFuncShift): (KJS::arrayProtoFuncSlice): (KJS::arrayProtoFuncSort): (KJS::arrayProtoFuncSplice): (KJS::arrayProtoFuncUnShift): (KJS::arrayProtoFuncFilter): (KJS::arrayProtoFuncMap): (KJS::arrayProtoFuncEvery): (KJS::arrayProtoFuncForEach): (KJS::arrayProtoFuncSome): (KJS::arrayProtoFuncIndexOf): (KJS::arrayProtoFuncLastIndexOf): (KJS::ArrayConstructor::construct): (KJS::ArrayConstructor::callAsFunction):
- kjs/ArrayPrototype.h:
- kjs/BooleanObject.cpp: (KJS::booleanProtoFuncToString): (KJS::booleanProtoFuncValueOf): (KJS::BooleanConstructor::construct): (KJS::BooleanConstructor::callAsFunction):
- kjs/BooleanObject.h:
- kjs/CommonIdentifiers.h:
- kjs/ExecState.h: (KJS::ExecState::emptyList):
- kjs/FunctionPrototype.cpp: (KJS::FunctionPrototype::callAsFunction): (KJS::functionProtoFuncToString): (KJS::functionProtoFuncApply): (KJS::functionProtoFuncCall): (KJS::FunctionConstructor::construct): (KJS::FunctionConstructor::callAsFunction):
- kjs/FunctionPrototype.h:
- kjs/JSActivation.cpp: (KJS::JSActivation::createArgumentsObject):
- kjs/JSArray.cpp: (KJS::JSArray::JSArray): (KJS::AVLTreeAbstractorForArrayCompare::compare_key_key):
- kjs/JSArray.h:
- kjs/JSFunction.cpp: (KJS::JSFunction::callAsFunction): (KJS::JSFunction::construct): (KJS::IndexToNameMap::IndexToNameMap): (KJS::Arguments::Arguments): (KJS::encode): (KJS::decode): (KJS::globalFuncEval): (KJS::globalFuncParseInt): (KJS::globalFuncParseFloat): (KJS::globalFuncIsNaN): (KJS::globalFuncIsFinite): (KJS::globalFuncDecodeURI): (KJS::globalFuncDecodeURIComponent): (KJS::globalFuncEncodeURI): (KJS::globalFuncEncodeURIComponent): (KJS::globalFuncEscape): (KJS::globalFuncUnescape): (KJS::globalFuncKJSPrint): (KJS::PrototypeFunction::callAsFunction): (KJS::PrototypeReflexiveFunction::callAsFunction):
- kjs/JSFunction.h:
- kjs/JSGlobalData.h:
- kjs/JSImmediate.cpp: (KJS::JSImmediate::toObject):
- kjs/JSNotAnObject.cpp: (KJS::JSNotAnObject::construct): (KJS::JSNotAnObject::callAsFunction):
- kjs/JSNotAnObject.h:
- kjs/JSObject.cpp: (KJS::JSObject::put): (KJS::JSObject::construct): (KJS::JSObject::callAsFunction): (KJS::Error::create):
- kjs/JSObject.h:
- kjs/MathObject.cpp: (KJS::mathProtoFuncAbs): (KJS::mathProtoFuncACos): (KJS::mathProtoFuncASin): (KJS::mathProtoFuncATan): (KJS::mathProtoFuncATan2): (KJS::mathProtoFuncCeil): (KJS::mathProtoFuncCos): (KJS::mathProtoFuncExp): (KJS::mathProtoFuncFloor): (KJS::mathProtoFuncLog): (KJS::mathProtoFuncMax): (KJS::mathProtoFuncMin): (KJS::mathProtoFuncPow): (KJS::mathProtoFuncRandom): (KJS::mathProtoFuncRound): (KJS::mathProtoFuncSin): (KJS::mathProtoFuncSqrt): (KJS::mathProtoFuncTan):
- kjs/MathObject.h:
- kjs/NumberObject.cpp: (KJS::numberProtoFuncToString): (KJS::numberProtoFuncToLocaleString): (KJS::numberProtoFuncValueOf): (KJS::numberProtoFuncToFixed): (KJS::numberProtoFuncToExponential): (KJS::numberProtoFuncToPrecision): (KJS::NumberConstructor::construct): (KJS::NumberConstructor::callAsFunction):
- kjs/NumberObject.h:
- kjs/RegExpObject.cpp: (KJS::regExpProtoFuncTest): (KJS::regExpProtoFuncExec): (KJS::regExpProtoFuncCompile): (KJS::regExpProtoFuncToString): (KJS::RegExpObject::match): (KJS::RegExpObject::test): (KJS::RegExpObject::exec): (KJS::RegExpObject::callAsFunction): (KJS::RegExpConstructor::construct): (KJS::RegExpConstructor::callAsFunction):
- kjs/RegExpObject.h:
- kjs/Shell.cpp: (functionPrint): (functionDebug): (functionGC): (functionVersion): (functionRun): (functionLoad): (functionReadline): (functionQuit):
- kjs/collector.cpp: (KJS::Collector::collect):
- kjs/collector.h: (KJS::Collector::markListSet):
- kjs/date_object.cpp: (KJS::formatLocaleDate): (KJS::fillStructuresUsingTimeArgs): (KJS::fillStructuresUsingDateArgs): (KJS::DateConstructor::construct): (KJS::DateConstructor::callAsFunction): (KJS::DateFunction::callAsFunction): (KJS::dateProtoFuncToString): (KJS::dateProtoFuncToUTCString): (KJS::dateProtoFuncToDateString): (KJS::dateProtoFuncToTimeString): (KJS::dateProtoFuncToLocaleString): (KJS::dateProtoFuncToLocaleDateString): (KJS::dateProtoFuncToLocaleTimeString): (KJS::dateProtoFuncValueOf): (KJS::dateProtoFuncGetTime): (KJS::dateProtoFuncGetFullYear): (KJS::dateProtoFuncGetUTCFullYear): (KJS::dateProtoFuncToGMTString): (KJS::dateProtoFuncGetMonth): (KJS::dateProtoFuncGetUTCMonth): (KJS::dateProtoFuncGetDate): (KJS::dateProtoFuncGetUTCDate): (KJS::dateProtoFuncGetDay): (KJS::dateProtoFuncGetUTCDay): (KJS::dateProtoFuncGetHours): (KJS::dateProtoFuncGetUTCHours): (KJS::dateProtoFuncGetMinutes): (KJS::dateProtoFuncGetUTCMinutes): (KJS::dateProtoFuncGetSeconds): (KJS::dateProtoFuncGetUTCSeconds): (KJS::dateProtoFuncGetMilliSeconds): (KJS::dateProtoFuncGetUTCMilliseconds): (KJS::dateProtoFuncGetTimezoneOffset): (KJS::dateProtoFuncSetTime): (KJS::setNewValueFromTimeArgs): (KJS::setNewValueFromDateArgs): (KJS::dateProtoFuncSetMilliSeconds): (KJS::dateProtoFuncSetUTCMilliseconds): (KJS::dateProtoFuncSetSeconds): (KJS::dateProtoFuncSetUTCSeconds): (KJS::dateProtoFuncSetMinutes): (KJS::dateProtoFuncSetUTCMinutes): (KJS::dateProtoFuncSetHours): (KJS::dateProtoFuncSetUTCHours): (KJS::dateProtoFuncSetDate): (KJS::dateProtoFuncSetUTCDate): (KJS::dateProtoFuncSetMonth): (KJS::dateProtoFuncSetUTCMonth): (KJS::dateProtoFuncSetFullYear): (KJS::dateProtoFuncSetUTCFullYear): (KJS::dateProtoFuncSetYear): (KJS::dateProtoFuncGetYear):
- kjs/date_object.h:
- kjs/debugger.h:
- kjs/error_object.cpp: (KJS::errorProtoFuncToString): (KJS::ErrorConstructor::construct): (KJS::ErrorConstructor::callAsFunction): (KJS::NativeErrorConstructor::construct): (KJS::NativeErrorConstructor::callAsFunction):
- kjs/error_object.h:
- kjs/internal.cpp: (KJS::JSNumberCell::toObject): (KJS::JSNumberCell::toThisObject):
- kjs/list.cpp: (KJS::ArgList::getSlice): (KJS::ArgList::markLists): (KJS::ArgList::slowAppend):
- kjs/list.h: (KJS::ArgList::ArgList): (KJS::ArgList::~ArgList):
- kjs/object_object.cpp: (KJS::objectProtoFuncValueOf): (KJS::objectProtoFuncHasOwnProperty): (KJS::objectProtoFuncIsPrototypeOf): (KJS::objectProtoFuncDefineGetter): (KJS::objectProtoFuncDefineSetter): (KJS::objectProtoFuncLookupGetter): (KJS::objectProtoFuncLookupSetter): (KJS::objectProtoFuncPropertyIsEnumerable): (KJS::objectProtoFuncToLocaleString): (KJS::objectProtoFuncToString): (KJS::ObjectConstructor::construct): (KJS::ObjectConstructor::callAsFunction):
- kjs/object_object.h:
- kjs/string_object.cpp: (KJS::replace): (KJS::stringProtoFuncToString): (KJS::stringProtoFuncValueOf): (KJS::stringProtoFuncCharAt): (KJS::stringProtoFuncCharCodeAt): (KJS::stringProtoFuncConcat): (KJS::stringProtoFuncIndexOf): (KJS::stringProtoFuncLastIndexOf): (KJS::stringProtoFuncMatch): (KJS::stringProtoFuncSearch): (KJS::stringProtoFuncReplace): (KJS::stringProtoFuncSlice): (KJS::stringProtoFuncSplit): (KJS::stringProtoFuncSubstr): (KJS::stringProtoFuncSubstring): (KJS::stringProtoFuncToLowerCase): (KJS::stringProtoFuncToUpperCase): (KJS::stringProtoFuncToLocaleLowerCase): (KJS::stringProtoFuncToLocaleUpperCase): (KJS::stringProtoFuncLocaleCompare): (KJS::stringProtoFuncBig): (KJS::stringProtoFuncSmall): (KJS::stringProtoFuncBlink): (KJS::stringProtoFuncBold): (KJS::stringProtoFuncFixed): (KJS::stringProtoFuncItalics): (KJS::stringProtoFuncStrike): (KJS::stringProtoFuncSub): (KJS::stringProtoFuncSup): (KJS::stringProtoFuncFontcolor): (KJS::stringProtoFuncFontsize): (KJS::stringProtoFuncAnchor): (KJS::stringProtoFuncLink): (KJS::StringConstructor::construct): (KJS::StringConstructor::callAsFunction): (KJS::StringConstructorFunction::callAsFunction):
- kjs/string_object.h:
JavaScriptGlue:
2008-06-15 Darin Adler <Darin Adler>
- rename KJS::List to KJS::ArgList
- JSValueWrapper.cpp: (JSValueWrapper::JSObjectCallFunction):
- UserObjectImp.cpp: (UserObjectImp::callAsFunction):
- UserObjectImp.h:
WebCore:
2008-06-15 Darin Adler <Darin Adler>
- try to fix Qt build
- dom/XMLTokenizer.cpp: Use create instead of new.
- rename KJS::List to KJS::ArgList
- bindings/js/JSAudioConstructor.cpp: (WebCore::JSAudioConstructor::construct):
- bindings/js/JSAudioConstructor.h:
- bindings/js/JSCanvasRenderingContext2DCustom.cpp: (WebCore::JSCanvasRenderingContext2D::setFillColor): (WebCore::JSCanvasRenderingContext2D::setStrokeColor): (WebCore::JSCanvasRenderingContext2D::strokeRect): (WebCore::JSCanvasRenderingContext2D::drawImage): (WebCore::JSCanvasRenderingContext2D::drawImageFromRect): (WebCore::JSCanvasRenderingContext2D::setShadow): (WebCore::JSCanvasRenderingContext2D::createPattern): (WebCore::JSCanvasRenderingContext2D::putImageData):
- bindings/js/JSClipboardCustom.cpp: (WebCore::JSClipboard::types): (WebCore::JSClipboard::clearData): (WebCore::JSClipboard::getData): (WebCore::JSClipboard::setData): (WebCore::JSClipboard::setDragImage):
- bindings/js/JSConsoleCustom.cpp: (WebCore::JSConsole::debug): (WebCore::JSConsole::error): (WebCore::JSConsole::info): (WebCore::JSConsole::log): (WebCore::JSConsole::warn): (WebCore::JSConsole::assertCondition): (WebCore::JSConsole::profile): (WebCore::JSConsole::profileEnd):
- bindings/js/JSCustomSQLStatementCallback.cpp: (WebCore::JSCustomSQLStatementCallback::handleEvent):
- bindings/js/JSCustomSQLStatementErrorCallback.cpp: (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
- bindings/js/JSCustomSQLTransactionCallback.cpp: (WebCore::JSCustomSQLTransactionCallback::handleEvent):
- bindings/js/JSCustomSQLTransactionErrorCallback.cpp: (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
- bindings/js/JSCustomVoidCallback.cpp: (WebCore::JSCustomVoidCallback::handleEvent):
- bindings/js/JSCustomXPathNSResolver.cpp: (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
- bindings/js/JSDOMApplicationCacheCustom.cpp: (WebCore::JSDOMApplicationCache::add): (WebCore::JSDOMApplicationCache::remove): (WebCore::JSDOMApplicationCache::addEventListener): (WebCore::JSDOMApplicationCache::removeEventListener): (WebCore::JSDOMApplicationCache::dispatchEvent):
- bindings/js/JSDOMWindowBase.cpp: (WebCore::windowProtoFuncAToB): (WebCore::windowProtoFuncBToA): (WebCore::windowProtoFuncOpen): (WebCore::windowProtoFuncSetTimeout): (WebCore::windowProtoFuncClearTimeout): (WebCore::windowProtoFuncSetInterval): (WebCore::windowProtoFuncAddEventListener): (WebCore::windowProtoFuncRemoveEventListener): (WebCore::windowProtoFuncShowModalDialog): (WebCore::windowProtoFuncNotImplemented): (WebCore::JSDOMWindowBase::installTimeout):
- bindings/js/JSDOMWindowBase.h:
- bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::postMessage):
- bindings/js/JSDatabaseCustom.cpp: (WebCore::JSDatabase::changeVersion): (WebCore::JSDatabase::transaction):
- bindings/js/JSElementCustom.cpp: (WebCore::JSElement::setAttribute): (WebCore::JSElement::setAttributeNode): (WebCore::JSElement::setAttributeNS): (WebCore::JSElement::setAttributeNodeNS):
- bindings/js/JSEventTargetBase.cpp: (WebCore::jsEventTargetAddEventListener): (WebCore::jsEventTargetRemoveEventListener): (WebCore::jsEventTargetDispatchEvent):
- bindings/js/JSEventTargetBase.h:
- bindings/js/JSHTMLAppletElementCustom.cpp: (WebCore::JSHTMLAppletElement::callAsFunction):
- bindings/js/JSHTMLCollectionCustom.cpp: (WebCore::JSHTMLCollection::callAsFunction): (WebCore::JSHTMLCollection::item): (WebCore::JSHTMLCollection::namedItem):
- bindings/js/JSHTMLDocumentCustom.cpp: (WebCore::JSHTMLDocument::open): (WebCore::writeHelper): (WebCore::JSHTMLDocument::write): (WebCore::JSHTMLDocument::writeln):
- bindings/js/JSHTMLEmbedElementCustom.cpp: (WebCore::JSHTMLEmbedElement::callAsFunction):
- bindings/js/JSHTMLInputElementBase.cpp: (WebCore::jsHTMLInputElementBaseFunctionSetSelectionRange):
- bindings/js/JSHTMLInputElementBase.h:
- bindings/js/JSHTMLObjectElementCustom.cpp: (WebCore::JSHTMLObjectElement::callAsFunction):
- bindings/js/JSHTMLOptionElementConstructor.cpp: (WebCore::JSHTMLOptionElementConstructor::construct):
- bindings/js/JSHTMLOptionElementConstructor.h:
- bindings/js/JSHTMLOptionsCollectionCustom.cpp: (WebCore::JSHTMLOptionsCollection::add): (WebCore::JSHTMLOptionsCollection::remove):
- bindings/js/JSHTMLSelectElementCustom.cpp: (WebCore::JSHTMLSelectElement::remove):
- bindings/js/JSImageConstructor.cpp: (WebCore::JSImageConstructor::construct):
- bindings/js/JSImageConstructor.h:
- bindings/js/JSJavaScriptCallFrameCustom.cpp: (WebCore::JSJavaScriptCallFrame::evaluate): (WebCore::JSJavaScriptCallFrame::scopeChain):
- bindings/js/JSLocationCustom.cpp: (WebCore::JSLocation::replace): (WebCore::JSLocation::reload): (WebCore::JSLocation::assign): (WebCore::JSLocation::toString):
- bindings/js/JSNodeCustom.cpp: (WebCore::JSNode::insertBefore): (WebCore::JSNode::replaceChild): (WebCore::JSNode::removeChild): (WebCore::JSNode::appendChild):
- bindings/js/JSNodeFilterCondition.cpp: (WebCore::JSNodeFilterCondition::acceptNode):
- bindings/js/JSNodeFilterCustom.cpp: (WebCore::JSNodeFilter::acceptNode):
- bindings/js/JSNodeIteratorCustom.cpp: (WebCore::JSNodeIterator::nextNode): (WebCore::JSNodeIterator::previousNode):
- bindings/js/JSNodeListCustom.cpp: (WebCore::JSNodeList::callAsFunction):
- bindings/js/JSQuarantinedObjectWrapper.cpp: (WebCore::JSQuarantinedObjectWrapper::construct): (WebCore::JSQuarantinedObjectWrapper::callAsFunction):
- bindings/js/JSQuarantinedObjectWrapper.h:
- bindings/js/JSSQLResultSetRowListCustom.cpp: (WebCore::JSSQLResultSetRowList::item):
- bindings/js/JSSQLTransactionCustom.cpp: (WebCore::JSSQLTransaction::executeSql):
- bindings/js/JSSVGMatrixCustom.cpp: (WebCore::JSSVGMatrix::multiply): (WebCore::JSSVGMatrix::inverse): (WebCore::JSSVGMatrix::translate): (WebCore::JSSVGMatrix::scale): (WebCore::JSSVGMatrix::scaleNonUniform): (WebCore::JSSVGMatrix::rotate): (WebCore::JSSVGMatrix::rotateFromVector): (WebCore::JSSVGMatrix::flipX): (WebCore::JSSVGMatrix::flipY): (WebCore::JSSVGMatrix::skewX): (WebCore::JSSVGMatrix::skewY):
- bindings/js/JSSVGPathSegListCustom.cpp: (WebCore::JSSVGPathSegList::clear): (WebCore::JSSVGPathSegList::initialize): (WebCore::JSSVGPathSegList::getItem): (WebCore::JSSVGPathSegList::insertItemBefore): (WebCore::JSSVGPathSegList::replaceItem): (WebCore::JSSVGPathSegList::removeItem): (WebCore::JSSVGPathSegList::appendItem):
- bindings/js/JSSVGPointListCustom.cpp: (WebCore::JSSVGPointList::clear): (WebCore::JSSVGPointList::initialize): (WebCore::JSSVGPointList::getItem): (WebCore::JSSVGPointList::insertItemBefore): (WebCore::JSSVGPointList::replaceItem): (WebCore::JSSVGPointList::removeItem): (WebCore::JSSVGPointList::appendItem):
- bindings/js/JSSVGTransformListCustom.cpp: (WebCore::JSSVGTransformList::clear): (WebCore::JSSVGTransformList::initialize): (WebCore::JSSVGTransformList::getItem): (WebCore::JSSVGTransformList::insertItemBefore): (WebCore::JSSVGTransformList::replaceItem): (WebCore::JSSVGTransformList::removeItem): (WebCore::JSSVGTransformList::appendItem):
- bindings/js/JSTreeWalkerCustom.cpp: (WebCore::JSTreeWalker::parentNode): (WebCore::JSTreeWalker::firstChild): (WebCore::JSTreeWalker::lastChild): (WebCore::JSTreeWalker::nextSibling): (WebCore::JSTreeWalker::previousSibling): (WebCore::JSTreeWalker::previousNode): (WebCore::JSTreeWalker::nextNode):
- bindings/js/JSXMLHttpRequestConstructor.cpp: (WebCore::JSXMLHttpRequestConstructor::construct):
- bindings/js/JSXMLHttpRequestConstructor.h:
- bindings/js/JSXMLHttpRequestCustom.cpp: (WebCore::JSXMLHttpRequest::open): (WebCore::JSXMLHttpRequest::setRequestHeader): (WebCore::JSXMLHttpRequest::send): (WebCore::JSXMLHttpRequest::getResponseHeader): (WebCore::JSXMLHttpRequest::overrideMimeType): (WebCore::JSXMLHttpRequest::addEventListener): (WebCore::JSXMLHttpRequest::removeEventListener): (WebCore::JSXMLHttpRequest::dispatchEvent):
- bindings/js/JSXSLTProcessorConstructor.cpp: (WebCore::JSXSLTProcessorConstructor::construct):
- bindings/js/JSXSLTProcessorConstructor.h:
- bindings/js/JSXSLTProcessorCustom.cpp: (WebCore::JSXSLTProcessor::importStylesheet): (WebCore::JSXSLTProcessor::transformToFragment): (WebCore::JSXSLTProcessor::transformToDocument): (WebCore::JSXSLTProcessor::setParameter): (WebCore::JSXSLTProcessor::getParameter): (WebCore::JSXSLTProcessor::removeParameter):
- bindings/js/ScheduledAction.cpp: (WebCore::ScheduledAction::ScheduledAction): (WebCore::ScheduledAction::execute):
- bindings/js/ScheduledAction.h:
- bindings/js/kjs_events.cpp: (WebCore::JSAbstractEventListener::handleEvent): (WebCore::JSLazyEventListener::parseCode):
- bindings/js/kjs_html.cpp: (WebCore::runtimeObjectCallAsFunction):
- bindings/js/kjs_html.h:
- bindings/objc/WebScriptObject.mm: (getListFromNSArray): (-[WebScriptObject callWebScriptMethod:withArguments:]):
- bindings/scripts/CodeGeneratorJS.pm:
- bridge/NP_jsobject.cpp: (getListFromVariantArgs): (_NPN_InvokeDefault): (_NPN_Invoke):
- bridge/c/c_instance.cpp: (KJS::Bindings::CInstance::invokeMethod): (KJS::Bindings::CInstance::invokeDefaultMethod):
- bridge/c/c_instance.h:
- bridge/jni/jni_instance.cpp: (JavaInstance::invokeMethod):
- bridge/jni/jni_instance.h:
- bridge/jni/jni_jsobject.h:
- bridge/jni/jni_jsobject.mm: (JavaJSObject::call): (JavaJSObject::getListFromJArray):
- bridge/objc/objc_instance.h:
- bridge/objc/objc_instance.mm: (ObjcInstance::invokeMethod): (ObjcInstance::invokeDefaultMethod):
- bridge/objc/objc_runtime.h:
- bridge/objc/objc_runtime.mm: (ObjcFallbackObjectImp::callAsFunction):
- bridge/qt/qt_instance.cpp: (KJS::Bindings::QtRuntimeObjectImp::construct): (KJS::Bindings::QtInstance::invokeMethod): (KJS::Bindings::QtInstance::invokeDefaultMethod):
- bridge/qt/qt_instance.h:
- bridge/qt/qt_runtime.cpp: (KJS::Bindings::convertQVariantToValue): (KJS::Bindings::findMethodIndex): (KJS::Bindings::QtRuntimeMetaMethod::callAsFunction): (KJS::Bindings::QtRuntimeConnectionMethod::callAsFunction): (KJS::Bindings::QtConnectionObject::execute):
- bridge/qt/qt_runtime.h:
- bridge/runtime.h: (KJS::Bindings::Instance::invokeDefaultMethod):
- bridge/runtime_method.cpp: (RuntimeMethod::callAsFunction):
- bridge/runtime_method.h:
- bridge/runtime_object.cpp: (RuntimeObjectImp::callAsFunction):
- bridge/runtime_object.h:
- page/Console.cpp: (WebCore::printToStandardOut): (WebCore::Console::debug): (WebCore::Console::error): (WebCore::Console::info): (WebCore::Console::log): (WebCore::Console::assertCondition): (WebCore::Console::profile): (WebCore::Console::profileEnd): (WebCore::Console::warn):
- page/Console.h:
- page/InspectorController.cpp: (WebCore::ConsoleMessage::ConsoleMessage): (WebCore::InspectorController::addMessageToConsole):
- page/InspectorController.h:
WebKit/mac:
2008-06-15 Darin Adler <Darin Adler>
- rename KJS::List to KJS::ArgList
- WebView/WebScriptDebugger.h:
WebKit/win:
2008-06-15 Darin Adler <Darin Adler>
- rename KJS::List to KJS::ArgList
- WebScriptCallFrame.cpp: (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
WebKitTools:
2008-06-15 Darin Adler <Darin Adler>
- Scripts/do-webcore-rename: Updated for the latest round of renaming.
- 10:04 PM Changeset in webkit [34586] by
-
- 7 edits in trunk/WebKit/gtk
2008-06-15 Darin Adler <Darin Adler>
- undo bogus renaming done by the script
- WebCoreSupport/ContextMenuClientGtk.cpp:
- webkit/webkitnetworkrequest.h:
- webkit/webkitwebbackforwardlist.h:
- webkit/webkitwebframe.h:
- webkit/webkitwebhistoryitem.h:
- webkit/webkitwebsettings.h:
- 10:03 PM Changeset in webkit [34585] by
-
- 2 edits in trunk/WebCore
2008-06-15 Darin Adler <Darin Adler>
- platform/graphics/gtk/VideoSinkGStreamer.h: Undo a bogus rename done by the script.
- 9:43 PM Changeset in webkit [34584] by
-
- 5 edits12 adds in trunk
WebCore:
2008-06-15 Adam Barth <abarth@webkit.org>
Reviewed by Sam Weinig.
Fix our implementation of Document.documentURI (DOM Core Level 3).
Tests: fast/dom/documenturi-affects-relative-paths.html
fast/dom/documenturi-assigned-junk-implies-baseuri-null.html
fast/dom/documenturi-assigned-junk-implies-relative-urls-do-not-resolve.html
fast/dom/documenturi-can-hold-arbitrary-string.html
fast/dom/documenturi-loses-to-base-tag.html
fast/dom/documenturi-not-affected-by-base-tag.html
- dom/Document.cpp: (WebCore::Document::setDocumentURI): (WebCore::Document::setURL): (WebCore::Document::updateBaseURL):
- dom/Document.h:
- page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::url):
LayoutTests:
2008-06-15 Adam Barth <abarth@webkit.org>
Reviewed by Sam Weinig.
Test Document.documentURI (DOM Core Level 3). There don't appear to be
other browser implementations of this feature to compare against, but
these tests test my interpretation of the spec.
- fast/dom/documenturi-affects-relative-paths-expected.txt: Added.
- fast/dom/documenturi-affects-relative-paths.html: Added.
- fast/dom/documenturi-assigned-junk-implies-baseuri-null-expected.txt: Added.
- fast/dom/documenturi-assigned-junk-implies-baseuri-null.html: Added.
- fast/dom/documenturi-assigned-junk-implies-relative-urls-do-not-resolve-expected.txt: Added.
- fast/dom/documenturi-assigned-junk-implies-relative-urls-do-not-resolve.html: Added.
- fast/dom/documenturi-can-hold-arbitrary-string-expected.txt: Added.
- fast/dom/documenturi-can-hold-arbitrary-string.html: Added.
- fast/dom/documenturi-loses-to-base-tag-expected.txt: Added.
- fast/dom/documenturi-loses-to-base-tag.html: Added.
- fast/dom/documenturi-not-affected-by-base-tag-expected.txt: Added.
- fast/dom/documenturi-not-affected-by-base-tag.html: Added.
- 9:42 PM Changeset in webkit [34583] by
-
- 6 edits in trunk/WebCore
2008-06-15 Adam Barth <abarth@webkit.org>
Reviewed by Sam Weinig.
Refactor our handling of Document::m_baseURL in preparation for
correcting our implementation of Document.documentURI.
- dom/Document.cpp: (WebCore::Document::documentURI): (WebCore::Document::open): (WebCore::Document::setURL): (WebCore::Document::setBaseElementURL): (WebCore::Document::updateBaseURL): (WebCore::Document::elementSheet): (WebCore::Document::mappedElementSheet): (WebCore::Document::completeURL):
- dom/Document.h: (WebCore::Document::url): (WebCore::Document::baseURL):
- html/HTMLBaseElement.cpp: (WebCore::HTMLBaseElement::removedFromDocument): (WebCore::HTMLBaseElement::process):
- loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
- xml/XSLTProcessor.cpp: (WebCore::XSLTProcessor::createDocumentFromSource):
- 9:17 PM Changeset in webkit [34582] by
-
- 45 edits26 moves in trunk
2008-06-15 Darin Adler <Darin Adler>
- new names for more JavaScriptCore files
- API/JSCallbackFunction.cpp:
- API/JSObjectRef.cpp:
- DerivedSources.make:
- GNUmakefile.am:
- JavaScriptCore.exp:
- JavaScriptCore.pri:
- JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
- JavaScriptCore.xcodeproj/project.pbxproj:
- JavaScriptCoreSources.bkl:
- VM/Machine.cpp:
- kjs/AllInOneFile.cpp:
- kjs/ArrayPrototype.cpp: Copied from JavaScriptCore/kjs/array_object.cpp.
- kjs/ArrayPrototype.h: Copied from JavaScriptCore/kjs/array_object.h.
- kjs/BooleanObject.cpp: Copied from JavaScriptCore/kjs/bool_object.cpp.
- kjs/BooleanObject.h: Copied from JavaScriptCore/kjs/bool_object.h.
- kjs/ExecState.cpp:
- kjs/ExecState.h:
- kjs/FunctionPrototype.cpp: Copied from JavaScriptCore/kjs/function_object.cpp.
- kjs/FunctionPrototype.h: Copied from JavaScriptCore/kjs/function_object.h.
- kjs/JSArray.cpp: Copied from JavaScriptCore/kjs/array_instance.cpp.
- kjs/JSArray.h: Copied from JavaScriptCore/kjs/array_instance.h.
- kjs/JSFunction.cpp:
- kjs/JSFunction.h:
- kjs/JSGlobalObject.cpp:
- kjs/JSImmediate.cpp:
- kjs/JSObject.h:
- kjs/JSString.h:
- kjs/JSValue.h:
- kjs/JSVariableObject.cpp:
- kjs/MathObject.cpp: Copied from JavaScriptCore/kjs/math_object.cpp.
- kjs/MathObject.h: Copied from JavaScriptCore/kjs/math_object.h.
- kjs/NumberObject.cpp: Copied from JavaScriptCore/kjs/number_object.cpp.
- kjs/NumberObject.h: Copied from JavaScriptCore/kjs/number_object.h.
- kjs/PropertyMap.cpp: Copied from JavaScriptCore/kjs/property_map.cpp.
- kjs/PropertyMap.h: Copied from JavaScriptCore/kjs/property_map.h.
- kjs/PropertySlot.cpp: Copied from JavaScriptCore/kjs/property_slot.cpp.
- kjs/PropertySlot.h: Copied from JavaScriptCore/kjs/property_slot.h.
- kjs/RegExpObject.cpp: Copied from JavaScriptCore/kjs/regexp_object.cpp.
- kjs/RegExpObject.h: Copied from JavaScriptCore/kjs/regexp_object.h.
- kjs/ScopeChain.cpp: Copied from JavaScriptCore/kjs/scope_chain.cpp.
- kjs/ScopeChain.h: Copied from JavaScriptCore/kjs/scope_chain.h.
- kjs/ScopeChainMark.h: Copied from JavaScriptCore/kjs/scope_chain_mark.h.
- kjs/Shell.cpp:
- kjs/array_instance.cpp: Removed.
- kjs/array_instance.h: Removed.
- kjs/array_object.cpp: Removed.
- kjs/array_object.h: Removed.
- kjs/bool_object.cpp: Removed.
- kjs/bool_object.h: Removed.
- kjs/error_object.h:
- kjs/function_object.cpp: Removed.
- kjs/function_object.h: Removed.
- kjs/internal.cpp:
- kjs/math_object.cpp: Removed.
- kjs/math_object.h: Removed.
- kjs/nodes.cpp:
- kjs/number_object.cpp: Removed.
- kjs/number_object.h: Removed.
- kjs/object_object.cpp:
- kjs/property_map.cpp: Removed.
- kjs/property_map.h: Removed.
- kjs/property_slot.cpp: Removed.
- kjs/property_slot.h: Removed.
- kjs/regexp_object.cpp: Removed.
- kjs/regexp_object.h: Removed.
- kjs/scope_chain.cpp: Removed.
- kjs/scope_chain.h: Removed.
- kjs/scope_chain_mark.h: Removed.
- kjs/string_object.cpp:
- kjs/string_object.h:
WebCore:
2008-06-15 Darin Adler <Darin Adler>
- new names for more JavaScriptCore files
- ForwardingHeaders/kjs/ArrayPrototype.h: Copied from WebCore/ForwardingHeaders/kjs/array_object.h.
- ForwardingHeaders/kjs/BooleanObject.h: Copied from WebCore/ForwardingHeaders/kjs/bool_object.h.
- ForwardingHeaders/kjs/FunctionPrototype.h: Copied from WebCore/ForwardingHeaders/kjs/function_object.h.
- ForwardingHeaders/kjs/JSArray.h: Copied from WebCore/ForwardingHeaders/kjs/array_instance.h.
- ForwardingHeaders/kjs/PropertyMap.h: Copied from WebCore/ForwardingHeaders/kjs/property_map.h.
- ForwardingHeaders/kjs/array_instance.h: Removed.
- ForwardingHeaders/kjs/array_object.h: Removed.
- ForwardingHeaders/kjs/bool_object.h: Removed.
- ForwardingHeaders/kjs/function_object.h: Removed.
- ForwardingHeaders/kjs/property_map.h: Removed.
- WebCore.vcproj/WebCore.vcproj:
- bindings/js/JSClipboardCustom.cpp:
- bindings/js/JSDatabaseCustom.cpp:
- bindings/js/JSJavaScriptCallFrameCustom.cpp:
- bindings/js/kjs_events.cpp:
- bridge/jni/jni_utility.cpp:
- bridge/qt/qt_runtime.cpp:
- bridge/runtime_array.cpp:
WebKit/mac:
2008-06-15 Darin Adler <Darin Adler>
- new names for more JavaScriptCore files
- WebView/WebView.mm:
WebKit/qt:
2008-06-15 Darin Adler <Darin Adler>
- new names for more JavaScriptCore files
- WebKit_pch.h:
WebKitTools:
2008-06-15 Darin Adler <Darin Adler>
- Scripts/do-file-rename: Updated.
- Scripts/do-webcore-rename: Updated for the latest round of renaming.
- 9:00 PM Changeset in webkit [34581] by
-
- 110 edits16 moves in trunk
2008-06-15 Darin Adler <Darin Adler>
- new names for a few key JavaScriptCore files
- API/JSBase.cpp:
- API/JSCallbackConstructor.h:
- API/JSCallbackFunction.cpp:
- API/JSCallbackFunction.h:
- API/JSCallbackObject.h:
- API/JSCallbackObjectFunctions.h:
- API/JSClassRef.h:
- API/JSContextRef.cpp:
- API/JSObjectRef.cpp:
- API/JSStringRef.cpp:
- API/JSStringRefCF.cpp:
- API/JSValueRef.cpp:
- GNUmakefile.am:
- JavaScriptCore.pri:
- JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
- JavaScriptCore.xcodeproj/project.pbxproj:
- JavaScriptCoreSources.bkl:
- VM/CodeBlock.cpp:
- VM/CodeGenerator.cpp:
- VM/ExceptionHelpers.cpp:
- VM/ExceptionHelpers.h:
- VM/JSPropertyNameIterator.cpp:
- VM/JSPropertyNameIterator.h:
- VM/Machine.cpp:
- kjs/AllInOneFile.cpp:
- kjs/DateMath.cpp:
- kjs/DebuggerCallFrame.cpp:
- kjs/ExecState.cpp:
- kjs/JSActivation.cpp:
- kjs/JSFunction.cpp: Copied from JavaScriptCore/kjs/function.cpp.
- kjs/JSFunction.h: Copied from JavaScriptCore/kjs/function.h.
- kjs/JSImmediate.cpp:
- kjs/JSNotAnObject.h:
- kjs/JSObject.cpp: Copied from JavaScriptCore/kjs/object.cpp.
- kjs/JSObject.h: Copied from JavaScriptCore/kjs/object.h.
- kjs/JSString.h: Copied from JavaScriptCore/kjs/internal.h.
- kjs/JSValue.cpp: Copied from JavaScriptCore/kjs/value.cpp.
- kjs/JSValue.h: Copied from JavaScriptCore/kjs/value.h.
- kjs/JSVariableObject.h:
- kjs/JSWrapperObject.h:
- kjs/Shell.cpp:
- kjs/SymbolTable.h:
- kjs/array_instance.h:
- kjs/collector.cpp:
- kjs/date_object.cpp:
- kjs/date_object.h:
- kjs/error_object.cpp:
- kjs/function.cpp: Removed.
- kjs/function.h: Removed.
- kjs/function_object.cpp:
- kjs/function_object.h:
- kjs/grammar.y:
- kjs/internal.cpp:
- kjs/internal.h: Removed.
- kjs/lexer.cpp:
- kjs/list.h:
- kjs/lookup.h:
- kjs/nodes.h:
- kjs/object.cpp: Removed.
- kjs/object.h: Removed.
- kjs/object_object.h:
- kjs/operations.cpp:
- kjs/property_map.cpp:
- kjs/property_slot.cpp:
- kjs/property_slot.h:
- kjs/protect.h:
- kjs/regexp_object.cpp:
- kjs/scope_chain.cpp:
- kjs/string_object.h:
- kjs/ustring.cpp:
- kjs/value.cpp: Removed.
- kjs/value.h: Removed.
- profiler/Profile.cpp:
- profiler/Profiler.cpp:
JavaScriptGlue:
2008-06-15 Darin Adler <Darin Adler>
- new names for a few key JavaScriptCore files
- ForwardingHeaders/kjs/JSValue.h: Copied from JavaScriptGlue/ForwardingHeaders/kjs/value.h.
- ForwardingHeaders/kjs/value.h: Removed.
- JSUtils.h:
WebCore:
2008-06-15 Darin Adler <Darin Adler>
- new names for a few key JavaScriptCore files
- ForwardingHeaders/kjs/JSFunction.h: Copied from WebCore/ForwardingHeaders/kjs/function.h.
- ForwardingHeaders/kjs/JSObject.h: Copied from WebCore/ForwardingHeaders/kjs/object.h.
- ForwardingHeaders/kjs/JSString.h: Copied from WebCore/ForwardingHeaders/kjs/internal.h.
- ForwardingHeaders/kjs/JSValue.h: Copied from WebCore/ForwardingHeaders/kjs/value.h.
- ForwardingHeaders/kjs/function.h: Removed.
- ForwardingHeaders/kjs/internal.h: Removed.
- ForwardingHeaders/kjs/object.h: Removed.
- ForwardingHeaders/kjs/value.h: Removed.
- WebCore.vcproj/WebCore.vcproj:
- bindings/js/JSCustomSQLStatementCallback.h:
- bindings/js/JSCustomSQLStatementErrorCallback.h:
- bindings/js/JSCustomSQLTransactionErrorCallback.h:
- bindings/js/JSCustomVoidCallback.h:
- bindings/js/JSDOMBinding.h:
- bindings/js/JSDOMWindowCustom.cpp:
- bindings/js/JSDOMWindowShell.cpp:
- bindings/js/JSQuarantinedObjectWrapper.h:
- bridge/objc/objc_runtime.h:
- bridge/objc/objc_utility.h:
- bridge/qt/qt_runtime.cpp:
- bridge/runtime.h:
- bridge/runtime_array.h:
- bridge/runtime_method.h:
- bridge/runtime_object.h:
- bridge/testbindings.cpp:
- bridge/testbindings.mm:
- bridge/testqtbindings.cpp:
- loader/FrameLoader.cpp:
- page/JavaScriptCallFrame.cpp:
- page/JavaScriptProfile.cpp:
- page/JavaScriptProfileNode.cpp:
- platform/graphics/gtk/VideoSinkGStreamer.h:
- plugins/PluginView.cpp:
- plugins/gtk/PluginViewGtk.cpp:
- plugins/qt/PluginViewQt.cpp:
- plugins/win/PluginViewWin.cpp:
WebKit/gtk:
2008-06-15 Darin Adler <Darin Adler>
- new names for a few key JavaScriptCore files
- WebCoreSupport/ContextMenuClientGtk.cpp:
- webkit/webkitnetworkrequest.h:
- webkit/webkitwebbackforwardlist.h:
- webkit/webkitwebframe.h:
- webkit/webkitwebhistoryitem.h:
- webkit/webkitwebsettings.h:
WebKit/mac:
2008-06-15 Darin Adler <Darin Adler>
- new names for a few key JavaScriptCore files
- ForwardingHeaders/kjs/JSFunction.h: Copied from WebKit/mac/ForwardingHeaders/kjs/function.h.
- ForwardingHeaders/kjs/JSObject.h: Copied from WebKit/mac/ForwardingHeaders/kjs/object.h.
- ForwardingHeaders/kjs/JSString.h: Copied from WebKit/mac/ForwardingHeaders/kjs/internal.h.
- ForwardingHeaders/kjs/JSValue.h: Copied from WebKit/mac/ForwardingHeaders/kjs/value.h.
- ForwardingHeaders/kjs/function.h: Removed.
- ForwardingHeaders/kjs/internal.h: Removed.
- ForwardingHeaders/kjs/object.h: Removed.
- ForwardingHeaders/kjs/value.h: Removed.
- WebView/WebScriptDebugDelegate.mm:
WebKit/qt:
2008-06-15 Darin Adler <Darin Adler>
- new names for a few key JavaScriptCore files
- Api/qwebframe.cpp:
WebKit/win:
2008-06-15 Darin Adler <Darin Adler>
- new names for a few key JavaScriptCore files
- WebView.cpp:
WebKit/wx:
2008-06-15 Darin Adler <Darin Adler>
- new names for a few key JavaScriptCore files
- WebView.cpp:
WebKitTools:
2008-06-15 Darin Adler <Darin Adler>
- Scripts/do-file-rename: Updated for the latest round of renaming.
- Scripts/do-webcore-rename: Tweaked and reorganized a bit.
- 8:02 PM Changeset in webkit [34580] by
-
- 46 edits1 add in trunk
2008-06-15 Darin Adler <Darin Adler>
Rubber stamped by Sam.
- cut down on confusing uses of "Object" and "Imp" in JavaScriptCore class names
- API/JSCallbackFunction.cpp: (KJS::JSCallbackFunction::JSCallbackFunction):
- API/JSCallbackFunction.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- kjs/ExecState.h: (KJS::ExecState::regExpTable): (KJS::ExecState::regExpConstructorTable):
- kjs/JSGlobalData.cpp: (KJS::JSGlobalData::JSGlobalData): (KJS::JSGlobalData::~JSGlobalData):
- kjs/JSGlobalData.h:
- kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::reset):
- kjs/JSGlobalObject.h: (KJS::JSGlobalObject::objectConstructor): (KJS::JSGlobalObject::functionConstructor): (KJS::JSGlobalObject::arrayConstructor): (KJS::JSGlobalObject::booleanConstructor): (KJS::JSGlobalObject::stringConstructor): (KJS::JSGlobalObject::numberConstructor): (KJS::JSGlobalObject::dateConstructor): (KJS::JSGlobalObject::regExpConstructor): (KJS::JSGlobalObject::errorConstructor): (KJS::JSGlobalObject::evalErrorConstructor): (KJS::JSGlobalObject::rangeErrorConstructor): (KJS::JSGlobalObject::referenceErrorConstructor): (KJS::JSGlobalObject::syntaxErrorConstructor): (KJS::JSGlobalObject::typeErrorConstructor): (KJS::JSGlobalObject::URIErrorConstructor):
- kjs/array_object.cpp: (KJS::ArrayConstructor::ArrayConstructor): (KJS::ArrayConstructor::getConstructData): (KJS::ArrayConstructor::construct): (KJS::ArrayConstructor::callAsFunction):
- kjs/array_object.h:
- kjs/bool_object.cpp: (KJS::BooleanObject::BooleanObject): (KJS::BooleanPrototype::BooleanPrototype): (KJS::booleanProtoFuncToString): (KJS::booleanProtoFuncValueOf): (KJS::BooleanConstructor::BooleanConstructor): (KJS::BooleanConstructor::getConstructData): (KJS::BooleanConstructor::construct): (KJS::BooleanConstructor::callAsFunction):
- kjs/bool_object.h:
- kjs/date_object.cpp: (KJS::DatePrototype::DatePrototype): (KJS::DateConstructor::DateConstructor): (KJS::DateConstructor::getConstructData): (KJS::DateConstructor::construct): (KJS::DateConstructor::callAsFunction): (KJS::DateFunction::DateFunction): (KJS::DateFunction::callAsFunction):
- kjs/date_object.h:
- kjs/error_object.cpp: (KJS::ErrorPrototype::ErrorPrototype): (KJS::ErrorConstructor::ErrorConstructor): (KJS::ErrorConstructor::getConstructData): (KJS::ErrorConstructor::construct): (KJS::ErrorConstructor::callAsFunction): (KJS::NativeErrorConstructor::NativeErrorConstructor): (KJS::NativeErrorConstructor::getConstructData): (KJS::NativeErrorConstructor::construct): (KJS::NativeErrorConstructor::callAsFunction): (KJS::NativeErrorConstructor::mark):
- kjs/error_object.h:
- kjs/function.cpp: (KJS::JSFunction::JSFunction): (KJS::JSFunction::mark): (KJS::JSFunction::getOwnPropertySlot): (KJS::JSFunction::put): (KJS::JSFunction::deleteProperty): (KJS::PrototypeFunction::PrototypeFunction): (KJS::PrototypeReflexiveFunction::PrototypeReflexiveFunction): (KJS::PrototypeReflexiveFunction::mark):
- kjs/function.h:
- kjs/function_object.cpp: (KJS::functionProtoFuncToString): (KJS::FunctionConstructor::FunctionConstructor): (KJS::FunctionConstructor::getConstructData): (KJS::FunctionConstructor::construct): (KJS::FunctionConstructor::callAsFunction):
- kjs/function_object.h:
- kjs/internal.cpp: (KJS::StringObject::create): (KJS::JSString::toObject): (KJS::JSString::toThisObject): (KJS::JSString::getOwnPropertySlot): (KJS::InternalFunction::InternalFunction): (KJS::InternalFunction::getCallData): (KJS::InternalFunction::implementsHasInstance):
- kjs/math_object.cpp: (KJS::MathObject::MathObject): (KJS::MathObject::getOwnPropertySlot): (KJS::MathObject::getValueProperty):
- kjs/math_object.h:
- kjs/number_object.cpp: (KJS::NumberObject::NumberObject): (KJS::NumberPrototype::NumberPrototype): (KJS::numberProtoFuncToString): (KJS::numberProtoFuncToLocaleString): (KJS::numberProtoFuncValueOf): (KJS::numberProtoFuncToFixed): (KJS::numberProtoFuncToExponential): (KJS::numberProtoFuncToPrecision): (KJS::NumberConstructor::NumberConstructor): (KJS::NumberConstructor::getOwnPropertySlot): (KJS::NumberConstructor::getValueProperty): (KJS::NumberConstructor::getConstructData): (KJS::NumberConstructor::construct): (KJS::NumberConstructor::callAsFunction):
- kjs/number_object.h:
- kjs/object.cpp: (KJS::JSObject::putDirectFunction):
- kjs/object.h:
- kjs/object_object.cpp: (KJS::ObjectConstructor::ObjectConstructor): (KJS::ObjectConstructor::getConstructData): (KJS::ObjectConstructor::construct): (KJS::ObjectConstructor::callAsFunction):
- kjs/object_object.h:
- kjs/regexp.cpp: (KJS::RegExp::RegExp):
- kjs/regexp_object.cpp: (KJS::regExpProtoFuncTest): (KJS::regExpProtoFuncExec): (KJS::regExpProtoFuncCompile): (KJS::regExpProtoFuncToString): (KJS::RegExpObject::RegExpObject): (KJS::RegExpObject::~RegExpObject): (KJS::RegExpObject::getOwnPropertySlot): (KJS::RegExpObject::getValueProperty): (KJS::RegExpObject::put): (KJS::RegExpObject::putValueProperty): (KJS::RegExpObject::match): (KJS::RegExpObject::test): (KJS::RegExpObject::exec): (KJS::RegExpObject::getCallData): (KJS::RegExpObject::callAsFunction): (KJS::RegExpConstructorPrivate::RegExpConstructorPrivate): (KJS::RegExpConstructor::RegExpConstructor): (KJS::RegExpConstructor::performMatch): (KJS::RegExpMatchesArray::RegExpMatchesArray): (KJS::RegExpMatchesArray::~RegExpMatchesArray): (KJS::RegExpMatchesArray::fillArrayInstance): (KJS::RegExpConstructor::arrayOfMatches): (KJS::RegExpConstructor::getBackref): (KJS::RegExpConstructor::getLastParen): (KJS::RegExpConstructor::getLeftContext): (KJS::RegExpConstructor::getRightContext): (KJS::RegExpConstructor::getOwnPropertySlot): (KJS::RegExpConstructor::getValueProperty): (KJS::RegExpConstructor::put): (KJS::RegExpConstructor::putValueProperty): (KJS::RegExpConstructor::getConstructData): (KJS::RegExpConstructor::construct): (KJS::RegExpConstructor::callAsFunction): (KJS::RegExpConstructor::input):
- kjs/regexp_object.h:
- kjs/string_object.cpp: (KJS::StringObject::StringObject): (KJS::StringObject::getOwnPropertySlot): (KJS::StringObject::put): (KJS::StringObject::deleteProperty): (KJS::StringObject::getPropertyNames): (KJS::StringPrototype::StringPrototype): (KJS::StringPrototype::getOwnPropertySlot): (KJS::replace): (KJS::stringProtoFuncToString): (KJS::stringProtoFuncValueOf): (KJS::stringProtoFuncCharAt): (KJS::stringProtoFuncCharCodeAt): (KJS::stringProtoFuncConcat): (KJS::stringProtoFuncIndexOf): (KJS::stringProtoFuncLastIndexOf): (KJS::stringProtoFuncMatch): (KJS::stringProtoFuncSearch): (KJS::stringProtoFuncReplace): (KJS::stringProtoFuncSlice): (KJS::stringProtoFuncSplit): (KJS::stringProtoFuncSubstr): (KJS::stringProtoFuncSubstring): (KJS::stringProtoFuncToLowerCase): (KJS::stringProtoFuncToUpperCase): (KJS::stringProtoFuncToLocaleLowerCase): (KJS::stringProtoFuncToLocaleUpperCase): (KJS::stringProtoFuncLocaleCompare): (KJS::stringProtoFuncBig): (KJS::stringProtoFuncSmall): (KJS::stringProtoFuncBlink): (KJS::stringProtoFuncBold): (KJS::stringProtoFuncFixed): (KJS::stringProtoFuncItalics): (KJS::stringProtoFuncStrike): (KJS::stringProtoFuncSub): (KJS::stringProtoFuncSup): (KJS::stringProtoFuncFontcolor): (KJS::stringProtoFuncFontsize): (KJS::stringProtoFuncAnchor): (KJS::stringProtoFuncLink): (KJS::StringConstructor::StringConstructor): (KJS::StringConstructor::getConstructData): (KJS::StringConstructor::construct): (KJS::StringConstructor::callAsFunction): (KJS::StringConstructorFunction::StringConstructorFunction): (KJS::StringConstructorFunction::callAsFunction):
- kjs/string_object.h: (KJS::StringObjectThatMasqueradesAsUndefined::StringObjectThatMasqueradesAsUndefined):
- profiler/Profiler.cpp: (KJS::createCallIdentifier):
WebCore:
2008-06-15 Darin Adler <Darin Adler>
Rubber stamped by Sam.
- cut down on confusing uses of "Object" and "Imp" in JavaScriptCore class names
- bindings/js/JSCSSStyleDeclarationCustom.cpp: (WebCore::JSCSSStyleDeclaration::nameGetter):
- bridge/qt/qt_runtime.cpp: (KJS::Bindings::valueRealType): (KJS::Bindings::convertValueToQVariant): (KJS::Bindings::convertQVariantToValue): (KJS::Bindings::QtRuntimeMethod::QtRuntimeMethod):
- bridge/qt/qt_runtime.h:
- bridge/runtime_method.cpp: (RuntimeMethod::RuntimeMethod): (RuntimeMethod::getOwnPropertySlot):
- bridge/runtime_method.h:
WebKitTools:
2008-06-15 Darin Adler <Darin Adler>
- Scripts/create-exports: Added.
- Scripts/do-file-rename: Added some planned renames.
- Scripts/do-webcore-rename: Updated for the latest round of renaming.
- 7:59 PM BuildingGtk edited by
- Note that API is now stable (diff)
- 7:37 PM Changeset in webkit [34579] by
-
- 3 edits2 adds in trunk
WebCore:
Reviewed by Darin Adler.
- fix <rdar://problem/5825683> Three slash URLs are modified by WebKit
Test: fast/loader/url-parse-1.html
URIs in which the scheme is followed by ":" are ambiguous, because
"" can be either the beginning of a net_path or the beginning of an
abs_path whose first path segment is empty. In the case of ":/", the
net_path interpretation is invalid, because the authority (the part
between the second and third slashes) cannot be empty. However, for
historical reasons, this is allowed in http:, https: and file: URLs,
in which an empty authority means the local host.
- platform/KURL.cpp: (WebCore::KURL::parse): Changed to interpret URLs in which the scheme is followed by ":/" as abs_path-only URLs, unless the scheme is http, https or file.
LayoutTests:
Reviewed by Darin Adler.
- test for <rdar://problem/5825683> Three slash URLs are modified by WebKit
- fast/loader/url-parse-1-expected.txt: Added.
- fast/loader/url-parse-1.html: Added.
- 7:19 PM Changeset in webkit [34578] by
-
- 42 edits in trunk
2008-06-15 Darin Adler <Darin Adler>
Rubber stamped by Sam.
- use JS prefix and simpler names for basic JavaScriptCore types, to complement JSValue and JSObject
- JavaScriptCore.exp:
- VM/Machine.cpp: (KJS::jsLess): (KJS::jsLessEq): (KJS::jsAdd): (KJS::callEval): (KJS::Machine::execute): (KJS::Machine::retrieveArguments): (KJS::Machine::retrieveCaller): (KJS::Machine::getCallFrame): (KJS::Machine::getFunctionAndArguments):
- VM/Machine.h:
- VM/Register.h:
- kjs/DebuggerCallFrame.cpp: (KJS::DebuggerCallFrame::functionName):
- kjs/ExecState.h:
- kjs/JSActivation.cpp: (KJS::JSActivation::createArgumentsObject):
- kjs/array_instance.cpp: (KJS::): (KJS::JSArray::checkConsistency): (KJS::JSArray::JSArray): (KJS::JSArray::~JSArray): (KJS::JSArray::getItem): (KJS::JSArray::lengthGetter): (KJS::JSArray::inlineGetOwnPropertySlot): (KJS::JSArray::getOwnPropertySlot): (KJS::JSArray::put): (KJS::JSArray::deleteProperty): (KJS::JSArray::getPropertyNames): (KJS::JSArray::increaseVectorLength): (KJS::JSArray::setLength): (KJS::JSArray::mark): (KJS::JSArray::sort): (KJS::JSArray::compactForSorting): (KJS::JSArray::lazyCreationData): (KJS::JSArray::setLazyCreationData):
- kjs/array_instance.h:
- kjs/array_object.cpp: (KJS::): (KJS::ArrayPrototype::ArrayPrototype): (KJS::ArrayPrototype::getOwnPropertySlot): (KJS::arrayProtoFuncToString): (KJS::arrayProtoFuncToLocaleString): (KJS::arrayProtoFuncConcat): (KJS::arrayProtoFuncSort): (KJS::ArrayObjectImp::construct):
- kjs/array_object.h:
- kjs/completion.h:
- kjs/function.cpp: (KJS::): (KJS::JSFunction::JSFunction): (KJS::JSFunction::mark): (KJS::JSFunction::getCallData): (KJS::JSFunction::callAsFunction): (KJS::JSFunction::argumentsGetter): (KJS::JSFunction::callerGetter): (KJS::JSFunction::lengthGetter): (KJS::JSFunction::getOwnPropertySlot): (KJS::JSFunction::put): (KJS::JSFunction::deleteProperty): (KJS::JSFunction::getParameterName): (KJS::JSFunction::getConstructData): (KJS::JSFunction::construct): (KJS::IndexToNameMap::IndexToNameMap): (KJS::Arguments::Arguments):
- kjs/function.h:
- kjs/function_object.cpp: (KJS::functionProtoFuncToString): (KJS::functionProtoFuncApply): (KJS::FunctionObjectImp::construct):
- kjs/internal.cpp: (KJS::JSString::toPrimitive): (KJS::JSString::getPrimitiveNumber): (KJS::JSString::toBoolean): (KJS::JSString::toNumber): (KJS::JSString::toString): (KJS::StringInstance::create): (KJS::JSString::toObject): (KJS::JSString::toThisObject): (KJS::JSString::lengthGetter): (KJS::JSString::indexGetter): (KJS::JSString::indexNumericPropertyGetter): (KJS::JSString::getOwnPropertySlot): (KJS::JSNumberCell::type): (KJS::JSNumberCell::toPrimitive): (KJS::JSNumberCell::getPrimitiveNumber): (KJS::JSNumberCell::toBoolean): (KJS::JSNumberCell::toNumber): (KJS::JSNumberCell::toString): (KJS::JSNumberCell::toObject): (KJS::JSNumberCell::toThisObject): (KJS::JSNumberCell::getUInt32): (KJS::JSNumberCell::getTruncatedInt32): (KJS::JSNumberCell::getTruncatedUInt32): (KJS::GetterSetter::mark): (KJS::GetterSetter::toPrimitive): (KJS::GetterSetter::getPrimitiveNumber): (KJS::GetterSetter::toBoolean): (KJS::GetterSetter::toNumber): (KJS::GetterSetter::toString): (KJS::GetterSetter::toObject): (KJS::GetterSetter::getOwnPropertySlot): (KJS::GetterSetter::put): (KJS::GetterSetter::toThisObject):
- kjs/internal.h: (KJS::JSString::JSString): (KJS::JSString::getStringPropertySlot):
- kjs/nodes.cpp: (KJS::FuncDeclNode::makeFunction): (KJS::FuncExprNode::makeFunction):
- kjs/nodes.h:
- kjs/object.cpp: (KJS::JSObject::put): (KJS::JSObject::deleteProperty): (KJS::JSObject::defineGetter): (KJS::JSObject::defineSetter): (KJS::JSObject::lookupGetter): (KJS::JSObject::lookupSetter): (KJS::JSObject::fillGetterPropertySlot):
- kjs/object.h: (KJS::): (KJS::GetterSetter::GetterSetter):
- kjs/operations.cpp: (KJS::equal): (KJS::strictEqual):
- kjs/property_map.cpp: (KJS::PropertyMap::containsGettersOrSetters):
- kjs/regexp_object.cpp: (KJS::RegExpMatchesArray::getOwnPropertySlot): (KJS::RegExpMatchesArray::put): (KJS::RegExpMatchesArray::deleteProperty): (KJS::RegExpMatchesArray::getPropertyNames): (KJS::RegExpMatchesArray::RegExpMatchesArray): (KJS::RegExpMatchesArray::fillArrayInstance):
- kjs/string_object.cpp: (KJS::StringInstance::StringInstance): (KJS::replace): (KJS::stringProtoFuncReplace): (KJS::stringProtoFuncToLowerCase): (KJS::stringProtoFuncToUpperCase): (KJS::stringProtoFuncToLocaleLowerCase): (KJS::stringProtoFuncToLocaleUpperCase):
- kjs/string_object.h: (KJS::StringInstance::internalValue):
- kjs/value.cpp: (KJS::JSCell::getNumber): (KJS::JSCell::getString): (KJS::JSCell::getObject): (KJS::jsString): (KJS::jsOwnedString):
- kjs/value.h: (KJS::JSNumberCell::JSNumberCell): (KJS::jsNumberCell): (KJS::JSValue::uncheckedGetNumber):
- profiler/Profiler.cpp: (KJS::createCallIdentifier): (KJS::createCallIdentifierFromFunctionImp):
WebCore:
2008-06-15 Darin Adler <Darin Adler>
Rubber stamped by Sam.
- use JS prefix and simpler names for basic JavaScriptCore types, to complement JSValue and JSObject
- bindings/js/JSNavigatorCustom.cpp: (WebCore::needsYouTubeQuirk):
- bindings/js/kjs_events.cpp: (WebCore::JSLazyEventListener::parseCode):
- bridge/jni/jni_utility.cpp: (KJS::Bindings::convertArrayInstanceToJavaArray): (KJS::Bindings::convertValueToJValue):
- bridge/qt/qt_runtime.cpp: (KJS::Bindings::valueRealType): (KJS::Bindings::convertValueToQVariant): (KJS::Bindings::QtConnectionObject::execute):
- bridge/runtime_array.cpp:
WebKit/mac:
2008-06-15 Darin Adler <Darin Adler>
Rubber stamped by Sam.
- use JS prefix and simpler names for basic JavaScriptCore types, to complement JSValue and JSObject
- WebView/WebView.mm: (aeDescFromJSValue):
WebKit/win:
2008-06-15 Darin Adler <Darin Adler>
Rubber stamped by Sam.
- use JS prefix and simpler names for basic JavaScriptCore types, to complement JSValue and JSObject
- WebScriptCallFrame.cpp: (WebScriptCallFrame::functionName):
WebKitTools:
2008-06-15 Darin Adler <Darin Adler>
- Scripts/do-webcore-rename: Updated for the latest round of renaming.
- 7:11 PM Changeset in webkit [34577] by
-
- 1 edit in trunk/configure.ac
Versioning.
- 6:53 PM ApplicationsGtk edited by
- Add Blam and ilcontrast (diff)
- 4:59 PM Changeset in webkit [34576] by
-
- 3 edits in trunk/JavaScriptCore
2008-06-15 Maciej Stachowiak <mjs@apple.com>
Reviewed by Alexey.
- add emitUnaryOp, emitNullaryOp and emitUnaryOpNoDst; use them
This removes some boilerplate code and also reduces the number of
places that will need to be changed to do on-demand emit of
loads (and thus support k operands).
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitUnaryOp): (KJS::CodeGenerator::emitNullaryOp): (KJS::CodeGenerator::emitUnaryOpNoDst): (KJS::CodeGenerator::emitPushScope):
- VM/CodeGenerator.h: (KJS::CodeGenerator::emitNewObject): (KJS::CodeGenerator::emitNewArray): (KJS::CodeGenerator::emitNot): (KJS::CodeGenerator::emitBitNot): (KJS::CodeGenerator::emitToJSNumber): (KJS::CodeGenerator::emitNegate): (KJS::CodeGenerator::emitInstanceOf): (KJS::CodeGenerator::emitTypeOf): (KJS::CodeGenerator::emitIn): (KJS::CodeGenerator::emitReturn): (KJS::CodeGenerator::emitEnd): (KJS::CodeGenerator::emitGetPropertyNames):
- 3:10 PM Changeset in webkit [34575] by
-
- 2 edits in trunk/WebCore
2008-06-15 Darin Adler <Darin Adler>
Reviewed by Mitz.
- fix https://bugs.webkit.org/show_bug.cgi?id=19556 REGRESSION (r34544): Crash while visiting bigglook.com
This fix eliminates the crash, but the logic remaining seems a little strange.
We create an IconRecord and then immediately destroy it. Worth taking another
look at this later.
- loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::setIconDataForIconURL): Added code to remove the icon just as in the other cases where we might be holding the single reference to it. (WebCore::IconDatabase::setIconURLForPageURL): Fixed comment typo. (WebCore::IconDatabase::writeToDatabase): Removed unused local variable.
- 2:53 PM Changeset in webkit [34574] by
-
- 32 edits3 adds in trunk
WebCore:
2008-06-15 Darin Adler <Darin Adler>
Reviewed and tweaked by Sam Weinig.
Fix for <rdar://problem/5908591>
https://bugs.webkit.org/show_bug.cgi?id=18743
Makes DOMImplementation per-document.
Test: http/tests/security/cross-frame-access-DOMImplementation.html
- bindings/objc/DOMImplementationFront.cpp: (WebCore::DOMImplementationFront::getInterface):
- bindings/objc/DOMImplementationFront.h:
- dom/DOMImplementation.cpp: (WebCore::DOMImplementation::hasFeature): (WebCore::DOMImplementation::createDocumentType): (WebCore::DOMImplementation::getInterface): (WebCore::DOMImplementation::createDocument): (WebCore::DOMImplementation::createHTMLDocument):
- dom/DOMImplementation.h: (WebCore::DOMImplementation::create):
- dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::implementation):
- dom/Document.h: (WebCore::Document::create): (WebCore::Document::createXHTML):
- dom/DocumentType.cpp:
- dom/DocumentType.h: (WebCore::DocumentType::create): (WebCore::DocumentType::entities): (WebCore::DocumentType::notations): (WebCore::DocumentType::name): (WebCore::DocumentType::publicId): (WebCore::DocumentType::systemId): (WebCore::DocumentType::internalSubset):
- dom/Node.cpp: (WebCore::Node::isSupported):
- dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::internalSubset):
- html/HTMLDocument.cpp: (WebCore::HTMLDocument::HTMLDocument):
- html/HTMLDocument.h: (WebCore::HTMLDocument::create): (WebCore::HTMLDocument::isHTMLDocument):
- html/HTMLParser.cpp: (WebCore::HTMLParser::parseDoctypeToken):
- html/HTMLViewSourceDocument.cpp: (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument): (WebCore::HTMLViewSourceDocument::createTokenizer):
- html/HTMLViewSourceDocument.h: (WebCore::HTMLViewSourceDocument::create):
- loader/CachedFont.cpp: (WebCore::CachedFont::ensureSVGFontData):
- loader/FTPDirectoryDocument.cpp: (WebCore::FTPDirectoryDocument::FTPDirectoryDocument):
- loader/FTPDirectoryDocument.h: (WebCore::FTPDirectoryDocument::create):
- loader/FrameLoader.cpp: (WebCore::FrameLoader::begin):
- loader/ImageDocument.cpp: (WebCore::ImageDocument::ImageDocument):
- loader/ImageDocument.h: (WebCore::ImageDocument::create): (WebCore::ImageDocument::isImageDocument):
- loader/PluginDocument.cpp: (WebCore::PluginDocument::PluginDocument):
- loader/PluginDocument.h: (WebCore::PluginDocument::create): (WebCore::PluginDocument::isPluginDocument):
- loader/TextDocument.cpp: (WebCore::TextTokenizer::checkBuffer): (WebCore::TextDocument::TextDocument): (WebCore::createTextTokenizer):
- loader/TextDocument.h: (WebCore::TextDocument::create):
- svg/SVGDocument.cpp: (WebCore::SVGDocument::SVGDocument):
- svg/SVGDocument.h: (WebCore::SVGDocument::create):
- svg/SVGElement.cpp: (WebCore::SVGElement::isSupported):
- svg/SVGTests.cpp: (WebCore::SVGTests::isValid):
- xml/DOMParser.cpp: (WebCore::DOMParser::parseFromString):
LayoutTests:
2008-06-15 Darin Adler <Darin Adler>
Reviewed and tweaked by Sam Weinig.
Test for <rdar://problem/5908591>
https://bugs.webkit.org/show_bug.cgi?id=18743
- http/tests/security/cross-frame-access-DOMImplementation-expected.txt: Added.
- http/tests/security/cross-frame-access-DOMImplementation.html: Added.
- http/tests/security/resources/cross-frame-iframe-for-DOMImplementation-test.html: Added.
- 12:47 PM Changeset in webkit [34573] by
-
- 1 edit1 copy in trunk/LayoutTests
Rubber-stamped by Sam Weinig.
- copy generic test results from r34449 to platform/win, because the Mac behavior is not shared by Windows.
- platform/win/editing/selection/drag-text-delay-expected.txt: Copied from LayoutTests/editing/selection/drag-text-delay-expected.txt.
- 12:41 PM Changeset in webkit [34572] by
-
- 1 edit1 copy in trunk/LayoutTests
- update Windows copy of generic test results for r34475
- platform/win/editing/selection/move-left-right-expected.txt: Replaced with LayoutTests/editing/selection/move-left-right-expected.txt.
- 7:40 AM Changeset in webkit [34571] by
-
- 2 edits in trunk/WebKit/gtk
[GTK] Property setters do not call g_object_notify()
https://bugs.webkit.org/show_bug.cgi?id=18405
Reviewed by Alp Toker.
- 7:06 AM Changeset in webkit [34570] by
-
- 2 edits in trunk/WebKit/gtk
Tiny documentation fix, s/capacity/limit
Reviewed by Alp Toker.
- 4:46 AM Changeset in webkit [34569] by
-
- 3 edits in trunk/WebCore
2008-06-15 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Mac build fix.
- WebCore.base.exp:
- WebCore.order:
- 4:46 AM Changeset in webkit [34568] by
-
- 4 edits in trunk
2008-06-15 Alp Toker <alp@nuanti.com>
Rubber-stamped by Maciej.
Install 'jsc' application by default.
- 3:59 AM Changeset in webkit [34567] by
-
- 2 edits in trunk/WebKit/win
2008-06-15 Maciej Stachowiak <mjs@apple.com>
Rubber stamped by Oliver.
- fix WebKit solution for testkjs --> jsc rename
- WebKit.vcproj/WebKit.sln:
- 3:55 AM Changeset in webkit [34566] by
-
- 13 edits1 copy4 moves1 add1 delete in trunk
2008-06-15 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- rename testkjs to jsc
- GNUmakefile.am:
- JavaScriptCore.vcproj/JavaScriptCore.sln:
- JavaScriptCore.vcproj/jsc: Added.
- JavaScriptCore.vcproj/jsc/jsc.vcproj: Copied from JavaScriptCore.vcproj/testkjs/testkjs.vcproj.
- JavaScriptCore.vcproj/testkjs: Removed.
- JavaScriptCore.vcproj/testkjs/testkjs.vcproj: Removed.
- JavaScriptCore.xcodeproj/project.pbxproj:
- jscore.bkl:
- kjs/Shell.cpp: Copied from kjs/testkjs.cpp. (main): (printUsageStatement): (jscmain):
- kjs/jsc.pro: Copied from kjs/testkjs.pro.
- kjs/testkjs.cpp: Removed.
- kjs/testkjs.pro: Removed.
- tests/mozilla/expected.html:
- tests/mozilla/js1_2/Array/tostring_1.js:
- tests/mozilla/js1_2/Array/tostring_2.js:
- tests/mozilla/jsDriver.pl:
WebKitTools:
2008-06-15 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- rename testkjs to jsc
- Scripts/build-jsc: Copied from Scripts/build-testkjs.
- Scripts/build-testkjs: Removed.
- Scripts/run-javascriptcore-tests:
- Scripts/run-jsc: Copied from Scripts/run-testkjs.
- Scripts/run-sunspider:
- Scripts/run-testkjs: Removed.
- Scripts/sunspider-compare-results:
- 3:38 AM Changeset in webkit [34565] by
-
- 3 edits in trunk/JavaScriptCore
2008-06-15 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Mac build fix.
- JavaScriptCore.xcodeproj/project.pbxproj:
- kjs/nodes.h:
- 2:55 AM Changeset in webkit [34564] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-15 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Change the spelling of PrecMultiplicitave to PrecMultiplicative.
- kjs/nodes.h: (KJS::): (KJS::MultNode::precedence): (KJS::DivNode::precedence): (KJS::ModNode::precedence):
- 2:40 AM Changeset in webkit [34563] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-15 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Remove unused preprocessor macros related to exceptions in the old
interpreter.
- kjs/nodes.cpp:
- 2:30 AM Changeset in webkit [34562] by
-
- 10 edits in trunk
2008-06-15 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Bug 19484: More instructions needs to use temporary registers
<https://bugs.webkit.org/show_bug.cgi?id=19484>
Fix codegen for all binary operations so that temporaries are used if
necessary. This was done by making BinaryOpNode and ReverseBinaryOpNode
subclasses of ExpressionNode, and eliminating the custom emitCode()
methods for the individual node classes.
This only adds 3 new instructions to SunSpider code, and there is no
difference in SunSpider execution time.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitBitNot): (KJS::CodeGenerator::emitBinaryOp):
- VM/CodeGenerator.h:
- kjs/grammar.y:
- kjs/nodes.cpp: (KJS::PreIncResolveNode::emitCode): (KJS::PreDecResolveNode::emitCode): (KJS::BinaryOpNode::emitCode): (KJS::ReverseBinaryOpNode::emitCode): (KJS::emitReadModifyAssignment): (KJS::CaseBlockNode::emitCodeForBlock):
- kjs/nodes.h: (KJS::BinaryOpNode::BinaryOpNode): (KJS::ReverseBinaryOpNode::ReverseBinaryOpNode): (KJS::MultNode::): (KJS::DivNode::): (KJS::DivNode::precedence): (KJS::ModNode::): (KJS::ModNode::precedence): (KJS::AddNode::): (KJS::AddNode::precedence): (KJS::SubNode::): (KJS::SubNode::precedence): (KJS::LeftShiftNode::): (KJS::LeftShiftNode::precedence): (KJS::RightShiftNode::): (KJS::RightShiftNode::precedence): (KJS::UnsignedRightShiftNode::): (KJS::UnsignedRightShiftNode::precedence): (KJS::LessNode::): (KJS::LessNode::precedence): (KJS::GreaterNode::): (KJS::GreaterNode::precedence): (KJS::LessEqNode::): (KJS::LessEqNode::precedence): (KJS::GreaterEqNode::): (KJS::GreaterEqNode::precedence): (KJS::InstanceOfNode::): (KJS::InstanceOfNode::precedence): (KJS::InNode::): (KJS::InNode::precedence): (KJS::EqualNode::): (KJS::EqualNode::precedence): (KJS::NotEqualNode::): (KJS::NotEqualNode::precedence): (KJS::StrictEqualNode::): (KJS::StrictEqualNode::precedence): (KJS::NotStrictEqualNode::): (KJS::NotStrictEqualNode::precedence): (KJS::BitAndNode::): (KJS::BitAndNode::precedence): (KJS::BitOrNode::): (KJS::BitOrNode::precedence): (KJS::BitXOrNode::): (KJS::BitXOrNode::precedence):
- kjs/nodes2string.cpp: (KJS::LessNode::streamTo): (KJS::GreaterNode::streamTo): (KJS::LessEqNode::streamTo): (KJS::GreaterEqNode::streamTo): (KJS::InstanceOfNode::streamTo): (KJS::InNode::streamTo): (KJS::EqualNode::streamTo): (KJS::NotEqualNode::streamTo): (KJS::StrictEqualNode::streamTo): (KJS::NotStrictEqualNode::streamTo): (KJS::BitAndNode::streamTo): (KJS::BitXOrNode::streamTo): (KJS::BitOrNode::streamTo):
LayoutTests:
- fast/js/codegen-temporaries-expected.txt:
- fast/js/resources/codegen-temporaries.js:
- 12:00 AM Changeset in webkit [34561] by
-
- 85 edits4 moves in trunk
WebCore:
2008-06-14 Darin Adler <Darin Adler>
Rubber stamped by Sam.
- new names for kjs_binding.h and kjs_proxy.h
- GNUmakefile.am:
- WebCore.pro:
- WebCore.vcproj/WebCore.vcproj:
- WebCore.xcodeproj/project.pbxproj:
- WebCoreSources.bkl:
- bindings/js/JSAudioConstructor.h:
- bindings/js/JSCustomSQLStatementCallback.cpp:
- bindings/js/JSCustomSQLStatementErrorCallback.cpp:
- bindings/js/JSCustomSQLTransactionCallback.cpp:
- bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
- bindings/js/JSCustomVoidCallback.cpp:
- bindings/js/JSCustomXPathNSResolver.cpp:
- bindings/js/JSDOMBinding.cpp: Copied from WebCore/bindings/js/kjs_binding.cpp.
- bindings/js/JSDOMBinding.h: Copied from WebCore/bindings/js/kjs_binding.h.
- bindings/js/JSDOMWindowBase.cpp:
- bindings/js/JSDOMWindowBase.h:
- bindings/js/JSDOMWindowCustom.cpp:
- bindings/js/JSDOMWindowShell.cpp:
- bindings/js/JSDOMWindowShell.h:
- bindings/js/JSDocumentCustom.cpp:
- bindings/js/JSHTMLCollectionCustom.cpp:
- bindings/js/JSHTMLFrameElementCustom.cpp:
- bindings/js/JSHTMLFrameSetElementCustom.cpp:
- bindings/js/JSHTMLIFrameElementCustom.cpp:
- bindings/js/JSHTMLInputElementBase.h:
- bindings/js/JSHTMLOptionElementConstructor.h:
- bindings/js/JSImageConstructor.h:
- bindings/js/JSLocationCustom.cpp:
- bindings/js/JSNamedNodeMapCustom.cpp:
- bindings/js/JSNamedNodesCollection.h:
- bindings/js/JSNodeFilterCondition.cpp:
- bindings/js/JSNodeFilterCustom.cpp:
- bindings/js/JSRGBColor.h:
- bindings/js/JSSVGPathSegCustom.cpp:
- bindings/js/JSXMLHttpRequestConstructor.h:
- bindings/js/JSXSLTProcessorConstructor.h:
- bindings/js/JSXSLTProcessorCustom.cpp:
- bindings/js/ScheduledAction.cpp: (WebCore::ScheduledAction::execute):
- bindings/js/ScriptController.cpp: Copied from WebCore/bindings/js/kjs_proxy.cpp.
- bindings/js/ScriptController.h: Copied from WebCore/bindings/js/kjs_proxy.h.
- bindings/js/kjs_binding.cpp: Removed.
- bindings/js/kjs_binding.h: Removed.
- bindings/js/kjs_events.cpp: (WebCore::JSAbstractEventListener::handleEvent):
- bindings/js/kjs_html.cpp:
- bindings/js/kjs_html.h:
- bindings/js/kjs_proxy.cpp: Removed.
- bindings/js/kjs_proxy.h: Removed.
- bindings/objc/DOMInternal.mm:
- bindings/scripts/CodeGeneratorJS.pm:
- bridge/jni/jni_jsobject.mm:
- dom/Document.cpp:
- dom/EventTarget.cpp:
- dom/Node.cpp:
- dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::startElementNs):
- history/CachedPage.cpp: (WebCore::CachedPage::CachedPage): (WebCore::CachedPage::restore):
- html/HTMLPlugInElement.cpp:
- html/HTMLScriptElement.cpp:
- html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::processToken):
- loader/FrameLoader.cpp: (WebCore::FrameLoader::executeScript):
- page/Frame.cpp: (WebCore::Frame::scriptProxy):
- page/Frame.h:
- page/FramePrivate.h:
- page/InspectorController.cpp:
- page/JavaScriptDebugServer.cpp:
- page/JavaScriptProfileNode.cpp:
- page/Page.cpp:
- page/gtk/FrameGtk.cpp:
- page/mac/FrameMac.mm:
- page/qt/FrameQt.cpp:
- page/win/FrameWin.cpp:
- plugins/PluginView.cpp: (WebCore::getString):
- plugins/gtk/PluginViewGtk.cpp:
- plugins/qt/PluginViewQt.cpp:
- plugins/win/PluginViewWin.cpp:
- svg/SVGDocumentExtensions.cpp:
- xml/XMLHttpRequest.cpp:
WebKit/gtk:
2008-06-14 Darin Adler <Darin Adler>
Rubber stamped by Sam.
- new names for kjs_binding.h and kjs_proxy.h
- WebCoreSupport/FrameLoaderClientGtk.cpp:
- webkit/webkitwebframe.cpp:
WebKit/mac:
2008-06-14 Darin Adler <Darin Adler>
Rubber stamped by Sam.
- new names for kjs_binding.h and kjs_proxy.h
- WebView/WebFrame.mm:
- WebView/WebScriptDebugDelegate.mm:
- WebView/WebView.mm:
WebKit/qt:
2008-06-14 Darin Adler <Darin Adler>
Rubber stamped by Sam.
- new names for kjs_binding.h and kjs_proxy.h
- Api/qwebframe.cpp: (QWebFrame::evaluateJavaScript):
- WebKit_pch.h:
WebKit/win:
2008-06-14 Darin Adler <Darin Adler>
Rubber stamped by Sam.
- new names for kjs_binding.h and kjs_proxy.h
- WebFrame.cpp:
WebKit/wx:
2008-06-14 Darin Adler <Darin Adler>
Rubber stamped by Sam.
- new names for kjs_binding.h and kjs_proxy.h
- WebView.cpp:
WebKitTools:
2008-06-14 Darin Adler <Darin Adler>
- Scripts/do-webcore-rename: Moved planned renames into a separate hash from the actual renames. Removed many renames that are either done or no longer planned.
Jun 14, 2008:
- 11:23 PM Changeset in webkit [34560] by
-
- 4 edits in trunk/JavaScriptCore
2008-06-14 Darin Adler <Darin Adler>
Rubber stamped by Sam.
- rename a bunch of local symbols within the regular expression code to follow our usual coding style, and do a few other name tweaks
- pcre/pcre_compile.cpp: (CompileData::CompileData): (checkEscape): (readRepeatCounts): (compileBranch): (compileBracket): (calculateCompiledPatternLength): (returnError): (jsRegExpCompile):
- pcre/pcre_exec.cpp: (MatchStack::MatchStack): (MatchStack::canUseStackBufferForNextFrame): (MatchStack::popCurrentFrame): (match): (tryFirstByteOptimization): (tryRequiredByteOptimization): (jsRegExpExecute):
- pcre/pcre_internal.h:
- 11:09 PM Changeset in webkit [34559] by
-
- 35 edits2 moves in trunk
WebCore:
2008-06-14 Darin Adler <Darin Adler>
Rubber stamped by Sam.
- renamed HTMLGenericFormElement to HTMLFormControlElement
- GNUmakefile.am:
- WebCore.pro:
- WebCore.vcproj/WebCore.vcproj:
- WebCore.xcodeproj/project.pbxproj:
- WebCoreSources.bkl:
- html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::HTMLButtonElement): (WebCore::HTMLButtonElement::parseMappedAttribute): (WebCore::HTMLButtonElement::defaultEventHandler):
- html/HTMLButtonElement.h:
- html/HTMLFieldSetElement.cpp: (WebCore::HTMLFieldSetElement::HTMLFieldSetElement):
- html/HTMLFieldSetElement.h:
- html/HTMLFormCollection.cpp: (WebCore::HTMLFormCollection::item): (WebCore::HTMLFormCollection::getNamedFormItem): (WebCore::HTMLFormCollection::updateNameCache):
- html/HTMLFormControlElement.cpp: Copied from WebCore/html/HTMLGenericFormElement.cpp.
- html/HTMLFormControlElement.h: Copied from WebCore/html/HTMLGenericFormElement.h.
- html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::formData): (WebCore::HTMLFormElement::submit): (WebCore::HTMLFormElement::formElementIndex): (WebCore::HTMLFormElement::registerFormElement): (WebCore::HTMLFormElement::removeFormElement): (WebCore::HTMLFormElement::elementForAlias): (WebCore::HTMLFormElement::addElementAlias): (WebCore::HTMLFormElement::getNamedElements): (WebCore::HTMLFormElement::CheckedRadioButtons::addButton): (WebCore::HTMLFormElement::CheckedRadioButtons::removeButton):
- html/HTMLFormElement.h:
- html/HTMLGenericFormElement.cpp: Removed.
- html/HTMLGenericFormElement.h: Removed.
- html/HTMLInputElement.h:
- html/HTMLIsIndexElement.cpp: (WebCore::HTMLIsIndexElement::parseMappedAttribute):
- html/HTMLKeygenElement.cpp: (WebCore::HTMLKeygenElement::parseMappedAttribute):
- html/HTMLLegendElement.cpp: (WebCore::HTMLLegendElement::HTMLLegendElement):
- html/HTMLLegendElement.h:
- html/HTMLOptGroupElement.cpp: (WebCore::HTMLOptGroupElement::HTMLOptGroupElement): (WebCore::HTMLOptGroupElement::insertBefore): (WebCore::HTMLOptGroupElement::replaceChild): (WebCore::HTMLOptGroupElement::removeChild): (WebCore::HTMLOptGroupElement::appendChild): (WebCore::HTMLOptGroupElement::removeChildren): (WebCore::HTMLOptGroupElement::childrenChanged): (WebCore::HTMLOptGroupElement::parseMappedAttribute): (WebCore::HTMLOptGroupElement::attach): (WebCore::HTMLOptGroupElement::detach):
- html/HTMLOptGroupElement.h:
- html/HTMLOptionElement.cpp: (WebCore::HTMLOptionElement::HTMLOptionElement): (WebCore::HTMLOptionElement::attach): (WebCore::HTMLOptionElement::detach): (WebCore::HTMLOptionElement::parseMappedAttribute): (WebCore::HTMLOptionElement::childrenChanged): (WebCore::HTMLOptionElement::disabled): (WebCore::HTMLOptionElement::insertedIntoDocument):
- html/HTMLOptionElement.h:
- html/HTMLSelectElement.h:
- html/HTMLTextAreaElement.h:
- page/Frame.cpp: (WebCore::scanForForm): (WebCore::Frame::currentForm):
- page/mac/FrameMac.mm:
- rendering/RenderFieldset.cpp: (WebCore::RenderFieldset::RenderFieldset):
- rendering/RenderFieldset.h:
- rendering/RenderLegend.cpp: (WebCore::RenderLegend::RenderLegend):
- rendering/RenderLegend.h:
- rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::createInnerTextStyle): (WebCore::RenderTextControl::updateFromElement): (WebCore::RenderTextControl::subtreeHasChanged): (WebCore::RenderTextControl::selectionChanged):
WebKit/mac:
2008-06-14 Darin Adler <Darin Adler>
Rubber stamped by Sam.
- renamed HTMLGenericFormElement to HTMLFormControlElement
- WebView/WebHTMLRepresentation.mm: (-[WebHTMLRepresentation elementWithName:inForm:]): (-[WebHTMLRepresentation controlsInForm:]):
WebKit/win:
2008-06-14 Darin Adler <Darin Adler>
Rubber stamped by Sam.
- renamed HTMLGenericFormElement to HTMLFormControlElement
- WebFrame.cpp: (WebFrame::elementWithName): (WebFrame::controlsInForm):
- 10:56 PM Changeset in webkit [34558] by
-
- 5 edits in trunk/WebKit
../win:
2008-06-14 Darin Adler <Darin Adler>
- try to fix Windows build, again
- WebFrame.cpp: (WebFrame::dispatchDecidePolicyForNewWindowAction): Fix arguments. Pass form. (WebFrame::dispatchDecidePolicyForNavigationAction): Ditto.
- WebFrame.h: Fix arguments.
../wx:
2008-06-14 Darin Adler <Darin Adler>
- try to fix wx build, again
- WebView.cpp: (wxWebView::Create): Use create function instead of new.
- 10:54 PM Changeset in webkit [34557] by
-
- 2 edits in trunk/WebCore
2008-06-14 Sam Weinig <sam@webkit.org>
Windows build fix.
- bindings/scripts/CodeGeneratorCOM.pm:
- 10:31 PM Changeset in webkit [34556] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-14 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Darin.
Remove redundant uses of get().
- kjs/nodes.cpp: (KJS::BracketAccessorNode::emitCode): (KJS::AddNode::emitCode): (KJS::SubNode::emitCode): (KJS::ReadModifyResolveNode::emitCode): (KJS::AssignDotNode::emitCode): (KJS::ReadModifyDotNode::emitCode): (KJS::AssignBracketNode::emitCode): (KJS::ReadModifyBracketNode::emitCode):
- 10:24 PM Changeset in webkit [34555] by
-
- 5 edits in trunk/JavaScriptCore
2008-06-14 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Make code generation not use a temporary for the left-hand side of an
expression if the right-hand side is a local variable.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::isLocal):
- VM/CodeGenerator.h: (KJS::CodeGenerator::leftHandSideNeedsCopy): (KJS::CodeGenerator::emitNodeForLeftHandSide):
- kjs/nodes.cpp: (KJS::ResolveNode::isPure): (KJS::BracketAccessorNode::emitCode): (KJS::AddNode::emitCode): (KJS::SubNode::emitCode): (KJS::ReadModifyResolveNode::emitCode): (KJS::AssignDotNode::emitCode): (KJS::ReadModifyDotNode::emitCode): (KJS::AssignBracketNode::emitCode): (KJS::ReadModifyBracketNode::emitCode):
- kjs/nodes.h: (KJS::ExpressionNode::): (KJS::BooleanNode::): (KJS::NumberNode::): (KJS::StringNode::):
- 9:59 PM Changeset in webkit [34554] by
-
- 3 edits in trunk/WebCore
2008-06-14 Darin Adler <Darin Adler>
- more build fixing
- platform/gtk/DragDataGtk.cpp: Added missing header.
- platform/wx/DragDataWx.cpp: Ditto.
- 9:56 PM Changeset in webkit [34553] by
-
- 4 edits in trunk/WebKit/win
2008-06-14 Darin Adler <Darin Adler>
- try to fix Windows build
- WebActionPropertyBag.cpp: (WebActionPropertyBag::Read): Use IDOMNode, not IHTMLFormElement.
- WebFrame.h: Added missing FormState arguments.
- WebScrollBar.cpp: (WebScrollBar::init): Use create instead of new.
- 9:40 PM Changeset in webkit [34552] by
-
- 3 edits in trunk/WebCore
2008-06-14 Darin Adler <Darin Adler>
Reviewed by Sam.
- fix https://bugs.webkit.org/show_bug.cgi?id=19544 DashboardRegion pieces are leaking
My recent change introduced a leak of objects owned by each DashboardRegion,
because I made ~Rect non-virtual. By using a separate RefCounted class for
each of Rect and DashboardRegion, the leak is gone. It's not clear if the
DashboardRegion class should really exist -- it doesn't have a DOM binding,
so it could conceivably be removed some day.
- css/DashboardRegion.h: Derive from RectBase instead of from Rect.
- css/Rect.h: Added RectBase. Changed Rect to derive from RectBase.
- 9:32 PM Changeset in webkit [34551] by
-
- 9 edits in trunk/WebCore
2008-06-14 Darin Adler <Darin Adler>
Reviewed by Sam.
- https://bugs.webkit.org/show_bug.cgi?id=19545 use PassRefPtr, not RefPtr, for return values
- css/CSSParser.cpp: (WebCore::CSSParser::parseGradient): Call release() when assigning result to avoid a little bit of refcount churn.
- css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::styleRulesForElement): Changed return value to PassRefPtr. (WebCore::CSSStyleSelector::pseudoStyleRulesForElement): Ditto.
- css/CSSStyleSelector.h: Ditto.
- svg/SVGElementInstanceList.cpp: (WebCore::SVGElementInstanceList::length): Tweaked formatting. (WebCore::SVGElementInstanceList::item): Changed return value to raw pointer.
- svg/SVGElementInstanceList.h: Ditto.
- xml/XSLTProcessor.cpp: (WebCore::XSLTProcessor::createDocumentFromSource): Changed return value to PassRefPtr. (WebCore::XSLTProcessor::transformToDocument): Ditto. (WebCore::XSLTProcessor::transformToFragment): Ditto.
- xml/XSLTProcessor.h: Ditto.
- 9:30 PM Changeset in webkit [34550] by
-
- 2 edits in trunk/WebCore
2008-06-14 Darin Adler <Darin Adler>
- try to fix the gtk build
- platform/gtk/DragDataGtk.cpp: (WebCore::DragData::createClipboard): Changed return type to PassRefPtr.
- 9:28 PM Changeset in webkit [34549] by
-
- 2 edits in trunk/WebCore
2008-06-14 Darin Adler <Darin Adler>
- another try at fixing the wx build
- platform/wx/DragDataWx.cpp: (WebCore::DragData::createClipboard): Changed return type to PassRefPtr.
- 9:23 PM Changeset in webkit [34548] by
-
- 2 edits in trunk/WebCore
2008-06-14 Darin Adler <Darin Adler>
- try to fix Windows build
- svg/graphics/SVGImageEmptyClients.h: Added missing include.
- 8:58 PM Changeset in webkit [34547] by
-
- 2 edits in trunk/WebCore
2008-06-14 Darin Adler <Darin Adler>
- fix wx build
- platform/wx/TemporaryLinkStubs.cpp: Removed unneeded Icon constructor.
- 8:53 PM Changeset in webkit [34546] by
-
- 2 edits in trunk/WebKit/qt
2008-06-14 Darin Adler <Darin Adler>
- fix build
- Api/qwebframe.cpp: (QWebFramePrivate::init): Added a missing semicolon.
- 8:52 PM Changeset in webkit [34545] by
-
- 2 edits in trunk/WebKit/gtk
2008-06-14 Darin Adler <Darin Adler>
- fix build
- webkit/webkitwebframe.cpp: Remove a bogus release() call.
- 8:41 PM Changeset in webkit [34544] by
-
- 88 edits in trunk
2008-06-14 Darin Adler <Darin Adler>
Reviewed by Sam.
- more of https://bugs.webkit.org/show_bug.cgi?id=17257 start ref counts at 1 instead of 0 for speed
- kjs/nodes.cpp: (KJS::ParserRefCounted::hasOneRef): Added. Replaces refcount.
- kjs/nodes.h: Replaced refcount with hasOneRef.
- wtf/ListRefPtr.h: (WTF::ListRefPtr::~ListRefPtr): Changed to use hasOneRef instead of refcount, so this class can be used with the RefCounted template.
- wtf/RefCounted.h: (WTF::RefCounted::hasOneRef): Made const, since there's no reason for it to be non-const.
WebCore:
2008-06-14 Darin Adler <Darin Adler>
Reviewed by Sam.
- more work on https://bugs.webkit.org/show_bug.cgi?id=17257 start ref counts at 1 instead of 0 for speed
- WebCore.base.exp: Added some new exports needed for functions that are now non-virtual.
- WebCore.xcodeproj/project.pbxproj: Moved the "icon" group to the correct location in the project. Before it was inside "appcache"!
- css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty):
- dom/Clipboard.cpp: (WebCore::Clipboard::Clipboard):
- editing/mac/EditorMac.mm: (WebCore::Editor::newGeneralClipboard):
- editing/qt/EditorQt.cpp: (WebCore::Editor::newGeneralClipboard):
- editing/wx/EditorWx.cpp: (WebCore::Editor::newGeneralClipboard):
- loader/DocumentLoader.cpp: (WebCore::DocumentLoader::DocumentLoader):
- loader/DocumentLoader.h: (WebCore::DocumentLoader::create):
- loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::defaultIcon): (WebCore::IconDatabase::setIconDataForIconURL): (WebCore::IconDatabase::setIconURLForPageURL): (WebCore::IconDatabase::getOrCreateIconRecord): (WebCore::IconDatabase::performURLImport):
- loader/icon/IconDatabase.h:
- loader/icon/IconRecord.cpp: (WebCore::IconRecord::IconRecord):
- loader/icon/IconRecord.h: (WebCore::IconRecord::create):
- page/EventHandler.h:
- page/Frame.cpp: (WebCore::Frame::Frame):
- page/Frame.h: (WebCore::Frame::create):
- page/gtk/EventHandlerGtk.cpp: (WebCore::EventHandler::createDraggingClipboard):
- page/mac/EventHandlerMac.mm: (WebCore::EventHandler::createDraggingClipboard):
- page/qt/EventHandlerQt.cpp: (WebCore::EventHandler::createDraggingClipboard):
- page/win/EventHandlerWin.cpp: (WebCore::EventHandler::createDraggingClipboard):
- page/wx/EventHandlerWx.cpp: (WebCore::EventHandler::createDraggingClipboard):
- platform/Cursor.h: (WebCore::SharedCursor::create): (WebCore::SharedCursor::~SharedCursor): (WebCore::SharedCursor::SharedCursor):
- platform/DragData.h:
- platform/PopupMenu.h: (WebCore::PopupMenu::create): (WebCore::PopupMenu::isActive):
- platform/ScrollBar.cpp: (WebCore::Scrollbar::Scrollbar):
- platform/SearchPopupMenu.h: (WebCore::SearchPopupMenu::create):
- platform/graphics/FontFamily.cpp: (WebCore::FontFamily::FontFamily): (WebCore::operator==):
- platform/graphics/FontFamily.h: (WebCore::FontFamily::FontFamily): (WebCore::SharedFontFamily::create): (WebCore::SharedFontFamily::SharedFontFamily): (WebCore::operator!=): (WebCore::FontFamily::next): (WebCore::FontFamily::appendFamily): (WebCore::FontFamily::releaseNext):
- platform/graphics/Icon.h:
- platform/graphics/gtk/IconGtk.cpp: (WebCore::Icon::Icon): (WebCore::Icon::~Icon): (WebCore::Icon::newIconForFile):
- platform/graphics/mac/IconMac.mm: (WebCore::Icon::Icon): (WebCore::Icon::newIconForFile):
- platform/graphics/qt/IconQt.cpp: (WebCore::Icon::Icon): (WebCore::Icon::newIconForFile):
- platform/graphics/win/IconWin.cpp: (WebCore::Icon::Icon): (WebCore::Icon::~Icon): (WebCore::Icon::newIconForFile):
- platform/gtk/ClipboardGtk.cpp: (WebCore::Editor::newGeneralClipboard):
- platform/gtk/ClipboardGtk.h: (WebCore::ClipboardGtk::create):
- platform/gtk/PlatformScrollBar.h: (WebCore::PlatformScrollbar::create):
- platform/gtk/PopupMenuGtk.cpp: (WebCore::PopupMenu::PopupMenu):
- platform/gtk/ScrollViewGtk.cpp: (WebCore::ScrollViewScrollbar::create): (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar): (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
- platform/mac/ClipboardMac.h: (WebCore::ClipboardMac::create):
- platform/mac/DragDataMac.mm: (WebCore::DragData::createClipboard): (WebCore::DragData::containsCompatibleContent):
- platform/mac/PlatformScrollBar.h: (WebCore::PlatformScrollbar::create): (WebCore::PlatformScrollbar::horizontalScrollbarHeight): (WebCore::PlatformScrollbar::verticalScrollbarWidth):
- platform/mac/PopupMenuMac.mm: (WebCore::PopupMenu::PopupMenu):
- platform/qt/ClipboardQt.h: (WebCore::ClipboardQt::create):
- platform/qt/DragDataQt.cpp: (WebCore::DragData::createClipboard):
- platform/qt/PlatformScrollBar.h: (WebCore::PlatformScrollbar::create):
- platform/qt/PopupMenuQt.cpp: (WebCore::PopupMenu::PopupMenu):
- platform/qt/ScrollViewQt.cpp: (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar): (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
- platform/win/ClipboardWin.h: (WebCore::ClipboardWin::create):
- platform/win/CursorWin.cpp: (WebCore::Cursor::Cursor): (WebCore::loadSharedCursor):
- platform/win/DragDataWin.cpp: (WebCore::DragData::createClipboard):
- platform/win/EditorWin.cpp: (WebCore::Editor::newGeneralClipboard):
- platform/win/PlatformScrollBar.h: (WebCore::PlatformScrollbar::create):
- platform/win/PopupMenuWin.cpp: (WebCore::PopupMenu::PopupMenu): (WebCore::PopupMenu::show):
- platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar): (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
- platform/wx/ClipboardWx.h: (WebCore::ClipboardWx::create):
- platform/wx/PlatformScrollBar.h: (WebCore::PlatformScrollbar::create):
- platform/wx/PopupMenuWx.cpp: (WebCore::PopupMenu::PopupMenu):
- platform/wx/TemporaryLinkStubs.cpp: (Icon::Icon): (Icon::newIconForFile):
- rendering/RenderLayer.cpp: (WebCore::RenderLayer::createScrollbar):
- rendering/RenderListBox.cpp: (WebCore::RenderListBox::updateFromElement):
- svg/graphics/SVGImage.cpp: (WebCore::SVGImage::dataChanged):
- svg/graphics/SVGImageEmptyClients.h: (WebCore::SVGEmptyFrameLoaderClient::createDocumentLoader):
WebKit/gtk:
2008-06-14 Darin Adler <Darin Adler>
Reviewed by Sam.
- more https://bugs.webkit.org/show_bug.cgi?id=17257 start ref counts at 1 instead of 0 for speed
- WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::createDocumentLoader): Use create instead of new.
- webkit/webkitwebframe.cpp: (webkit_web_frame_new): Ditto. (webkit_web_frame_init_with_web_view): Ditto.
WebKit/mac:
2008-06-14 Darin Adler <Darin Adler>
Reviewed by Sam.
- more of https://bugs.webkit.org/show_bug.cgi?id=17257 start ref counts at 1 instead of 0 for speed
- WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::createDocumentLoader): Use create instead of new. (WebFrameLoaderClient::createFrame): Remove now-obsolete adoptRef that was balanced by a ref call inside the Frame constructor. The lifetime rules for Frame are now the conventional ones without a special case.
- WebView/WebDataSource.mm: (-[WebDataSource _initWithDocumentLoader:]): Changed argument to be a PassRefPtr, since this function takes ownership of the DocumentLoader. (-[WebDataSource initWithRequest:]): Use create instead of new.
- WebView/WebDataSourceInternal.h: Changed _initWithDocumentLoader argument to be a PassRefPtr and also cleaned up the header a bit.
- WebView/WebDocumentLoaderMac.h: (WebDocumentLoaderMac::create): Added. Also made the constructor and a couple of virtual functions private.
- WebView/WebFrame.mm: (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]): Use create instead of new.
WebKit/qt:
2008-06-14 Darin Adler <Darin Adler>
Reviewed by Sam.
- more https://bugs.webkit.org/show_bug.cgi?id=17257 start ref counts at 1 instead of 0 for speed
- Api/qwebframe.cpp: (QWebFramePrivate::init): Use create instead of new.
- WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::createDocumentLoader): Ditto.
WebKit/win:
2008-06-14 Darin Adler <Darin Adler>
Reviewed by Sam.
- more of https://bugs.webkit.org/show_bug.cgi?id=17257 start ref counts at 1 instead of 0 for speed
- WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::createFrame): Remove now-obsolete adoptRef that was balanced by a ref call inside the Frame constructor. The lifetime rules for Frame are now the conventional ones without a special case.
- WebFrame.cpp: (WebFrame::init): Renamed function from initWithWebFrameView and removed the unused IWebFrameView argument (every caller was passing 0). Also changed this to return the WebCore Frame object, which is needed to straighten out the lifetime and ownership issues.
- WebFrame.h: Ditto.
- WebView.cpp: (WebView::initWithFrame): Changed to call new init function and use the return value.
WebKit/wx:
2008-06-14 Darin Adler <Darin Adler>
Reviewed by Sam.
- more https://bugs.webkit.org/show_bug.cgi?id=17257 start ref counts at 1 instead of 0 for speed
- WebKitSupport/FrameLoaderClientWx.cpp: (WebCore::FrameLoaderClientWx::createDocumentLoader): Use create function instead of new.
LayoutTests:
2008-06-14 Darin Adler <Darin Adler>
Reviewed by Maciej.
- test for https://bugs.webkit.org/show_bug.cgi?id=19538 <rdar://problem/5957595> Reading transition property from the style JS gives the wrong value
- fast/dom/CSSStyleDeclaration/resources/transition-property-names.js: Added.
- fast/dom/CSSStyleDeclaration/transition-property-names-expected.txt: Added.
- fast/dom/CSSStyleDeclaration/transition-property-names.html: Added.
- 7:03 PM Changeset in webkit [34543] by
-
- 13 edits2 copies2 adds in trunk
WebCore:
2008-06-14 Sam Weinig <sam@webkit.org>
Reviewed by Dan Bernstein.
Fix for <rdar://problem/5775192>
insertAdjacentHTML and insertAdjacentText are not implemented although insertAdjacentElement is.
- Implements insertAdjacentHTML and insertAdjacentText for HTMLElement.
- Moves the insertAdjacentElement implementation from Element to HTMLElement.
Tests: fast/dynamic/insertAdjacentHTML.html
fast/dynamic/insertAdjacentText.html
- dom/Element.cpp:
- dom/Element.h:
- dom/Element.idl:
- html/HTMLElement.cpp: (WebCore::HTMLElement::insertAdjacent): (WebCore::HTMLElement::insertAdjacentElement): (WebCore::HTMLElement::insertAdjacentHTML): (WebCore::HTMLElement::insertAdjacentText):
- html/HTMLElement.h:
- html/HTMLElement.idl:
LayoutTests:
2008-06-14 Sam Weinig <sam@webkit.org>
Reviewed by Dan Bernstein.
Tests for <rdar://problem/5775192>
insertAdjacentHTML and insertAdjacentText are not implemented although insertAdjacentElement is.
- fast/dom/Window/window-properties-expected.txt:
- fast/dom/domListEnumeration-expected.txt:
- fast/dom/resources/domListEnumeration.js:
- fast/dynamic/insertAdjacentElement.html:
- fast/dynamic/insertAdjacentHTML-expected.txt: Added.
- fast/dynamic/insertAdjacentHTML.html: Copied from fast/dynamic/insertAdjacentElement.html.
- fast/dynamic/insertAdjacentText-expected.txt: Added.
- fast/dynamic/insertAdjacentText.html: Copied from fast/dynamic/insertAdjacentElement.html.
- platform/mac/fast/dynamic/insertAdjacentElement-expected.txt:
- 6:03 PM Changeset in webkit [34542] by
-
- 4 edits3 adds in trunk
WebCore:
2008-06-14 Darin Adler <Darin Adler>
Reviewed by Maciej.
- fix https://bugs.webkit.org/show_bug.cgi?id=19538 <rdar://problem/5957595> Reading transition property from the style JS gives the wrong value
Test: fast/dom/CSSStyleDeclaration/transition-property-names.html
- css/CSSPrimitiveValue.cpp: (WebCore::valueOrPropertyName): Added. (WebCore::CSSPrimitiveValue::getStringValue): Use valueOrPropertyName since the ident can either be a value or property ID. (WebCore::CSSPrimitiveValue::cssText): Ditto.
- css/makeprop.pl: Assign property IDs starting at 1001 instead of 1 so they can be stored along with value IDs with no ambiguity.
LayoutTests:
2008-06-14 Darin Adler <Darin Adler>
Reviewed by Maciej.
- test for https://bugs.webkit.org/show_bug.cgi?id=19538 <rdar://problem/5957595> Reading transition property from the style JS gives the wrong value
- fast/dom/CSSStyleDeclaration/resources/transition-property-names.js: Added.
- fast/dom/CSSStyleDeclaration/transition-property-names-expected.txt: Added.
- fast/dom/CSSStyleDeclaration/transition-property-names.html: Added.
- 4:17 PM WebDevelopers edited by
- (diff)
- 4:16 PM WebDevelopers edited by
- (diff)
- 3:13 PM Changeset in webkit [34541] by
-
- 3 edits in trunk/JavaScriptCore
2008-06-14 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- initialize local vars as side effect of call instead of in bytecode 1.004x speedup on SunSpider.
This removes just the dispatch overhead for these loads - in the
future, dead store elimination might be able to eliminate them
entirely.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::CodeGenerator): For function blocks, don't emit loads of undefined for var initialization.
- VM/Machine.cpp: (KJS::slideRegisterWindowForCall): Instead, initialize locals as part of the call.
- 12:33 PM Changeset in webkit [34540] by
-
- 2 edits in trunk/WebCore
2008-06-14 Adam Barth <abarth@webkit.org>
Reviewed by David Kilzer.
Fix typo.
- dom/XMLTokenizer.cpp: (WebCore::shouldAllowExternalLoad):
- 2:56 AM Changeset in webkit [34539] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-14 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Remove helper functions in the parser that are no longer needed.
- kjs/grammar.y:
- 2:18 AM Changeset in webkit [34538] by
-
- 2 edits in trunk/WebCore
2008-06-14 Darin Adler <Darin Adler>
- fix build
- plugins/PluginStream.h: Move functions back into public section.
- 1:47 AM Changeset in webkit [34537] by
-
- 2 edits in trunk/WebKitTools
2008-06-14 Darin Adler <Darin Adler>
- Scripts/do-webcore-rename: Fixed obvious typo.
- 1:46 AM Changeset in webkit [34536] by
-
- 152 edits in trunk
WebCore:
2008-06-14 Darin Adler <Darin Adler>
Reviewed by Sam.
- more work on https://bugs.webkit.org/show_bug.cgi?id=17257 start ref counts at 1 instead of 0 for speed
- WebCore.base.exp:
- bindings/js/JSSVGMatrixCustom.cpp: (WebCore::JSSVGMatrix::multiply): (WebCore::JSSVGMatrix::inverse): (WebCore::JSSVGMatrix::translate): (WebCore::JSSVGMatrix::scale): (WebCore::JSSVGMatrix::scaleNonUniform): (WebCore::JSSVGMatrix::rotate): (WebCore::JSSVGMatrix::rotateFromVector): (WebCore::JSSVGMatrix::flipX): (WebCore::JSSVGMatrix::flipY): (WebCore::JSSVGMatrix::skewX): (WebCore::JSSVGMatrix::skewY):
- bindings/js/JSSVGPODTypeWrapper.h: (WebCore::JSSVGPODTypeWrapperCreatorReadWrite::create): (WebCore::JSSVGPODTypeWrapperCreatorReadWrite::JSSVGPODTypeWrapperCreatorReadWrite): (WebCore::JSSVGPODTypeWrapperCreatorReadOnly::create): (WebCore::JSSVGPODTypeWrapperCreatorReadOnly::JSSVGPODTypeWrapperCreatorReadOnly): (WebCore::JSSVGPODTypeWrapperCreatorForList::create): (WebCore::JSSVGPODTypeWrapperCreatorForList::JSSVGPODTypeWrapperCreatorForList): (WebCore::JSSVGPODTypeWrapperCache::lookupOrCreateWrapper): (WebCore::JSSVGPODTypeWrapperCache::forgetWrapper):
- bindings/js/JSSVGPointListCustom.cpp: (WebCore::finishGetter): (WebCore::finishSetter): (WebCore::finishSetterReadOnlyResult): (WebCore::JSSVGPointList::clear): (WebCore::JSSVGPointList::initialize): (WebCore::JSSVGPointList::getItem): (WebCore::JSSVGPointList::insertItemBefore): (WebCore::JSSVGPointList::replaceItem): (WebCore::JSSVGPointList::removeItem): (WebCore::JSSVGPointList::appendItem):
- bindings/js/JSSVGTransformListCustom.cpp: (WebCore::finishGetter): (WebCore::finishSetter): (WebCore::finishSetterReadOnlyResult): (WebCore::JSSVGTransformList::clear): (WebCore::JSSVGTransformList::initialize): (WebCore::JSSVGTransformList::getItem): (WebCore::JSSVGTransformList::insertItemBefore): (WebCore::JSSVGTransformList::replaceItem): (WebCore::JSSVGTransformList::removeItem): (WebCore::JSSVGTransformList::appendItem):
- bindings/scripts/CodeGeneratorJS.pm:
- css/CSSFontSelector.cpp: (WebCore::CSSFontSelector::CSSFontSelector): (WebCore::CSSFontSelector::~CSSFontSelector):
- css/CSSFontSelector.h: (WebCore::CSSFontSelector::create):
- css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::CSSStyleSelector): (WebCore::CSSStyleSelector::applyProperty):
- dom/Attribute.cpp: (WebCore::Attribute::clone):
- dom/Attribute.h: (WebCore::Attribute::create): (WebCore::Attribute::Attribute):
- dom/BeforeTextInsertedEvent.h: (WebCore::BeforeTextInsertedEvent::create):
- dom/BeforeUnloadEvent.h: (WebCore::BeforeUnloadEvent::create):
- dom/CharacterData.cpp: (WebCore::CharacterData::dispatchModifiedEvent):
- dom/ClipboardEvent.cpp: (WebCore::ClipboardEvent::ClipboardEvent):
- dom/ClipboardEvent.h: (WebCore::ClipboardEvent::create):
- dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChild): (WebCore::dispatchChildInsertionEvents): (WebCore::dispatchChildRemovalEvents):
- dom/Document.cpp: (WebCore::Document::createTextNode): (WebCore::Document::createComment): (WebCore::Document::createCDATASection): (WebCore::Document::createProcessingInstruction): (WebCore::Document::createEntityReference): (WebCore::Document::createEditingTextNode): (WebCore::Document::createEvent): (WebCore::Document::createAttributeNS): (WebCore::Document::finishedParsing):
- dom/Document.h:
- dom/Element.cpp: (WebCore::Element::createAttribute):
- dom/Element.h:
- dom/Event.cpp: (WebCore::Event::Event):
- dom/Event.h: (WebCore::Event::create):
- dom/EventTargetNode.cpp: (WebCore::EventTargetNode::dispatchSubtreeModifiedEvent): (WebCore::EventTargetNode::dispatchWindowEvent): (WebCore::EventTargetNode::dispatchUIEvent): (WebCore::EventTargetNode::dispatchKeyEvent): (WebCore::EventTargetNode::dispatchMouseEvent): (WebCore::EventTargetNode::dispatchWheelEvent): (WebCore::EventTargetNode::dispatchHTMLEvent): (WebCore::EventTargetNode::dispatchProgressEvent): (WebCore::EventTargetNode::dispatchStorageEvent):
- dom/KeyboardEvent.h: (WebCore::KeyboardEvent::create):
- dom/MappedAttribute.cpp: (WebCore::MappedAttribute::clone):
- dom/MappedAttribute.h: (WebCore::MappedAttribute::create): (WebCore::MappedAttribute::setDecl): (WebCore::MappedAttribute::MappedAttribute):
- dom/MessageEvent.cpp: (WebCore::MessageEvent::MessageEvent):
- dom/MessageEvent.h: (WebCore::MessageEvent::create):
- dom/MouseEvent.cpp: (WebCore::MouseEvent::MouseEvent): (WebCore::MouseEvent::initMouseEvent):
- dom/MouseEvent.h: (WebCore::MouseEvent::create):
- dom/MouseRelatedEvent.cpp: (WebCore::MouseRelatedEvent::MouseRelatedEvent):
- dom/MouseRelatedEvent.h:
- dom/MutationEvent.cpp: (WebCore::MutationEvent::MutationEvent): (WebCore::MutationEvent::initMutationEvent):
- dom/MutationEvent.h: (WebCore::MutationEvent::create):
- dom/OverflowEvent.h: (WebCore::OverflowEvent::create):
- dom/ProgressEvent.h: (WebCore::ProgressEvent::create):
- dom/StyledElement.cpp: (WebCore::StyledElement::getMappedAttributeDecl): (WebCore::StyledElement::setMappedAttributeDecl): (WebCore::StyledElement::removeMappedAttributeDecl): (WebCore::StyledElement::createAttribute):
- dom/StyledElement.h:
- dom/TextEvent.cpp: (WebCore::TextEvent::TextEvent): (WebCore::TextEvent::initTextEvent):
- dom/TextEvent.h: (WebCore::TextEvent::create):
- dom/UIEvent.cpp: (WebCore::UIEvent::UIEvent): (WebCore::UIEvent::initUIEvent):
- dom/UIEvent.h: (WebCore::UIEvent::create):
- dom/UIEventWithKeyState.h: (WebCore::UIEventWithKeyState::ctrlKey): (WebCore::UIEventWithKeyState::shiftKey): (WebCore::UIEventWithKeyState::altKey): (WebCore::UIEventWithKeyState::metaKey): (WebCore::UIEventWithKeyState::UIEventWithKeyState):
- dom/WheelEvent.cpp: (WebCore::WheelEvent::WheelEvent): (WebCore::WheelEvent::initWheelEvent):
- dom/WheelEvent.h: (WebCore::WheelEvent::create):
- editing/AppendNodeCommand.cpp: (WebCore::AppendNodeCommand::AppendNodeCommand):
- editing/AppendNodeCommand.h: (WebCore::AppendNodeCommand::create):
- editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::applyBlockStyle):
- editing/ApplyStyleCommand.h: (WebCore::ApplyStyleCommand::create):
- editing/BreakBlockquoteCommand.h: (WebCore::BreakBlockquoteCommand::create):
- editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::applyStyle): (WebCore::CompositeEditCommand::applyStyledElement): (WebCore::CompositeEditCommand::removeStyledElement): (WebCore::CompositeEditCommand::insertParagraphSeparator): (WebCore::CompositeEditCommand::insertLineBreak): (WebCore::CompositeEditCommand::insertNodeBefore): (WebCore::CompositeEditCommand::appendNode): (WebCore::CompositeEditCommand::removeNode): (WebCore::CompositeEditCommand::removeNodePreservingChildren): (WebCore::CompositeEditCommand::splitTextNode): (WebCore::CompositeEditCommand::splitElement): (WebCore::CompositeEditCommand::mergeIdenticalElements): (WebCore::CompositeEditCommand::wrapContentsInDummySpan): (WebCore::CompositeEditCommand::splitTextNodeContainingElement): (WebCore::CompositeEditCommand::joinTextNodes): (WebCore::CompositeEditCommand::inputText): (WebCore::CompositeEditCommand::insertTextIntoNode): (WebCore::CompositeEditCommand::deleteTextFromNode): (WebCore::CompositeEditCommand::replaceTextInNode): (WebCore::CompositeEditCommand::deleteSelection): (WebCore::CompositeEditCommand::removeCSSProperty): (WebCore::CompositeEditCommand::removeNodeAttribute): (WebCore::CompositeEditCommand::setNodeAttribute): (WebCore::CompositeEditCommand::appendBlockPlaceholder): (WebCore::CompositeEditCommand::insertBlockPlaceholder): (WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded): (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): (WebCore::CompositeEditCommand::moveParagraphs): (WebCore::CompositeEditCommand::splitTreeToNode):
- editing/CompositeEditCommand.h: (WebCore::CompositeEditCommand::isFirstCommand):
- editing/CreateLinkCommand.h: (WebCore::CreateLinkCommand::create):
- editing/DeleteButtonController.cpp: (WebCore::DeleteButtonController::deleteTarget):
- editing/DeleteFromTextNodeCommand.cpp: (WebCore::DeleteFromTextNodeCommand::DeleteFromTextNodeCommand):
- editing/DeleteFromTextNodeCommand.h: (WebCore::DeleteFromTextNodeCommand::create):
- editing/DeleteSelectionCommand.h: (WebCore::DeleteSelectionCommand::create):
- editing/EditCommand.h: (WebCore::SimpleEditCommand::SimpleEditCommand):
- editing/Editor.cpp: (WebCore::Editor::deleteSelectionWithSmartDelete): (WebCore::Editor::replaceSelectionWithFragment): (WebCore::Editor::removeFormattingAndStyle): (WebCore::Editor::clearLastEditCommand): (WebCore::Editor::dispatchCPPEvent): (WebCore::Editor::applyStyle): (WebCore::Editor::applyParagraphStyle): (WebCore::Editor::indent): (WebCore::Editor::outdent): (WebCore::dispatchEditableContentChangedEvents):
- editing/Editor.h:
- editing/EditorCommand.cpp: (WebCore::executeInsertFragment): (WebCore::executeCreateLink): (WebCore::executeFormatBlock): (WebCore::executeIndent): (WebCore::executeInsertOrderedList): (WebCore::executeInsertUnorderedList): (WebCore::executeOutdent): (WebCore::executeUnlink):
- editing/FormatBlockCommand.h: (WebCore::FormatBlockCommand::create):
- editing/IndentOutdentCommand.cpp: (WebCore::IndentOutdentCommand::indentRegion): (WebCore::IndentOutdentCommand::outdentParagraph):
- editing/IndentOutdentCommand.h: (WebCore::IndentOutdentCommand::create):
- editing/InsertIntoTextNodeCommand.cpp: (WebCore::InsertIntoTextNodeCommand::InsertIntoTextNodeCommand):
- editing/InsertIntoTextNodeCommand.h: (WebCore::InsertIntoTextNodeCommand::create):
- editing/InsertLineBreakCommand.h: (WebCore::InsertLineBreakCommand::create):
- editing/InsertListCommand.cpp: (WebCore::InsertListCommand::doApply):
- editing/InsertListCommand.h: (WebCore::InsertListCommand::create):
- editing/InsertNodeBeforeCommand.cpp: (WebCore::InsertNodeBeforeCommand::InsertNodeBeforeCommand):
- editing/InsertNodeBeforeCommand.h: (WebCore::InsertNodeBeforeCommand::create):
- editing/InsertParagraphSeparatorCommand.cpp: (WebCore::InsertParagraphSeparatorCommand::doApply):
- editing/InsertParagraphSeparatorCommand.h: (WebCore::InsertParagraphSeparatorCommand::create):
- editing/InsertTextCommand.h: (WebCore::InsertTextCommand::create):
- editing/JoinTextNodesCommand.cpp: (WebCore::JoinTextNodesCommand::JoinTextNodesCommand):
- editing/JoinTextNodesCommand.h: (WebCore::JoinTextNodesCommand::create):
- editing/MergeIdenticalElementsCommand.cpp: (WebCore::MergeIdenticalElementsCommand::MergeIdenticalElementsCommand):
- editing/MergeIdenticalElementsCommand.h: (WebCore::MergeIdenticalElementsCommand::create):
- editing/ModifySelectionListLevel.cpp: (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevelWithType):
- editing/MoveSelectionCommand.cpp: (WebCore::MoveSelectionCommand::doApply):
- editing/MoveSelectionCommand.h: (WebCore::MoveSelectionCommand::create):
- editing/RemoveCSSPropertyCommand.cpp: (WebCore::RemoveCSSPropertyCommand::RemoveCSSPropertyCommand):
- editing/RemoveCSSPropertyCommand.h: (WebCore::RemoveCSSPropertyCommand::create):
- editing/RemoveFormatCommand.h: (WebCore::RemoveFormatCommand::create):
- editing/RemoveNodeAttributeCommand.cpp: (WebCore::RemoveNodeAttributeCommand::RemoveNodeAttributeCommand):
- editing/RemoveNodeAttributeCommand.h: (WebCore::RemoveNodeAttributeCommand::create):
- editing/RemoveNodeCommand.cpp: (WebCore::RemoveNodeCommand::RemoveNodeCommand):
- editing/RemoveNodeCommand.h: (WebCore::RemoveNodeCommand::create):
- editing/RemoveNodePreservingChildrenCommand.cpp: (WebCore::RemoveNodePreservingChildrenCommand::RemoveNodePreservingChildrenCommand): (WebCore::RemoveNodePreservingChildrenCommand::doApply):
- editing/RemoveNodePreservingChildrenCommand.h: (WebCore::RemoveNodePreservingChildrenCommand::create):
- editing/ReplaceSelectionCommand.cpp: (WebCore::): (WebCore::ReplacementFragment::hasInterchangeNewlineAtStart): (WebCore::ReplacementFragment::hasInterchangeNewlineAtEnd): (WebCore::ReplacementFragment::ReplacementFragment):
- editing/ReplaceSelectionCommand.h: (WebCore::ReplaceSelectionCommand::create):
- editing/SetNodeAttributeCommand.cpp: (WebCore::SetNodeAttributeCommand::SetNodeAttributeCommand):
- editing/SetNodeAttributeCommand.h: (WebCore::SetNodeAttributeCommand::create):
- editing/SplitElementCommand.cpp: (WebCore::SplitElementCommand::SplitElementCommand):
- editing/SplitElementCommand.h: (WebCore::SplitElementCommand::create):
- editing/SplitTextNodeCommand.cpp: (WebCore::SplitTextNodeCommand::SplitTextNodeCommand):
- editing/SplitTextNodeCommand.h: (WebCore::SplitTextNodeCommand::create):
- editing/SplitTextNodeContainingElementCommand.cpp: (WebCore::SplitTextNodeContainingElementCommand::SplitTextNodeContainingElementCommand):
- editing/SplitTextNodeContainingElementCommand.h: (WebCore::SplitTextNodeContainingElementCommand::create):
- editing/TypingCommand.cpp: (WebCore::TypingCommand::deleteSelection): (WebCore::TypingCommand::deleteKeyPressed): (WebCore::TypingCommand::forwardDeleteKeyPressed): (WebCore::TypingCommand::insertText): (WebCore::TypingCommand::insertLineBreak): (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent): (WebCore::TypingCommand::insertParagraphSeparator): (WebCore::TypingCommand::insertTextRunWithoutNewlines):
- editing/TypingCommand.h: (WebCore::TypingCommand::create): (WebCore::TypingCommand::smartDelete):
- editing/UnlinkCommand.h: (WebCore::UnlinkCommand::create):
- editing/WrapContentsInDummySpanCommand.cpp: (WebCore::WrapContentsInDummySpanCommand::WrapContentsInDummySpanCommand):
- editing/WrapContentsInDummySpanCommand.h: (WebCore::WrapContentsInDummySpanCommand::create):
- html/HTMLTableElement.cpp: (WebCore::HTMLTableElement::additionalAttributeStyleDecls): (WebCore::HTMLTableElement::addSharedCellBordersDecl): (WebCore::HTMLTableElement::addSharedCellPaddingDecl): (WebCore::HTMLTableElement::addSharedGroupDecls):
- html/HTMLTokenizer.cpp: (WebCore::Token::addAttribute):
- html/HTMLViewSourceDocument.cpp: (WebCore::HTMLViewSourceDocument::createContainingTable): (WebCore::HTMLViewSourceDocument::addSpanWithClassName): (WebCore::HTMLViewSourceDocument::addLine): (WebCore::HTMLViewSourceDocument::addLink):
- loader/FrameLoader.cpp: (WebCore::FrameLoader::didOpenURL):
- loader/appcache/DOMApplicationCache.cpp: (WebCore::DOMApplicationCache::callListener):
- page/ContextMenuController.cpp: (WebCore::ContextMenuController::contextMenuItemSelected):
- page/DOMWindow.cpp: (WebCore::PostMessageTimer::PostMessageTimer): (WebCore::PostMessageTimer::fired): (WebCore::DOMWindow::postMessage):
- page/DragController.cpp: (WebCore::DragController::concludeDrag):
- page/EventHandler.cpp: (WebCore::EventHandler::dispatchDragEvent): (WebCore::EventHandler::keyEvent): (WebCore::EventHandler::handleTextInputEvent):
- page/Frame.cpp: (WebCore::Frame::computeAndSetTypingStyle): (WebCore::Frame::shouldClose):
- page/FrameView.cpp: (WebCore::FrameView::updateOverflowStatus):
- page/mac/EventHandlerMac.mm: (WebCore::EventHandler::currentKeyboardEvent):
- page/mac/FrameMac.mm:
- platform/DeprecatedValueListImpl.cpp: (WebCore::DeprecatedValueListImpl::Private::Private): (WebCore::DeprecatedValueListImpl::DeprecatedValueListImpl): (WebCore::DeprecatedValueListImpl::copyOnWrite):
- platform/graphics/FontSelector.h:
- platform/graphics/GlyphPageTreeNode.cpp: (WebCore::GlyphPageTreeNode::initializePage):
- platform/graphics/GlyphPageTreeNode.h: (WebCore::GlyphPage::create): (WebCore::GlyphPage::GlyphPage):
- rendering/RenderLayer.cpp: (WebCore::RenderLayer::scrollToOffset): (WebCore::RenderLayer::updateOverflowStatus): (WebCore::RenderLayer::updateReflectionStyle):
- rendering/style/RenderStyle.h: (WebCore::TransformOperation::~TransformOperation): (WebCore::ScaleTransformOperation::create): (WebCore::ScaleTransformOperation::ScaleTransformOperation): (WebCore::RotateTransformOperation::create): (WebCore::RotateTransformOperation::RotateTransformOperation): (WebCore::SkewTransformOperation::create): (WebCore::SkewTransformOperation::operator==): (WebCore::SkewTransformOperation::SkewTransformOperation): (WebCore::TranslateTransformOperation::create): (WebCore::TranslateTransformOperation::operator==): (WebCore::TranslateTransformOperation::TranslateTransformOperation): (WebCore::MatrixTransformOperation::create): (WebCore::MatrixTransformOperation::MatrixTransformOperation): (WebCore::StyleReflection::create): (WebCore::StyleReflection::StyleReflection):
- storage/StorageEvent.cpp: (WebCore::StorageEvent::StorageEvent): (WebCore::StorageEvent::initStorageEvent):
- storage/StorageEvent.h: (WebCore::StorageEvent::create): (WebCore::StorageEvent::StorageEvent):
- svg/SVGAngle.cpp: (WebCore::SVGAngle::SVGAngle):
- svg/SVGAngle.h: (WebCore::SVGAngle::create):
- svg/SVGAnimatedTemplate.h: (WebCore::SVGAnimatedTemplate::SVGAnimatedTemplate): (WebCore::lookupOrCreateWrapper):
- svg/SVGElement.cpp: (WebCore::SVGElement::sendSVGLoadEventIfPossible):
- svg/SVGElement.h:
- svg/SVGMarkerElement.cpp: (WebCore::SVGMarkerElement::SVGMarkerElement): (WebCore::SVGMarkerElement::parseMappedAttribute): (WebCore::SVGMarkerElement::setOrientToAngle):
- svg/SVGMarkerElement.h:
- svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::createSVGAngle):
- svg/SVGSVGElement.h:
- svg/SVGZoomEvent.h: (WebCore::SVGZoomEvent::create):
- svg/graphics/SVGImage.cpp:
- xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::callReadyStateChangeListener): (WebCore::XMLHttpRequest::dispatchProgressEvent):
- xml/XMLHttpRequestProgressEvent.cpp:
- xml/XMLHttpRequestProgressEvent.h: (WebCore::XMLHttpRequestProgressEvent::create): (WebCore::XMLHttpRequestProgressEvent::position): (WebCore::XMLHttpRequestProgressEvent::totalSize): (WebCore::XMLHttpRequestProgressEvent::XMLHttpRequestProgressEvent):
WebKit/mac:
2008-06-14 Darin Adler <Darin Adler>
Reviewed by Sam.
- more work on https://bugs.webkit.org/show_bug.cgi?id=17257 start ref counts at 1 instead of 0 for speed
- WebView/WebFrame.mm: (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
- WebView/WebPDFView.mm: (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
- 12:52 AM Changeset in webkit [34535] by
-
- 7 edits in trunk
2008-06-14 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Bug 19484: More instructions needs to use temporary registers
<https://bugs.webkit.org/show_bug.cgi?id=19484>
Make code generation for AddNode and SubNode use temporaries when
necessary.
- kjs/grammar.y:
- kjs/nodes.cpp: (KJS::AddNode::emitCode): (KJS::SubNode::emitCode):
- kjs/nodes.h: (KJS::AddNode::): (KJS::SubNode::):
LayoutTests:
- fast/js/codegen-temporaries-expected.txt:
- fast/js/resources/codegen-temporaries.js:
Jun 13, 2008:
- 10:40 PM Changeset in webkit [34534] by
-
- 3 edits3 adds in trunk
WebCore:
2008-06-13 Adam Barth <abarth@webkit.org>
Reviewed by Eric Seidel.
Prevent external entities from loading across origins.
Test: http/tests/security/xss-DENIED-xsl-external-entity.xml
- dom/XMLTokenizer.cpp: (WebCore::shouldAllowExternalLoad): (WebCore::openFunc):
LayoutTests:
2008-06-13 Adam Barth <abarth@webkit.org>
Reviewed by Eric Seidel.
Test that an XSL style sheet can't include an external entity from
another origin.
- http/tests/security/resources/xsl-using-external-entity.xsl: Added.
- http/tests/security/xss-DENIED-xsl-external-entity-expected.txt: Added.
- http/tests/security/xss-DENIED-xsl-external-entity.xml: Added.
- 10:40 PM Changeset in webkit [34533] by
-
- 3 edits4 adds in trunk
WebCore:
2008-06-13 Adam Barth <abarth@webkit.org>
Reviewed by Darin Adler.
Allow loads of same-origin documents only.
Test: http/tests/security/xss-DENIED-xsl-document.xml
- xml/XSLTProcessor.cpp: (WebCore::docLoaderFunc):
LayoutTests:
2008-06-13 Adam Barth <abarth@webkit.org>
Reviewed by Darin Adler.
Test that the XSL document() function doesn't load a document from a
foreign origin.
- http/tests/security/resources/target.xml: Added.
- http/tests/security/resources/xsl-using-document.xsl: Added.
- http/tests/security/xss-DENIED-xsl-document-expected.txt: Added.
- http/tests/security/xss-DENIED-xsl-document.xml: Added.
- 10:39 PM Changeset in webkit [34532] by
-
- 5 edits in trunk/WebCore
2008-06-13 Adam Barth <abarth@webkit.org>
Reviewed by Darin Adler.
Fixes <https://bugs.webkit.org/show_bug.cgi?id=15100>:
XMLHttpRequest::urlMatchesDocumentDomain raises error if port
information does not match exactly
Refactor our security check for XMLHttpRequest into SecurityOrigin so
we can reuse it in other places. This leverages our default port
technology in SecurityOrigin.
I wasn't sure how to write a test for this because the LayoutTests run
on non-default ports.
- platform/SecurityOrigin.cpp: (WebCore::SecurityOrigin::canRequest):
- platform/SecurityOrigin.h:
- xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::send): (WebCore::XMLHttpRequest::willSendRequest):
- xml/XMLHttpRequest.h:
- 10:39 PM Changeset in webkit [34531] by
-
- 1 edit2 adds in trunk/LayoutTests
2008-06-13 Adam Barth <abarth@webkit.org>
Reviewed by Darin Adler.
Test whether we permit XMLHttpRequest once document.domain is set.
- http/tests/xmlhttprequest/document-domain-set-expected.txt: Added.
- http/tests/xmlhttprequest/document-domain-set.html: Added.
- 10:39 PM Changeset in webkit [34530] by
-
- 3 edits in trunk/WebCore
2008-06-13 Adam Barth <abarth@webkit.org>
Reviewed by Eric Seidel.
Removed unnecessary dependencies.
- platform/SecurityOrigin.cpp:
- platform/SecurityOrigin.h:
- 10:06 PM Changeset in webkit [34529] by
-
- 5 edits in trunk/JavaScriptCore
2008-06-13 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Combine TrueNode and FalseNode to make BooleanNode, and remove the
unused class PlaceholderTrueNode.
- kjs/grammar.y:
- kjs/nodes.cpp: (KJS::BooleanNode::emitCode):
- kjs/nodes.h: (KJS::BooleanNode::): (KJS::BooleanNode::precedence):
- kjs/nodes2string.cpp: (KJS::BooleanNode::streamTo):
- 9:40 PM Changeset in webkit [34528] by
-
- 4 edits in trunk/JavaScriptCore
2008-06-13 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Eliminate the use of temporaries to store the left hand side of an
expression when the right hand side is a constant. This slightly
improves the generated bytecode for a few SunSpider tests, but it is
mostly in preparation for fixing
Bug 19484: More instructions needs to use temporary registers
<https://bugs.webkit.org/show_bug.cgi?id=19484>
- VM/CodeGenerator.h: (KJS::CodeGenerator::leftHandSideNeedsCopy): (KJS::CodeGenerator::emitNodeForLeftHandSide):
- kjs/nodes.cpp: (KJS::BracketAccessorNode::emitCode): (KJS::ReadModifyResolveNode::emitCode): (KJS::AssignDotNode::emitCode): (KJS::ReadModifyDotNode::emitCode): (KJS::AssignBracketNode::emitCode): (KJS::ReadModifyBracketNode::emitCode):
- kjs/nodes.h: (KJS::ExpressionNode::): (KJS::FalseNode::): (KJS::TrueNode::): (KJS::NumberNode::): (KJS::StringNode::):
- 9:12 PM Changeset in webkit [34527] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-13 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- prettify opcode stats output
I changed things to be a bit more aligned, also there is a new
section listing most common opcodes and most common sequences that
include them.
- VM/Opcode.cpp: (KJS::): (KJS::OpcodeStats::~OpcodeStats):
- VM/Opcode.h:
- 4:35 PM Changeset in webkit [34526] by
-
- 6 edits in trunk/WebKit
WebKit/gtk:
2008-06-13 Darin Adler <Darin Adler>
- try to fix build
- WebCoreSupport/FrameLoaderClientGtk.h: Add missing argument.
WebKit/qt:
2008-06-13 Darin Adler <Darin Adler>
- try to fix build
- WebCoreSupport/FrameLoaderClientQt.h: Add missing argument.
WebKit/wx:
2008-06-13 Darin Adler <Darin Adler>
- try to fix build
- WebKitSupport/FrameLoaderClientWx.h: Add missing argument.
- 3:32 PM Changeset in webkit [34525] by
-
- 1 edit4 adds in trunk/LayoutTests
2008-06-13 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Darin.
Add a test for existing loader behaviour in preparation for:
Bug 19422: Distinct redirects from the same link do not create distinct history items
<https://bugs.webkit.org/show_bug.cgi?id=19422>
- http/tests/navigation/redirect-cycle-expected.txt: Added.
- http/tests/navigation/redirect-cycle.html: Added.
- http/tests/navigation/resources/redirect-cycle-1.pl: Added.
- http/tests/navigation/resources/redirect-cycle-2.pl: Added.
- 3:05 PM Changeset in webkit [34524] by
-
- 3 edits13 moves13 adds in trunk/LayoutTests
2008-06-13 Maciej Stachowiak <mjs@apple.com>
Reviewed by Darin.
- enable a bunch of disabled layout tests which now run ok https://bugs.webkit.org/show_bug.cgi?id=19540
I also made a minor change to selftxhtml.js to handle the case
where the body is a frameset properly, and to frame.xhtml to match
the HTML version of that file, and what the tests expect.
- dom/html/level2/html/HTMLFormElement10-expected.txt: Added.
- dom/html/level2/html/HTMLFormElement10.html: Copied from dom/html/level2/html/HTMLFormElement10.html-disabled.
- dom/html/level2/html/HTMLFormElement10.html-disabled: Removed.
- dom/xhtml/level2/html/HTMLFormElement10-expected.txt: Added.
- dom/xhtml/level2/html/HTMLFormElement10.xhtml: Copied from dom/xhtml/level2/html/HTMLFormElement10.xhtml-disabled.
- dom/xhtml/level2/html/HTMLFormElement10.xhtml-disabled: Removed.
- dom/xhtml/level2/html/HTMLFrameElement01-expected.txt: Added.
- dom/xhtml/level2/html/HTMLFrameElement01.xhtml: Copied from dom/xhtml/level2/html/HTMLFrameElement01.xhtml-disabled.
- dom/xhtml/level2/html/HTMLFrameElement01.xhtml-disabled: Removed.
- dom/xhtml/level2/html/HTMLFrameElement02-expected.txt: Added.
- dom/xhtml/level2/html/HTMLFrameElement02.xhtml: Copied from dom/xhtml/level2/html/HTMLFrameElement02.xhtml-disabled.
- dom/xhtml/level2/html/HTMLFrameElement02.xhtml-disabled: Removed.
- dom/xhtml/level2/html/HTMLFrameElement03-expected.txt: Added.
- dom/xhtml/level2/html/HTMLFrameElement03.xhtml: Copied from dom/xhtml/level2/html/HTMLFrameElement03.xhtml-disabled.
- dom/xhtml/level2/html/HTMLFrameElement03.xhtml-disabled: Removed.
- dom/xhtml/level2/html/HTMLFrameElement04-expected.txt: Added.
- dom/xhtml/level2/html/HTMLFrameElement04.xhtml: Copied from dom/xhtml/level2/html/HTMLFrameElement04.xhtml-disabled.
- dom/xhtml/level2/html/HTMLFrameElement04.xhtml-disabled: Removed.
- dom/xhtml/level2/html/HTMLFrameElement05-expected.txt: Added.
- dom/xhtml/level2/html/HTMLFrameElement05.xhtml: Copied from dom/xhtml/level2/html/HTMLFrameElement05.xhtml-disabled.
- dom/xhtml/level2/html/HTMLFrameElement05.xhtml-disabled: Removed.
- dom/xhtml/level2/html/HTMLFrameElement06-expected.txt: Added.
- dom/xhtml/level2/html/HTMLFrameElement06.xhtml: Copied from dom/xhtml/level2/html/HTMLFrameElement06.xhtml-disabled.
- dom/xhtml/level2/html/HTMLFrameElement06.xhtml-disabled: Removed.
- dom/xhtml/level2/html/HTMLFrameElement07-expected.txt: Added.
- dom/xhtml/level2/html/HTMLFrameElement07.xhtml: Copied from dom/xhtml/level2/html/HTMLFrameElement07.xhtml-disabled.
- dom/xhtml/level2/html/HTMLFrameElement07.xhtml-disabled: Removed.
- dom/xhtml/level2/html/HTMLFrameElement08-expected.txt: Added.
- dom/xhtml/level2/html/HTMLFrameElement08.xhtml: Copied from dom/xhtml/level2/html/HTMLFrameElement08.xhtml-disabled.
- dom/xhtml/level2/html/HTMLFrameElement08.xhtml-disabled: Removed.
- dom/xhtml/level2/html/HTMLFrameElement09-expected.txt: Added.
- dom/xhtml/level2/html/HTMLFrameElement09.xhtml: Copied from dom/xhtml/level2/html/HTMLFrameElement09.xhtml-disabled.
- dom/xhtml/level2/html/HTMLFrameElement09.xhtml-disabled: Removed.
- dom/xhtml/level2/html/HTMLFrameSetElement01-expected.txt: Added.
- dom/xhtml/level2/html/HTMLFrameSetElement01.xhtml: Copied from dom/xhtml/level2/html/HTMLFrameSetElement01.xhtml-disabled.
- dom/xhtml/level2/html/HTMLFrameSetElement01.xhtml-disabled: Removed.
- dom/xhtml/level2/html/HTMLFrameSetElement02-expected.txt: Added.
- dom/xhtml/level2/html/HTMLFrameSetElement02.xhtml: Copied from dom/xhtml/level2/html/HTMLFrameSetElement02.xhtml-disabled.
- dom/xhtml/level2/html/HTMLFrameSetElement02.xhtml-disabled: Removed.
- dom/xhtml/level2/html/resources/frame.xhtml:
- dom/xhtml/level2/html/selfxhtml.js:
- 2:47 PM Changeset in webkit [34523] by
-
- 21 edits in trunk
WebCore:
2008-06-13 Darin Adler <Darin Adler>
Reviewed by John Sullivan.
- added FormState argument to action policy functions
- loader/FrameLoader.cpp: (WebCore::FrameLoader::checkNewWindowPolicy): (WebCore::FrameLoader::checkNavigationPolicy):
- loader/FrameLoaderClient.h:
- svg/graphics/SVGImageEmptyClients.h: (WebCore::SVGEmptyFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): (WebCore::SVGEmptyFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
WebKit/gtk:
2008-06-13 Darin Adler <Darin Adler>
Reviewed by John Sullivan.
- updated for addition of FormState argument to action policy functions
- WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::dispatchDecidePolicyForNewWindowAction): (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
WebKit/mac:
2008-06-13 Darin Adler <Darin Adler>
Reviewed by John Sullivan.
- updated for addition of FormState argument to action policy functions
- added WebActionFormKey
- WebCoreSupport/WebFrameLoaderClient.h:
- WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): (WebFrameLoaderClient::actionDictionary):
- WebKit.exp:
- WebView/WebPolicyDelegate.mm:
- WebView/WebPolicyDelegatePrivate.h:
WebKit/qt:
2008-06-13 Darin Adler <Darin Adler>
Reviewed by John Sullivan.
- updated for addition of FormState argument to action policy functions
- WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNewWindowAction): (WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNavigationAction):
WebKit/win:
2008-06-13 Darin Adler <Darin Adler>
Reviewed by John Sullivan.
- updated for addition of FormState argument to action policy functions
- added WebActionFormKey
- Interfaces/IWebPolicyDelegate.idl:
- WebActionPropertyBag.cpp: (WebActionPropertyBag::WebActionPropertyBag): (WebActionPropertyBag::createInstance): (WebActionPropertyBag::AddRef): (WebActionPropertyBag::Release): (WebActionPropertyBag::Read):
- WebActionPropertyBag.h:
- WebFrame.cpp: (WebFrame::dispatchDecidePolicyForNewWindowAction): (WebFrame::dispatchDecidePolicyForNavigationAction):
WebKit/wx:
2008-06-13 Darin Adler <Darin Adler>
Reviewed by John Sullivan.
- updated for addition of FormState argument to action policy functions
- WebKitSupport/FrameLoaderClientWx.cpp: (WebCore::FrameLoaderClientWx::dispatchDecidePolicyForNewWindowAction): (WebCore::FrameLoaderClientWx::dispatchDecidePolicyForNavigationAction):
- 11:23 AM Changeset in webkit [34522] by
-
- 2 edits in trunk/WebKitTools
2008-06-13 Darin Adler <Darin Adler>
- Scripts/make-js-test-wrappers: Added three more exceptions.
- 10:45 AM Changeset in webkit [34521] by
-
- 6 edits in trunk/JavaScriptCore
2008-06-13 Kevin McCullough <kmccullough@apple.com>
Reviewed by Geoff.
<rdar://problem/5969992> JSProfiler: Remove the recursion limit in the
profiler.
- Remove recursion from exclude(). This leaves only focus() to fix.
- JavaScriptCore.exp: Change the signatures of the exported functions.
- profiler/Profile.cpp: (KJS::Profile::forEach): I added a traverseNextNodePreOrder() function and so needed to distinguish the other function by labeling it traverseNextNodePostOrder(). (KJS::Profile::exclude): All new exclude that iteratively walks the tree
- profiler/Profile.h: (KJS::Profile::focus): Add a null check for m_head.
- profiler/ProfileNode.cpp: (KJS::ProfileNode::traverseNextNodePostOrder): Renamed (KJS::ProfileNode::traverseNextNodePreOrder): Walks the tree in pre- order, where the parent is processed before the children. (KJS::ProfileNode::setTreeVisible): Iterate over the sub-tree and set all of the nodes visible value. This changes another function that used recursion. (KJS::ProfileNode::exclude): Remove recursion from this function. Because we now check for m_visible and we are walking the tree in pre- order we do not need to check if an excluded node is in an excluded sub-tree.
- profiler/ProfileNode.h: Added specific selfTime functions to facilitate exclude(). (KJS::ProfileNode::setSelfTime): (KJS::ProfileNode::setActualSelfTime): (KJS::ProfileNode::setVisibleSelfTime):
- 10:42 AM Changeset in webkit [34520] by
-
- 2 edits in trunk/WebCore
2008-06-13 Justin Garcia <justin.garcia@apple.com>
Reviewed by Jess.
<rdar://problem/5702248> Crash on Copy Image from the contextual menu on a broken image in Mail
- platform/mac/PasteboardMac.mm: (WebCore::Pasteboard::writeImage): Check to see the image loaded successfully before trying to put data for it on the Pasteboard. Mail shouldn't really include the Copy Image menu item, but if it does and the user selects it, we shouldn't crash.
- 5:51 AM Changeset in webkit [34519] by
-
- 2 edits in trunk/WebCore
2008-06-11 Marc Ordinas i Llopis <marc.ordinasillopis@collabora.co.uk>
With help from Siraj Razick <siraj.razick@collabora.co.uk>
Reviewed by Simon.
https://bugs.webkit.org/show_bug.cgi?id=19367
[Qt] Plugins are drawn over the scrollbars
- 1:22 AM WebDevelopers edited by
- (diff)
Jun 12, 2008:
- 9:53 PM Changeset in webkit [34518] by
-
- 12 edits in trunk/JavaScriptCore
2008-06-12 Darin Adler <Darin Adler>
Reviewed by Maciej.
- https://bugs.webkit.org/show_bug.cgi?id=19434 speed up SunSpider by avoiding some string boxing
Speeds up SunSpider by 1.1%.
Optimized code path for getting built-in properties from strings -- avoid
boxing with a string object in that case. We can make further changes to avoid
even more boxing, but this change alone is a win.
- API/JSCallbackObjectFunctions.h: (KJS::JSCallbackObject::staticValueGetter): Use isObject instead of inherits in asssert, since the type of slotBase() is now JSValue, not JSObject. (KJS::JSCallbackObject::staticFunctionGetter): Ditto. (KJS::JSCallbackObject::callbackGetter): Ditto.
- kjs/internal.cpp: (KJS::StringImp::getPrimitiveNumber): Updated for change of data member name. (KJS::StringImp::toBoolean): Ditto. (KJS::StringImp::toNumber): Ditto. (KJS::StringImp::toString): Ditto. (KJS::StringInstance::create): Added; avoids a bit of cut and paste code. (KJS::StringImp::toObject): Use StringInstance::create. (KJS::StringImp::toThisObject): Ditto. (KJS::StringImp::lengthGetter): Added. Replaces the getter that used to live in the StringInstance class. (KJS::StringImp::indexGetter): Ditto. (KJS::StringImp::indexNumericPropertyGetter): Ditto. (KJS::StringImp::getOwnPropertySlot): Added. Deals with built in properties of the string class without creating a StringInstance.
- kjs/internal.h: (KJS::StringImp::getStringPropertySlot): Added. To be used by both the string and string object getOwnPropertySlot function.
- kjs/lookup.h: (KJS::staticFunctionGetter): Updated since slotBase() is now a JSValue rather than a JSObject.
- kjs/object.h: Removed PropertySlot::slotBase() function, which can now move back into property_slot.h where it belongs since it doesn't have to cast to JSObject*.
- kjs/property_slot.cpp: (KJS::PropertySlot::functionGetter): Updated since slot.slotBase() is now a JSValue* instead of JSObject*. setGetterSlot still guarantees the base is a JSObject*.
- kjs/property_slot.h: (KJS::PropertySlot::PropertySlot): Changed base to JSValue* intead of JSCell*. (KJS::PropertySlot::setStaticEntry): Ditto. (KJS::PropertySlot::setCustom): Ditto. (KJS::PropertySlot::setCustomIndex): Ditto. (KJS::PropertySlot::setCustomNumeric): Ditto. (KJS::PropertySlot::slotBase): Moved inline here since it no longer involves a downcast to JSObject*. (KJS::PropertySlot::setBase): Changed to JSValue*.
- kjs/string_object.cpp: (KJS::StringInstance::getOwnPropertySlot): Changed to use getStringPropertySlot instead of coding the properties here. This allows sharing the code with StringImp.
- kjs/string_object.h: Removed inlineGetOwnPropertySlot, lengthGetter, and indexGetter. Made one of the constructors protected.
- kjs/value.h: Made getOwnPropertySlot private in the JSCell class -- this is better since it's not the real JSObject getOwnPropertySlot semantic and most callers shouldn't use it.
- 9:19 PM Changeset in webkit [34517] by
-
- 3 edits in trunk/WebKit/mac
2008-06-12 John Sullivan <sullivan@apple.com>
Reviewed by Dan and Darin
Clear up the confusion about _close (older private method) vs -close (newer public method).
- WebView/WebView.mm: (-[WebView _isClosed]): simplified style (-[WebView _close]): added a comment about how clients and subclasses should use -close instead (-[WebView dealloc]): call -close instead of _close, so subclasses that override the public method will have the intended behavior (-[WebView close]): added a comment (-[WebView _windowWillClose:]): call -close instead of _close, so subclasses that override the public method will have the intended behavior
- WebView/WebViewPrivate.h: added a comment about how clients and subclasses should use -close instead
- 8:28 PM Changeset in webkit [34516] by
-
- 2 edits in trunk/WebCore
2008-06-12 Darin Adler <Darin Adler>
- try to fix no-SVG build
- css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added a case for CSSPropertyWebkitMask.
- 8:10 PM Changeset in webkit [34515] by
-
- 2 edits in trunk/WebCore
2008-06-12 Darin Adler <Darin Adler>
- try to fix Windows build
- dom/Element.idl: Turn off ElementTraversal functions when generating COM. Not sure why they're failing, but turning them off for now seems OK.
- 7:34 AM Changeset in webkit [34514] by
-
- 6 edits in trunk/JavaScriptCore
Reviewed by Maciej.
Preparation to making JavaScript heap per-thread.
- kjs/collector.cpp: (KJS::Collector::collect):
- kjs/collector.h: (KJS::Collector::markListSet): The collector now holds the list of protected lists itself, to be made per-instance.
- kjs/list.h: Changed to hold a pointer to a mark set this list is in, if any. (KJS::List::List): Explicitly initialize m_size with zero, as m_vector.size() is guaranteed to be such anyway. (KJS::List::append): Changed the fast case to only be executed as long as inline buffer is used, because otherwise, we now do more expensive checks.
- kjs/list.cpp: (KJS::List::markLists): Renamed from markProtectedListsSlowCase, made it take the list set as a parameter. (KJS::List::slowAppend): If a non-immediate value is appended, the list needs to be added to an appropriate Heap's protected list. For now, a static Collector::markListSet() is used, but the code is layed out in preparation to making the switch to multiple heaps.
- JavaScriptCore.exp: Updated export list.
- 5:52 AM Disk Cache edited by
- (diff)
- 3:40 AM Changeset in webkit [34513] by
-
- 4 edits2 copies in trunk
WebCore:
2008-06-12 Adam Barth <abarth@webkit.org>
Rubberstamped by Maciej.
Roll 34504 back in.
Test: http/tests/xmlhttprequest/access-control-basic-allow-access-control-origin-header-data-url.html
- platform/SecurityOrigin.cpp: (WebCore::SecurityOrigin::toString):
LayoutTests:
2008-06-12 Adam Barth <abarth@webkit.org>
Rubberstamped by Maciej.
Add the data url test back and set more agressive Cache-Control headers.
- http/tests/xmlhttprequest/access-control-basic-allow-access-control-origin-header-data-url-expected.txt: Copied from LayoutTests/http/tests/xmlhttprequest/access-control-basic-allow-access-control-origin-header-data-url-expected.txt.
- http/tests/xmlhttprequest/access-control-basic-allow-access-control-origin-header-data-url.html: Copied from LayoutTests/http/tests/xmlhttprequest/access-control-basic-allow-access-control-origin-header-data-url.html.
- http/tests/xmlhttprequest/resources/access-control-basic-allow-access-control-origin-header.cgi:
- 3:02 AM Changeset in webkit [34512] by
-
- 2 deletes in trunk/LayoutTests/http/tests/xmlhttprequest
Continue backout of 34504.
- 2:35 AM Changeset in webkit [34511] by
-
- 1 edit in trunk/WebCore/platform/SecurityOrigin.cpp
Partial backout of 34504. I know this will regress the *-data-url.html test, but I'd like to see if it fixes the broken test.
- 2:03 AM Changeset in webkit [34510] by
-
- 3 edits4 adds in trunk
2008-06-12 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Bug 19510: CodeBlock::needsFullScopeChain not always set for global code
<https://bugs.webkit.org/show_bug.cgi?id=19510>
This fixes the symptoms by using CodeGenerator::m_codeType to determine
when to use temporaries instead of CodeBlock::needsFullScopeChain, but
it does not fix the problem itself.
- VM/CodeGenerator.h: (KJS::CodeGenerator::leftHandSideNeedsCopy):
LayoutTests:
- fast/js/codegen-temporaries-multiple-global-blocks-expected.txt: Added.
- fast/js/codegen-temporaries-multiple-global-blocks.html: Added.
- fast/js/resources/codegen-temporaries-multiple-global-blocks-1.js: Added.
- fast/js/resources/codegen-temporaries-multiple-global-blocks-2.js: Added.
- 2:00 AM Changeset in webkit [34509] by
-
- 2 edits in trunk/LayoutTests
2008-06-12 Adam Barth <abarth@webkit.org>
Reviewed by Maciej.
Prevent caching of this resource so we always see the up-to-date value
of the Access-Control-Origin header.
- http/tests/xmlhttprequest/resources/access-control-basic-allow-access-control-origin-header.cgi:
Jun 11, 2008:
- 11:52 PM Changeset in webkit [34508] by
-
- 2 edits in trunk
Reverting changes I accidently made in r34507.
- 11:44 PM Changeset in webkit [34507] by
-
- 33 edits6 adds in trunk
WebCore:
Reviewed by Dave Hyatt.
- fix <rdar://problem/5876370> Safari 3.1.1 bad rendering of pages from http://www.legifrance.gouv.fr/
Tests: fast/parser/p-in-scope-strict.html
fast/parser/p-in-scope.html
- html/HTMLParagraphElement.h: (WebCore::HTMLParagraphElement::endTagRequirement): Changed to require an end tag. The explicit closing of one P element by another is now done in error checking, and therefore takes scope into account, allowing for <p><button><p>, for example.
- html/HTMLParser.cpp: (WebCore::HTMLParser::HTMLParser): Initialize m_hasPElementInScope. (WebCore::isScopingTag): Added. Returns whether the given tag represents a scoping element as defined in HTML 5 section 8.2.3.2. (WebCore::HTMLParser::formCreateErrorCheck): Added a call to pCloserCreateErrorCheck(). (WebCore::HTMLParser::ddCreateErrorCheck): Ditto. (WebCore::HTMLParser::dtCreateErrorCheck): Ditto. (WebCore::HTMLParser::nestedPCloserCreateErrorCheck): Added for use with <li>, which both closes P elements in scope and any previous LI. (WebCore::HTMLParser::pCloserCreateErrorCheck): Added. If there is a P element in scope, acts as if a </p> tag was seen. (WebCore::HTMLParser::pCloserStrictCreateErrorCheck): Ditto, but only in strict mode. Used for <table>. (WebCore::HTMLParser::getNode): Added entries for tags that close a P element in scope. (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Added code to reset m_hasPElementInScope. (WebCore::HTMLParser::pushBlock): Added code to update m_hasPElementInScope. (WebCore::HTMLParser::popOneBlockCommon): Ditto. (WebCore::HTMLParser::checkIfHasPElementInScope): Added. Updates m_hasPElementInScope.
- html/HTMLParser.h: (WebCore::HTMLParser::hasPElementInScope): Added. Calls checkIfHasPElementInScope() if needed and returns whether there is a P element in scope.
LayoutTests:
Reviewed by Dave Hyatt.
- tests, updated tests and updated results for <rdar://problem/5876370> Safari 3.1.1 bad rendering of pages from http://www.legifrance.gouv.fr/
- fast/block/basic/001.html:
- fast/block/positioning/absolute-in-inline-ltr-2.html:
- fast/block/positioning/absolute-in-inline-ltr-3.html:
- fast/block/positioning/absolute-in-inline-ltr.html:
- fast/block/positioning/absolute-in-inline-rtl-2.html:
- fast/block/positioning/absolute-in-inline-rtl-3.html:
- fast/block/positioning/absolute-in-inline-rtl.html:
- fast/block/positioning/absolute-in-inline-short-ltr.html:
- fast/block/positioning/absolute-in-inline-short-rtl.html:
- fast/block/positioning/auto/006.html:
- fast/inline/continuation-outlines-with-layers.html:
- fast/inline/continuation-outlines.html:
- fast/parser/p-in-scope-expected.txt: Added.
- fast/parser/p-in-scope-strict-expected.txt: Added.
- fast/parser/p-in-scope-strict.html: Added.
- fast/parser/p-in-scope.html: Added.
- fast/parser/resources/p-in-scope.css: Added.
- fast/parser/resources/p-in-scope.js: Added.
- fast/repaint/subtree-root-clip-2.html:
- platform/mac/fast/block/basic/001-expected.txt:
- platform/mac/fast/block/positioning/absolute-in-inline-ltr-2-expected.txt:
- platform/mac/fast/block/positioning/absolute-in-inline-ltr-3-expected.txt:
- platform/mac/fast/block/positioning/absolute-in-inline-ltr-expected.txt:
- platform/mac/fast/block/positioning/absolute-in-inline-rtl-2-expected.txt:
- platform/mac/fast/block/positioning/absolute-in-inline-rtl-3-expected.txt:
- platform/mac/fast/block/positioning/absolute-in-inline-rtl-expected.txt:
- platform/mac/fast/block/positioning/absolute-in-inline-short-ltr-expected.txt:
- platform/mac/fast/block/positioning/absolute-in-inline-short-rtl-expected.txt:
- platform/mac/fast/block/positioning/auto/006-expected.txt:
- platform/mac/fast/inline/continuation-outlines-expected.txt:
- platform/mac/fast/inline/continuation-outlines-with-layers-expected.txt:
- platform/mac/fast/repaint/subtree-root-clip-2-expected.txt:
- 11:41 PM Changeset in webkit [34506] by
-
- 8 edits20 adds in trunk
WebCore:
008-06-11 Adam Barth <abarth@webkit.org>
Reviewed by Sam Weinig.
Update the security context of a document after calling document.open
or document.write. Basically, when a script open()s a document, the
document gains the security context of the script. Our implementation
now matches Firefox 3 on all these tests.
Tests: http/tests/security/aboutBlank/security-context-alias.html
http/tests/security/aboutBlank/security-context-grandchildren-alias.html
http/tests/security/aboutBlank/security-context-grandchildren.html
http/tests/security/aboutBlank/security-context-window-open.html
http/tests/security/aboutBlank/security-context-with-base-tag.html
http/tests/security/aboutBlank/security-context-write.html
http/tests/security/aboutBlank/security-context-writeln.html
http/tests/security/aboutBlank/security-context.html
http/tests/security/cookies/document-open.html
- bindings/js/JSDOMWindowBase.cpp: (WebCore::createWindow):
- bindings/js/JSHTMLDocumentCustom.cpp: (WebCore::JSHTMLDocument::open): (WebCore::JSHTMLDocument::write): (WebCore::JSHTMLDocument::writeln):
- dom/Document.cpp: (WebCore::Document::open): (WebCore::Document::write): (WebCore::Document::writeln):
- dom/Document.h:
LayoutTests:
008-06-11 Adam Barth <abarth@webkit.org>
Reviewed by Sam Weinig.
Tests for the security context of about:blank documents. These test
results all match Firefox 3.
- fast/dom/resource-locations-in-created-html-document.html:
- http/tests/security/aboutBlank/resources/iframe-with-about-blank-children.html: Added.
- http/tests/security/aboutBlank/security-context-alias-expected.txt: Added.
- http/tests/security/aboutBlank/security-context-alias.html: Added.
- http/tests/security/aboutBlank/security-context-expected.txt: Added.
- http/tests/security/aboutBlank/security-context-grandchildren-alias-expected.txt: Added.
- http/tests/security/aboutBlank/security-context-grandchildren-alias.html: Added.
- http/tests/security/aboutBlank/security-context-grandchildren-expected.txt: Added.
- http/tests/security/aboutBlank/security-context-grandchildren.html: Added.
- http/tests/security/aboutBlank/security-context-window-open-expected.txt: Added.
- http/tests/security/aboutBlank/security-context-window-open.html: Added.
- http/tests/security/aboutBlank/security-context-with-base-tag-expected.txt: Added.
- http/tests/security/aboutBlank/security-context-with-base-tag.html: Added.
- http/tests/security/aboutBlank/security-context-write-expected.txt: Added.
- http/tests/security/aboutBlank/security-context-write.html: Added.
- http/tests/security/aboutBlank/security-context-writeln-expected.txt: Added.
- http/tests/security/aboutBlank/security-context-writeln.html: Added.
- http/tests/security/aboutBlank/security-context.html: Added.
- http/tests/security/aboutBlank/xss-DENIED-navigate-opener-javascript-url-expected.txt:
- http/tests/security/cookies/document-open-expected.txt: Added.
- http/tests/security/cookies/document-open.html: Added.
- 11:41 PM Changeset in webkit [34505] by
-
- 7 edits5 adds in trunk
WebCore:
2008-06-11 Adam Barth <abarth@webkit.org>
Reviewed by Sam Weinig.
Compute the cookie context at the same time as the SecurityOrigin.
Tests: http/tests/security/cookies/create-document.html
http/tests/security/cookies/xmlhttprequest.html
- dom/Document.cpp: (WebCore::Document::cookie): (WebCore::Document::initSecurityOrigin):
- dom/Document.h:
- platform/SecurityOrigin.cpp:
- platform/SecurityOrigin.h:
LayoutTests:
2008-06-11 Adam Barth <abarth@webkit.org>
Reviewed by Sam Weinig.
Test esoteric cookie contexts.
- http/tests/security/cookies/create-document-expected.txt: Added.
- http/tests/security/cookies/create-document.html: Added.
- http/tests/security/cookies/resources/simple.xml: Added.
- http/tests/security/cookies/xmlhttprequest-expected.txt: Added.
- http/tests/security/cookies/xmlhttprequest.html: Added.
- 10:15 PM Changeset in webkit [34504] by
-
- 6 edits2 adds in trunk
WebCore:
2008-06-11 Adam Barth <abarth@webkit.org>
Reviewed and tweaked by Sam Weinig.
Fix for https://bugs.webkit.org/show_bug.cgi?id=19242
Data URLs should set an Access-Control-Origin of "null"
Correctly generate "null" as the value of the Access-Control-Origin
header for cross-site XMLHttpRequests for data URLs.
Test: http/tests/xmlhttprequest/access-control-basic-allow-access-control-origin-header-data-url.html
- platform/SecurityOrigin.cpp: (WebCore::SecurityOrigin::toString):
- xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::accessControlOrigin): (WebCore::XMLHttpRequest::crossSiteAccessRequest): (WebCore::XMLHttpRequest::handleAsynchronousMethodCheckResult):
- xml/XMLHttpRequest.h:
LayoutTests:
2008-06-11 Adam Barth <abarth@webkit.org>
Reviewed and tweaked by Sam Weinig.
Test for https://bugs.webkit.org/show_bug.cgi?id=19242
Data URLs should set an Access-Control-Origin of "null"
Test that we correctly generate "null" as the value for the
Access-Control-Origin header when making requests from a data URL.
- http/tests/xmlhttprequest/access-control-basic-allow-access-control-origin-header-data-url-expected.txt: Added.
- http/tests/xmlhttprequest/access-control-basic-allow-access-control-origin-header-data-url.html: Added.
- http/tests/xmlhttprequest/resources/access-control-basic-allow-access-control-origin-header.cgi:
- 7:51 PM Changeset in webkit [34503] by
-
- 1 edit in trunk/LayoutTests/http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-uppercase-expected.txt
Add missing newline
- 7:26 PM Changeset in webkit [34502] by
-
- 2 edits in trunk/LayoutTests
2008-06-11 Sam Weinig <sam@webkit.org>
Update results on non-leopard platforms to fix the buildbot.
- http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-uppercase-expected.txt:
- 7:19 PM Changeset in webkit [34501] by
-
- 1 edit in trunk/LayoutTests/http/tests/xmlhttprequest/resources/access-control-basic-allow-star.cgi
Set executable bit
- 5:33 PM Changeset in webkit [34500] by
-
- 5 edits3 adds in trunk
2008-06-11 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Bug 19498: REGRESSION (r34497): crash while loading GMail
<https://bugs.webkit.org/show_bug.cgi?id=19498>
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitJumpIfTrueOptimized): (KJS::CodeGenerator::emitJumpIfTrue):
- VM/CodeGenerator.h:
- kjs/nodes.cpp: (KJS::DoWhileNode::emitCode): (KJS::WhileNode::emitCode): (KJS::ForNode::emitCode): (KJS::CaseBlockNode::emitCodeForBlock):
LayoutTests:
- fast/js/logical-or-jless-expected.txt: Added.
- fast/js/logical-or-jless.html: Added.
- fast/js/resources/logical-or-jless.js: Added.
- 3:01 PM Changeset in webkit [34499] by
-
- 8 edits in trunk/JavaScriptCore
2008-06-11 Darin Adler <Darin Adler>
Reviewed by Maciej.
- a little bit of cleanup and prep for some upcoming optimizations
- JavaScriptCore.exp: Re-sorted this file (with sort command line tool).
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump): Fixed printf to avoid warnings -- to use %lu we need to make sure the type is unsigned long.
- kjs/object.cpp: (KJS::Error::create): Eliminated unused error names array, and also put the strings into the code since there was already a switch statment. This also avoids having to contemplate a hypothetical access past the end of the array.
- kjs/object.h: Got rid of errorNames.
- kjs/property_slot.cpp: Deleted unused ungettableGetter.
- kjs/property_slot.h: Ditto.
- wtf/AlwaysInline.h: Added LIKELY alongside UNLIKELY.
- 12:55 PM Changeset in webkit [34498] by
-
- 3 edits3 adds in trunk
WebCore:
2008-06-11 Sam Weinig <sam@webkit.org>
Reviewed by Adam Roben.
Add support for "*" wildcarding for Access-Control.
Test: http/tests/xmlhttprequest/access-control-basic-allow-star.html
- xml/AccessItem.cpp: (WebCore::AccessItem::AccessItem): (WebCore::AccessItem::parseAccessItem): (WebCore::AccessItem::matches):
LayoutTests:
2008-06-11 Sam Weinig <sam@webkit.org>
Reviewed by Adam Roben.
Add basic test for "*" wildcarding for Access-Control.
- http/tests/xmlhttprequest/access-control-basic-allow-star-expected.txt: Added.
- http/tests/xmlhttprequest/access-control-basic-allow-star.html: Added.
- http/tests/xmlhttprequest/resources/access-control-basic-allow-star.cgi: Added.
- 12:48 PM Changeset in webkit [34497] by
-
- 7 edits in trunk/JavaScriptCore
2008-06-11 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Darin.
Bug 19457: Create fused opcodes for tests and conditional jumps
<https://bugs.webkit.org/show_bug.cgi?id=19457>
Add a new jless instruction, and modify the code generator to emit it
instead of the pair (less, jtrue).
Gives a 3.6% improvement on SunSpider.
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::CodeGenerator): (KJS::CodeGenerator::emitOpcode): (KJS::CodeGenerator::retrieveLastBinaryOp): (KJS::CodeGenerator::rewindBinaryOp): (KJS::CodeGenerator::emitJump): (KJS::CodeGenerator::emitJumpIfTrue): (KJS::CodeGenerator::emitJumpIfFalse): (KJS::CodeGenerator::emitMove): (KJS::CodeGenerator::emitNot): (KJS::CodeGenerator::emitEqual): (KJS::CodeGenerator::emitNotEqual): (KJS::CodeGenerator::emitStrictEqual): (KJS::CodeGenerator::emitNotStrictEqual): (KJS::CodeGenerator::emitLess): (KJS::CodeGenerator::emitLessEq): (KJS::CodeGenerator::emitPreInc): (KJS::CodeGenerator::emitPreDec): (KJS::CodeGenerator::emitPostInc): (KJS::CodeGenerator::emitPostDec): (KJS::CodeGenerator::emitToJSNumber): (KJS::CodeGenerator::emitNegate): (KJS::CodeGenerator::emitAdd): (KJS::CodeGenerator::emitMul): (KJS::CodeGenerator::emitDiv): (KJS::CodeGenerator::emitMod): (KJS::CodeGenerator::emitSub): (KJS::CodeGenerator::emitLeftShift): (KJS::CodeGenerator::emitRightShift): (KJS::CodeGenerator::emitUnsignedRightShift): (KJS::CodeGenerator::emitBitAnd): (KJS::CodeGenerator::emitBitXOr): (KJS::CodeGenerator::emitBitOr): (KJS::CodeGenerator::emitBitNot): (KJS::CodeGenerator::emitInstanceOf): (KJS::CodeGenerator::emitTypeOf): (KJS::CodeGenerator::emitIn): (KJS::CodeGenerator::emitLoad): (KJS::CodeGenerator::emitNewObject): (KJS::CodeGenerator::emitNewArray): (KJS::CodeGenerator::emitResolve): (KJS::CodeGenerator::emitGetScopedVar): (KJS::CodeGenerator::emitPutScopedVar): (KJS::CodeGenerator::emitResolveBase): (KJS::CodeGenerator::emitResolveWithBase): (KJS::CodeGenerator::emitResolveFunction): (KJS::CodeGenerator::emitGetById): (KJS::CodeGenerator::emitPutById): (KJS::CodeGenerator::emitPutGetter): (KJS::CodeGenerator::emitPutSetter): (KJS::CodeGenerator::emitDeleteById): (KJS::CodeGenerator::emitGetByVal): (KJS::CodeGenerator::emitPutByVal): (KJS::CodeGenerator::emitDeleteByVal): (KJS::CodeGenerator::emitPutByIndex): (KJS::CodeGenerator::emitNewFunction): (KJS::CodeGenerator::emitNewRegExp): (KJS::CodeGenerator::emitNewFunctionExpression): (KJS::CodeGenerator::emitCall): (KJS::CodeGenerator::emitReturn): (KJS::CodeGenerator::emitEnd): (KJS::CodeGenerator::emitConstruct): (KJS::CodeGenerator::emitPushScope): (KJS::CodeGenerator::emitPopScope): (KJS::CodeGenerator::emitDebugHook): (KJS::CodeGenerator::emitComplexJumpScopes): (KJS::CodeGenerator::emitJumpScopes): (KJS::CodeGenerator::emitNextPropertyName): (KJS::CodeGenerator::emitGetPropertyNames): (KJS::CodeGenerator::emitCatch): (KJS::CodeGenerator::emitThrow): (KJS::CodeGenerator::emitNewError): (KJS::CodeGenerator::emitJumpSubroutine): (KJS::CodeGenerator::emitSubroutineReturn):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Opcode.cpp: (KJS::):
- VM/Opcode.h:
- 12:37 PM Changeset in webkit [34496] by
-
- 3 edits in trunk/JavaScriptCore
2008-06-11 Darin Adler <Darin Adler>
Reviewed by Alexey.
- fix https://bugs.webkit.org/show_bug.cgi?id=19442 JavaScript array implementation doesn't maintain m_numValuesInVector when sorting
- kjs/array_instance.cpp: (KJS::ArrayInstance::checkConsistency): Added. Empty inline version for when consistency checks are turned off. (KJS::ArrayInstance::ArrayInstance): Check consistency after construction. (KJS::ArrayInstance::~ArrayInstance): Check consistency before destruction. (KJS::ArrayInstance::put): Check consistency before and after. (KJS::ArrayInstance::deleteProperty): Ditto. (KJS::ArrayInstance::setLength): Ditto. (KJS::compareByStringPairForQSort): Use typedef for clarity. (KJS::ArrayInstance::sort): Check consistency before and after. Also broke the loop to set up sorting into two separate passes. Added FIXMEs about various exception safety issues. Added code to set m_numValuesInVector after sorting. (KJS::ArrayInstance::compactForSorting): Ditto.
- kjs/array_instance.h: Added a definition of an enum for the types of consistency check and a declaration of the consistency checking function.
- 11:30 AM Changeset in webkit [34495] by
-
- 6 edits2 adds in trunk
WebCore:
2008-06-11 Justin Garcia <justin.garcia@apple.com>
Reviewed by Eric.
<https://bugs.webkit.org/show_bug.cgi?id=19455>
Crash at RenderObject::childAt during JustifyCenter
- editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::surroundNodeRangeWithElement): Added a FIXME.
- editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::moveParagraphs): If we're removing a line break that consists of a single '\n' in a text node by itself, remove the whole text node instead of just emptying it out.
- editing/Selection.cpp: (WebCore::Selection::validate): Added a FIXME about canonicalizing to positions that aren't candidates.
- editing/SelectionController.cpp: (WebCore::SelectionController::nodeWillBeRemoved): When the base and/or extent are about to be removed but the start and end aren't, change the base and extent to the start and end, but don't re-validate the selection, since doing so could move the start and end into the node that is about to be removed.
LayoutTests:
2008-06-11 Justin Garcia <justin.garcia@apple.com>
Reviewed by Eric.
<https://bugs.webkit.org/show_bug.cgi?id=19455>
Crash at RenderObject::childAt during JustifyCenter
- editing/execCommand/19455-expected.txt: Added.
- editing/execCommand/19455.html: Added.
- 11:27 AM Changeset in webkit [34494] by
-
- 2 edits in trunk/WebCore
<rdar://problem/5990049> AXTextMarker bytes getting messed up when getting AXTextMarkerRangeForUnorderedTextMarkersParameterizedAttribute
- 8:19 AM Changeset in webkit [34493] by
-
- 2 edits in trunk/WebCore
2008-06-11 Adriaan de Groot <groot@kde.org>
Reviewed by Simon.
Fix compilation with Sun Studio 12
It seems like the compiler instantiates a different template version. I.e.,
instead of parseUASheet<char [nnnn]>, it's probably instantiating
parseUASheet<char *>, which then passes 4 or 8 as the size value.
- 8:10 AM Changeset in webkit [34492] by
-
- 3 edits in trunk/WebCore
Benjamin Meyer <bmeyer@trolltech.com>
Fixed a crash when a slot connect to QWebPage::unsupportedContent would show a
modal dialog with an event loop.
We have a queued connection to various signals in the QNetworkReply, for which
it can happen that after releasing the QNetworkReply and disconnecting from it
a slot connected to one of the signals may still be called due to a posted
MetaCall event due to the queued connections. This patch removes the posted
events explicitly, fixes the coding style a bit and makes sure the same happens
when abort() is called.
- 8:10 AM Changeset in webkit [34491] by
-
- 2 edits in trunk/WebKit/qt
Ariya Hidayat <ariya.hidayat@trolltech.com>
Fix left-click and middle-click mouse event are not properly accepted.
When copying or pasting text using left or middle-click, the event must be
accepted so that it will not be potentially processed further by the parent
and/or sub-classed widget.
- 7:57 AM Disk Cache edited by
- (diff)
- 7:56 AM Changeset in webkit [34490] by
-
- 2 edits in trunk/WebKit/qt
Ariya Hidayat <ariya.hidayat@trolltech.com>
Fix input element does not accept character typed in using AltGr.
EditorClient is modified to catch AltGr and Ctrl+Alt key combination.
This fixes http://trolltech.com/developer/task-tracker/index_html?id=207050&method=entry
- 7:56 AM Disk Cache created by
Jun 10, 2008:
- 10:51 PM Changeset in webkit [34489] by
-
- 2 edits in trunk/WebKit/wx
wx Linux build fix. Only use -undefined dynamic_lookup flag under Mac.
- 10:18 PM Changeset in webkit [34488] by
-
- 2 edits in trunk/WebCore
wx build fix. Reorder include dirs so that WebCore/html/HTMLElementFactory.h appears before WebCore/DerivedSources/HTMLElementFactory.h. (See note in commit for more details. This is probably not the right fix, but this will get us buildinguntil the right fix is in place.)
- 10:16 PM Changeset in webkit [34487] by
-
- 2 edits in trunk/JavaScriptCore
wx build fix. Link against libedit on Mac since HAVE(READLINE) is defined there.
- 2:31 PM Changeset in webkit [34486] by
-
- 2 edits in trunk/LayoutTests
- fix the text encoding in this test
- editing/selection/move-left-right.html:
- 2:06 PM Changeset in webkit [34485] by
-
- 5 edits in trunk/WebCore
Reviewed by mjs.
Fix disconnected event listener crasher
m_disconnectedNodesWithEventListeners not updated when nodes adopted
https://bugs.webkit.org/show_bug.cgi?id=19451
I failed to find a way to make this crash DRT, I can crash Debug Safari consistently.
- dom/EventTarget.cpp: (WebCore::EventTarget::willMoveToNewOwnerDocument): (WebCore::EventTarget::didMoveToNewOwnerDocument):
- dom/EventTarget.h:
- dom/EventTargetNode.cpp: (WebCore::EventTargetNode::willMoveToNewOwnerDocument): (WebCore::EventTargetNode::didMoveToNewOwnerDocument):
- dom/EventTargetNode.h:
- 1:49 PM Changeset in webkit [34484] by
-
- 6 edits in trunk/WebCore
WebCore:
2008-06-10 Julien Chaffraix <jchaffraix@webkit.org>
Reviewed by Eric.
Part of bug 19200: *.in files should embed more information
https://bugs.webkit.org/show_bug.cgi?id=19200
Move more parameters to the XML files.
- dom/make_names.pl:
- html/HTMLAttributeNames.in:
- html/HTMLTagNames.in:
- svg/svgattrs.in:
- svg/svgtags.in:
- 9:56 AM Changeset in webkit [34483] by
-
- 2 edits in trunk/WebKitSite
2008-06-10 Maciej Stachowiak <mjs@apple.com>
Not reviewed.
- tweak newly added markup.
- blog/wp-content/themes/webkit/header.php:
- 9:54 AM Changeset in webkit [34482] by
-
- 2 edits in trunk/WebKitTools
2008-06-10 Joerg Bornemann <joerg.bornemann@trolltech.com>
Reviewed by Simon.
For the qmake based build make it possible to build against makespecs where
QMAKE_CC is defined in a configuration file included from qmake.conf.
- 9:47 AM Changeset in webkit [34481] by
-
- 5 edits in trunk/WebKit/qt
2008-05-26 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>
Reviewed by Simon.
Implemented the QWebPage::editable property.
Small documentation fixes by Simon.
- 8:59 AM ApplicationsGtk edited by
- Add GIMP (diff)
- 7:54 AM Changeset in webkit [34480] by
-
- 2 edits in trunk/JavaScriptCore
Reviewed by Darin.
https://bugs.webkit.org/show_bug.cgi?id=16503
match limit takes at least 13% of the time on the SunSpider regexp-dna test
Make the limit test slightly more efficient. It is not clear how much of a win it is,
as the improvement on regexp-dna varies from 2.3% to 0.6% depending on what revision I
apply the patch to. Today, the win on regexp-dna was minimal, but the total win was whopping
0.5%, due to random code generation changes.
- pcre/pcre_exec.cpp: (match): Avoid loading a constant on each iteration.
- 7:22 AM Changeset in webkit [34479] by
-
- 2 edits1 add in trunk/WebKitSite
2008-06-10 Maciej Stachowiak <mjs@apple.com>
Rubber stamped by Adele.
- add short title and multisize icon
- blog/wp-content/themes/webkit/header.php:
- images/surfin-safari.icns: Added.
- 1:58 AM Changeset in webkit [34478] by
-
- 3 edits in trunk/WebKit/qt
2008-06-09 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon
Make sure web action in context menus have the right enablement,
while not messing up other web actions not included in the menu.
- 12:48 AM Changeset in webkit [34477] by
-
- 7 edits in trunk/WebKit/gtk
Apply GTK coding style to WebKit Gtk public headers
https://bugs.webkit.org/show_bug.cgi?id=16676
Reviewed by Alp Toker and Darin Adler.
Jun 9, 2008:
- 10:42 PM Changeset in webkit [34476] by
-
- 4 edits in trunk
2008-06-09 Alp Toker <alp@nuanti.com>
gcc3/autotools build fix. Add explicit -O2 -fno-strict-aliasing to
each of the tools since these are no longer set globally.
- 9:58 PM Changeset in webkit [34475] by
-
- 6 edits in trunk
WebCore:
Reviewed by Justin Garcia.
- fix https://bugs.webkit.org/show_bug.cgi?id=19443 <rdar://problem/5994544> REGRESSION (r32531-r32652): Moving the insertion point past a newline inserted in a text area skips the next character
Tests added to editing/selection/move-left-right.html
- editing/VisiblePosition.cpp: (WebCore::VisiblePosition::leftVisuallyDistinctCandidate): When falling back from visual to logical movement, restart at the original position rather than an intermediate position. (WebCore::VisiblePosition::rightVisuallyDistinctCandidate): Ditto.
LayoutTests:
Reviewed by Justin Garcia.
- update test for https://bugs.webkit.org/show_bug.cgi?id=19443 <rdar://problem/5994544> REGRESSION (r32531-r32652): Moving the insertion point past a newline inserted in a text area skips the next character
- editing/selection/move-left-right-expected.txt:
- editing/selection/move-left-right.html:
- platform/mac/editing/selection/move-left-right-expected.txt:
- 8:42 PM Changeset in webkit [34474] by
-
- 2 edits in tags/Safari-5525.18/JavaScriptCore
Merge r34204.
- 8:41 PM Changeset in webkit [34473] by
-
- 3 edits3 adds in branches/Safari-3-1-branch
Merge r34204.
- 3:54 PM Changeset in webkit [34472] by
-
- 2 edits in trunk/WebCore
2008-06-07 Brent Fulgham <bfulgham@gmail.com>
Reviewed by Maciej.
Windows build fix.
- platform/graphics/win/QTMovieWin.cpp: (initializeSupportedTypes):
- 2:02 PM Changeset in webkit [34471] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-09 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Sam.
Add an include for readline/history.h to fix the build for Darwin users
with the GNU readline library installed. Also, clean up the style of
the HAVE(READLINE) check.
- kjs/testkjs.cpp: (runInteractive):
- 10:10 AM Changeset in webkit [34470] by
-
- 4 edits in trunk/JavaScriptCore
2008-06-09 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Darin.
Bug 17531: Add interactive mode to testkjs
<https://bugs.webkit.org/show_bug.cgi?id=17531>
This is a cleaned up version of Sam's earlier patch to add an
interactive mode to testkjs.
Readline support is only enabled on Darwin platforms for now, but
other ports can enable it by defining HAVE_READLINE in kjs/config.h.
- JavaScriptCore.xcodeproj/project.pbxproj:
- kjs/config.h:
- kjs/testkjs.cpp: (Options::Options): (runWithScripts): (runInteractive): (printUsageStatement): (parseArguments): (kjsmain):
- 7:58 AM Changeset in webkit [34469] by
-
- 2 edits in trunk/WebKit/qt
2008-06-09 Benjamin C Meyer <ben@meyerhome.net>
Reviewed by Simon
Add Shift-Space shortcut to go up one screen, the opposite of Space
which goes down one screen.
- 5:55 AM Changeset in webkit [34468] by
-
- 2 edits in trunk/WebCore
2008-06-09 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon
Use the text color from QStyle when styling form elements.
- 3:59 AM Changeset in webkit [34467] by
-
- 8 edits in trunk/WebCore
WebCore:
2008-06-07 Julien Chaffraix <jchaffraix@webkit.org>
Reviewed by Darin Adler.
Part of bug 19200: *.in files should embed more information
https://bugs.webkit.org/show_bug.cgi?id=19200
- Added a parameters hash that will hold the parameters we used to give in the command line.
- Added "tags" / "attrs" XML tag parsing to fill the parameters hash.
- Moved namespace, namespaceURI, namespacePrefix and cppNamespace in the *.in files.
- dom/make_names.pl:
- html/HTMLAttributeNames.in:
- html/HTMLTagNames.in:
- svg/svgattrs.in:
- svg/svgtags.in:
- svg/xlinkattrs.in:
- xml/xmlattrs.in:
- 12:56 AM Changeset in webkit [34466] by
-
- 2 edits in trunk/WebCore
2008-06-09 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Darin.
Incorporated Darin's comments to bug 18965.
- 12:30 AM Changeset in webkit [34465] by
-
- 1 edit14 copies37 deletes in trunk/LayoutTests
Backout 34464. The build bot didn't like the new tests.
Jun 8, 2008:
- 11:26 PM Changeset in webkit [34464] by
-
- 1 edit37 adds14 deletes in trunk/LayoutTests
2008-06-08 Adam Barth <abarth@webkit.org>
Reviewed by Darin Alder.
Improve coverage of our frame navigation test cases. This revealed a
bug in plugin navigation (we aren't setting the opener properly), but
that's probably better addressed in a separate patch.
- http/tests/security/frameNavigation/navigation-ALLOWED-child-expected.txt: Added.
- http/tests/security/frameNavigation/navigation-ALLOWED-child.html: Added.
- http/tests/security/frameNavigation/navigation-ALLOWED-descendant-expected.txt: Added.
- http/tests/security/frameNavigation/navigation-ALLOWED-descendant.html: Added.
- http/tests/security/frameNavigation/navigation-ALLOWED-not-opener-expected.txt: Added.
- http/tests/security/frameNavigation/navigation-ALLOWED-not-opener.html: Added.
- http/tests/security/frameNavigation/navigation-ALLOWED-opener-child-expected.txt: Added.
- http/tests/security/frameNavigation/navigation-ALLOWED-opener-child.html: Added.
- http/tests/security/frameNavigation/navigation-ALLOWED-popup-expected.txt: Added.
- http/tests/security/frameNavigation/navigation-ALLOWED-popup.html: Added.
- http/tests/security/frameNavigation/navigation-ALLOWED-sibling-same-parent-expected.txt: Added.
- http/tests/security/frameNavigation/navigation-ALLOWED-sibling-same-parent.html: Added.
- http/tests/security/frameNavigation/navigation-DENIED-popup-child-form-expected.txt: Added.
- http/tests/security/frameNavigation/navigation-DENIED-popup-child-form.html: Added.
- http/tests/security/frameNavigation/navigation-DENIED-popup-child-hyperlink-expected.txt: Added.
- http/tests/security/frameNavigation/navigation-DENIED-popup-child-hyperlink.html: Added.
- http/tests/security/frameNavigation/navigation-DENIED-popup-child-location-expected.txt: Added.
- http/tests/security/frameNavigation/navigation-DENIED-popup-child-location.html: Added.
- http/tests/security/frameNavigation/navigation-DENIED-popup-child-open-expected.txt: Added.
- http/tests/security/frameNavigation/navigation-DENIED-popup-child-open.html: Added.
- http/tests/security/frameNavigation/navigation-DENIED-popup-child-plugin-expected.txt: Added.
- http/tests/security/frameNavigation/navigation-DENIED-popup-child-plugin.html: Added.
- http/tests/security/frameNavigation/navigation-DENIED-sibling-form-expected.txt: Added.
- http/tests/security/frameNavigation/navigation-DENIED-sibling-form.html: Added.
- http/tests/security/frameNavigation/navigation-DENIED-sibling-hyperlink-expected.txt: Added.
- http/tests/security/frameNavigation/navigation-DENIED-sibling-hyperlink.html: Added.
- http/tests/security/frameNavigation/navigation-DENIED-sibling-location-expected.txt: Added.
- http/tests/security/frameNavigation/navigation-DENIED-sibling-location.html: Added.
- http/tests/security/frameNavigation/navigation-DENIED-sibling-open-expected.txt: Added.
- http/tests/security/frameNavigation/navigation-DENIED-sibling-open.html: Added.
- http/tests/security/frameNavigation/navigation-DENIED-sibling-plugin-expected.txt: Added.
- http/tests/security/frameNavigation/navigation-DENIED-sibling-plugin.html: Added.
- http/tests/security/frameNavigation/resources/frame-with-link-to-navigate.html: Removed.
- http/tests/security/frameNavigation/resources/frame-with-plugin-to-navigate.html: Removed.
- http/tests/security/frameNavigation/resources/iframe-that-performs-parent-navigation.html: Removed.
- http/tests/security/frameNavigation/resources/iframe-with-inner-frame-on-foreign-domain.html: Removed.
- http/tests/security/frameNavigation/resources/iframe.html: Added.
- http/tests/security/frameNavigation/resources/lib.js: Added.
- http/tests/security/frameNavigation/resources/navigation-changed-iframe.html: Removed.
- http/tests/security/frameNavigation/resources/navigation-happened.html: Removed.
- http/tests/security/frameNavigation/resources/open.html: Added.
- http/tests/security/frameNavigation/resources/ready.html: Added.
- http/tests/security/frameNavigation/resources/target.html: Added.
- http/tests/security/frameNavigation/xss-ALLOWED-parent-navigation-change-expected.txt: Removed.
- http/tests/security/frameNavigation/xss-ALLOWED-parent-navigation-change.html: Removed.
- http/tests/security/frameNavigation/xss-ALLOWED-targeted-subframe-navigation-change-expected.txt: Removed.
- http/tests/security/frameNavigation/xss-ALLOWED-targeted-subframe-navigation-change.html: Removed.
- http/tests/security/frameNavigation/xss-DENIED-plugin-navigation-expected.txt: Removed.
- http/tests/security/frameNavigation/xss-DENIED-plugin-navigation.html: Removed.
- http/tests/security/frameNavigation/xss-DENIED-targeted-link-navigation-expected.txt: Removed.
- http/tests/security/frameNavigation/xss-DENIED-targeted-link-navigation.html: Removed.
- 11:26 PM Changeset in webkit [34463] by
-
- 4 edits1 copy1 add in trunk/LayoutTests
2008-06-08 Adam Barth <abarth@webkit.org>
Reviewed by Darin Adler.
Fix tests not to rely on broken javascript URL behavior.
- fast/events/event-listener-html-non-html-confusion.html:
- fast/replaced/image-map-bug16782-expected.txt: Added.
- fast/replaced/image-map-bug16782.html: Added.
- fast/replaced/image-map.html:
- svg/custom/prevent-default.svg:
- 10:20 PM Changeset in webkit [34462] by
-
- 3 edits in trunk/LayoutTests
2008-06-08 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Bug 17931: Incorrect decompilation with |new|
<https://bugs.webkit.org/show_bug.cgi?id=17931>
This bug was fixed by SquirrelFish, but we should add a test.
- fast/js/function-toString-parentheses-expected.txt:
- fast/js/resources/function-toString-parentheses.js:
- 9:47 PM Changeset in webkit [34461] by
-
- 3 edits1 add in trunk/LayoutTests
2008-06-08 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Bug 17932: "ASSERTION FAILED: type != Continue" with do/while and try/finally
<https://bugs.webkit.org/show_bug.cgi?id=17932>
This bug was fixed by SquirrelFish, but we should add a test, as well
as tests for related issues found while developing SquirrelFish.
- fast/js/continue-break-multiple-labels-expected.txt:
- fast/js/continue-break-multiple-labels.html:
- fast/js/resources/continue-break-multiple-labels.js: Added.
- 9:37 PM Changeset in webkit [34460] by
-
- 3 edits11 adds in trunk
WebCore:
2008-06-08 Adam Barth <abarth@webkit.org>
Reviewed by Darin Adler.
Inherit document.URL from parent's document.URL, not document.baseURI.
Tests: http/tests/security/cookies/assign-document-url.html
http/tests/security/cookies/base-about-blank.html
http/tests/security/cookies/base-tag.html
http/tests/security/cookies/basic.html
- dom/Document.cpp: (WebCore::Document::open):
LayoutTests:
2008-06-08 Adam Barth <abarth@webkit.org>
Reviewed by Darin Alder.
Add a number of tests for document.cookie access.
- http/tests/security/cookies: Added.
- http/tests/security/cookies/assign-document-url-expected.txt: Added.
- http/tests/security/cookies/assign-document-url.html: Added.
- http/tests/security/cookies/base-about-blank-expected.txt: Added.
- http/tests/security/cookies/base-about-blank.html: Added.
- http/tests/security/cookies/base-tag-expected.txt: Added.
- http/tests/security/cookies/base-tag.html: Added.
- http/tests/security/cookies/basic-expected.txt: Added.
- http/tests/security/cookies/basic.html: Added.
- http/tests/security/cookies/resources: Added.
- http/tests/security/cookies/resources/set-a-cookie.html: Added.
- 8:39 PM Changeset in webkit [34459] by
-
- 2 edits in trunk/WebCore
Reviewed by Darin Adler.
Fix font asserts in wx port. Our computeHash function should generate the same hash for two identical fonts which are different objects, which it wasn't doing before.
https://bugs.webkit.org/show_bug.cgi?id=19310
- 7:12 PM Changeset in webkit [34458] by
-
- 3 edits2 adds in trunk
WebCore:
Reviewed by Darin Adler.
- fix <rdar://problem/5961977> Crash in RenderBlock::layoutColumns()
Test: fast/multicol/content-height-zero-crash.html
- rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutColumns): Changed to not keep creating overflow columns that have zero height, because they do not help with fitting content in.
LayoutTests:
- test for <rdar://problem/5961977> Crash in RenderBlock::layoutColumns()
Reviewed by Darin Adler.
- fast/multicol/content-height-zero-crash-expected.txt: Added.
- fast/multicol/content-height-zero-crash.html: Added.
- 5:57 PM Changeset in webkit [34457] by
-
- 7 edits in trunk
2008-06-08 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Darin.
Bug 19346: REGRESSION: Mootools 1.2 Class inheritance broken in post-SquirrelFish merge
<https://bugs.webkit.org/show_bug.cgi?id=19346>
A check for whether a function's caller is eval code accidentally included
the case where the caller's caller is native code. Add a CodeType field to
CodeBlock and use this for the eval caller test instead.
- VM/CodeBlock.h: (KJS::CodeBlock::CodeBlock): (KJS::ProgramCodeBlock::ProgramCodeBlock): (KJS::EvalCodeBlock::EvalCodeBlock):
- VM/Machine.cpp: (KJS::getCallerFunctionOffset):
- kjs/nodes.cpp: (KJS::FunctionBodyNode::generateCode): (KJS::ProgramNode::generateCode):
LayoutTests:
- fast/js/function-dot-arguments-and-caller-expected.txt:
- fast/js/function-dot-arguments-and-caller.html:
- 3:18 PM ApplicationsGtk edited by
- Add NewsKit and Galaxium (diff)
- 1:57 PM Changeset in webkit [34456] by
-
- 2 edits1 add in trunk/WebCore
Fix Bug 18837: Database panel fails to display tables if any value is NULL
Reviewed by Darin Adler.
Test: manual-tests/inspector/display-sql-null.html
- manual-tests/inspector/display-sql-null.html: Added.
- page/inspector/DatabasesPanel.js: (WebInspector.DatabasesPanel.prototype.dataGridForResult): Convert all objects to strings before operating on them.
- 1:57 PM Changeset in webkit [34455] by
-
- 2 edits1 add in trunk/WebCore
Fix Bug 19438: Transaction errors are never displayed in database query view
Reviewed by Darin Adler.
Test: manual-tests/inspector/display-sql-transaction-error.html
- manual-tests/inspector/display-sql-transaction-error.html: Added.
- page/inspector/DatabaseQueryView.js: (WebInspector.DatabaseQueryView.prototype._enterKeyPressed): Use _executeSqlError as the error callback for executeSql. (WebInspector.DatabaseQueryView.prototype._queryError): Changed to only take two parameters. This matches what we'll be passed if db.transaction fails. (WebInspector.DatabaseQueryView.prototype._executeSqlError): Added. Calls through to _queryError.
- 1:36 PM Changeset in webkit [34454] by
-
- 3 edits in trunk/WebCore
2008-06-08 Dirk Schulze <vbs85@gmx.de>
Reviewed by Eric Seidel.
https://bugs.webkit.org/show_bug.cgi?id=18840
[CAIRO] Clipping-support for SVG
Support for clipping in SVG/Cairo and fixes transformation of paths.
- platform/graphics/cairo/PathCairo.cpp: (WebCore::Path::transform):
- svg/graphics/cairo/SVGResourceClipperCairo.cpp: (WebCore::SVGResourceClipper::applyClip):
- 1:33 PM Changeset in webkit [34453] by
-
- 2 edits in trunk/WebCore
2008-06-08 Dirk Schulze <vbs85@gmx.de>
Reviewed by Eric Seidel.
https://bugs.webkit.org/show_bug.cgi?id=18663
Add text-stroke support to Cairo.
- platform/graphics/cairo/FontCairo.cpp: (WebCore::Font::drawGlyphs):
- 1:30 PM Changeset in webkit [34452] by
-
- 7 edits3 adds in trunk
WebCore:
2008-06-08 Vincent Ricard <magic@magicninja.org>
Reviewed by Darin.
https://bugs.webkit.org/show_bug.cgi?id=16489
WebKit does not support ElementTraversal specification
Tests: fast/dom/Element/element-traversal.html
- dom/Element.cpp: (WebCore::Element::firstElementChild): (WebCore::Element::lastElementChild): (WebCore::Element::previousElementSibling): (WebCore::Element::nextElementSibling): (WebCore::Element::childElementCount):
- dom/Element.h:
- dom/Element.idl:
LayoutTests:
2008-06-08 Vincent Ricard <magic@magicninja.org>
Reviewed by Darin.
test cases for https://bugs.webkit.org/show_bug.cgi?id=16489
WebKit does not support ElementTraversal specification
- fast/dom/Element/element-traversal-expected.txt: Added.
- fast/dom/Element/element-traversal.html: Added.
- fast/dom/Element/resources/element-traversal.js: Added.
- fast/dom/domListEnumeration-expected.txt: Updated since Element now has 5 new properties. It would be good to rewrite this test so it doesn't have to be updated every time we add a property to Node or Element.
- fast/dom/resources/domListEnumeration.js: Ditto.
- 1:01 PM Changeset in webkit [34451] by
-
- 4 edits in trunk
WebCore:
2008-06-08 Bradley Meck <genisis329@gmail.com>
Reviewed by Darin.
- fix https://bugs.webkit.org/show_bug.cgi?id=17051 safari should treat "url()" as a valid CSS value
Test: fast/css/invalid-cursor-property-crash.html
Changed check for empty url() to be a check for null since url() is valid
CSS even if it is empty.
- css/CSSParser.cpp: (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseFillImage): (WebCore::CSSParser::parseBorderImage):
LayoutTests:
2008-06-08 Bradley Meck <genisis329@gmail.com>
Reviewed and tweaked by Darin.
- test for https://bugs.webkit.org/show_bug.cgi?id=17051 safari should treat "url()" as a valid CSS value
We should really add some more tests for this. One text-only test each for the
four different sites that handle URLs (cursor image, list style image, fill image,
border image) that were fixed. Currently this covers only the cursor image.
- fast/css/invalid-cursor-property-crash.html: Updated test to expect the url() to be expanded into the URL of the document itself. The text of the test is now a bit misleading, but it still tests that it's not a crash, and now it also doubles as a check that url() is handled properly.
- 12:41 PM Changeset in webkit [34450] by
-
- 3 edits3 adds in trunk
WebCore:
2008-06-08 Vincent Ricard <magic@magicninja.org>
Reviewed by Darin.
Bug 18041: DOMNodeRemoved events are sent twice
Test: fast/dom/Node/DOMNodeRemovedEvent.html
- dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChild):
LayoutTests:
2008-06-08 Vincent Ricard <magic@magicninja.org>
Reviewed by Darin.
Test case for
Bug 18041: DOMNodeRemoved events are sent twice
- fast/dom/Node/DOMNodeRemovedEvent-expected.txt: Added.
- fast/dom/Node/DOMNodeRemovedEvent.html: Added.
- fast/dom/Node/resources/DOMNodeRemovedEvent.js: Added.
- 12:31 PM Changeset in webkit [34449] by
-
- 11 edits3 adds in trunk
WebCore:
2008-06-08 Tony Chang <idealisms@gmail.com>
Reviewed by Eric Seidel.
- fix https://bugs.webkit.org/show_bug.cgi?id=18167 there should be no text-drag delay on any platform except for Mac
Move the drag text delay value into the platform specific files.
Test: editing/selection/drag-text-delay.html
- page/EventHandler.cpp:
- page/EventHandler.h:
- page/gtk/EventHandlerGtk.cpp:
- page/mac/EventHandlerMac.mm:
- page/qt/EventHandlerQt.cpp:
- page/win/EventHandlerWin.cpp:
- page/wx/EventHandlerWx.cpp:
LayoutTests:
2008-06-08 Tony Chang <idealisms@gmail.com>
Reviewed by Eric Seidel.
- test for https://bugs.webkit.org/show_bug.cgi?id=18167 there should be no text-drag delay on any platform except for Mac
Also updated two tests which depend on the drag text delay to be greater
than 0 by making them no longer select text before the mouse down.
- editing/selection/drag-text-delay-expected.txt: Added.
- editing/selection/drag-text-delay.html: Added.
- platform/mac/editing/selection/drag-text-delay-expected.txt: Added.
- fast/events/autoscroll.html:
- fast/forms/input-readonly-autoscroll.html:
- 12:21 PM Changeset in webkit [34448] by
-
- 3 edits2 adds in trunk
WebCore:
2008-06-08 Rob Buis <buis@kde.org>
Reviewed by Darin.
- fix https://bugs.webkit.org/show_bug.cgi?id=18512 getPresentationAttribute returns a shared object
Test: svg/custom/getPresentationAttribute-modify.svg
- svg/SVGStyledElement.cpp: (WebCore::SVGStyledElement::getPresentationAttribute): Unshare the mapped style declaration if it is shared before returning the presentation attribute.
LayoutTests:
2008-06-08 Rob Buis <buis@kde.org>
Reviewed by Darin.
- test for https://bugs.webkit.org/show_bug.cgi?id=18512 getPresentationAttribute returns a shared object
- svg/custom/getPresentationAttribute-modify-expected.txt: Added.
- svg/custom/getPresentationAttribute-modify.svg: Added.
- 12:08 PM Changeset in webkit [34447] by
-
- 2 edits in trunk/LayoutTests
2008-06-08 Eric Roman <minatoar@gmail.com>
Reviewed by Adam Roben.
- fix https://bugs.webkit.org/show_bug.cgi?id=18550 cross-frame-access-call.html doesn't really test window.open(), since popups are blocked
- http/tests/security/cross-frame-access-call.html: Enable popups for this layout test. The test checks that window.open is returns undefined (same-domain enforcement), however unless popups are enabled it returns undefined regardless.
- 12:04 PM Changeset in webkit [34446] by
-
- 4 edits in trunk
2008-06-08 Alp Toker <alp@nuanti.com>
autotools/GTK+ build system cleanup. Don't include WebKit API in the
WebCore build as it's no longer needed since r34426.
- 11:39 AM Changeset in webkit [34445] by
-
- 3 edits in trunk/WebCore
2008-06-08 Jonathan Haas <myrdred@gmail.com>
Reviewed by Eric Seidel.
Tweaked by Darin while landing to make it compile.
- fix http://bugs.webkit.org/show_bug.cgi?id=19128 SVG fonts don't work with medial Arabic characters
Haven't figured out a way to make an automated test for this.
- svg/SVGGlyphElement.h: Made arabicForm unsigned so it fits into its 3-bit field. Did the same for orientation's 2-bit field.
- svg/SVGFont.cpp: Did a bit of minor tweaking. (WebCore::isCompatibleArabicForm): Added a cast to avoid a warning since the type is now different.
- 11:22 AM Changeset in webkit [34444] by
-
- 2 edits in trunk/WebCore
2008-06-08 Eric Carlson <eric.carlson@apple.com>
Reviewed by Antti.
- fix https://bugs.webkit.org/show_bug.cgi?id=19299 <rdar://problem/5969392>
Generate the media MIME type list dynamically.
- platform/graphics/win/QTMovieWin.cpp: (initializeSupportedTypes):
- 11:16 AM Changeset in webkit [34443] by
-
- 2 edits in trunk/WebCore
2008-06-08 Christian Persch <chpe@gnome.org>
Reviewed by Darin.
- https://bugs.webkit.org/show_bug.cgi?id=19309 uninitialised variable in PluginView
- plugins/PluginView.cpp: (WebCore::PluginView::PluginView): Initialise the NPP's pdata member to 0.
- 11:07 AM Changeset in webkit [34442] by
-
- 2 edits in trunk/WebCore
2008-06-08 Darin Adler <Darin Adler>
Reviewed by Mitz.
- https://bugs.webkit.org/show_bug.cgi?id=19435 fix warning in PluginDebug.h
- plugins/PluginDebug.h: Don't compile the errorStrings array if LOG_DISABLED is set.
- 10:44 AM Changeset in webkit [34441] by
-
- 2 edits in trunk/BugsSite
Reviewed by Adam Roben.
- update trac URL in PrettyPatch
- PrettyPatch/PrettyPatch.rb:
- 9:10 AM Changeset in webkit [34440] by
-
- 3 edits in trunk
2008-06-08 Alp Toker <alp@nuanti.com>
Rubber-stamped by Mark Rowe.
Bring back -fstrict-aliasing for JavaScriptCore which was removed in
r31821, since aliasing issues have now been fixed.
Use -O3, not -O2 for the JavaScriptCore build.
- GNUmakefile.am:
- configure.ac:
- 9:01 AM Changeset in webkit [34439] by
-
- 2 edits in trunk/WebKitTools
2008-06-08 Darin Adler <Darin Adler>
- Scripts/make-js-test-wrappers: Added another exception.
Jun 7, 2008:
- 10:56 PM Changeset in webkit [34438] by
-
- 5 edits in trunk
WebCore:
Reviewed by Dave Hyatt.
- fix https://bugs.webkit.org/show_bug.cgi?id=19431 <rdar://problem/5994060> REGRESSION (r32406): tabs retain hover color after mouse out
Covered by fast/css/remove-shorthand.html
- css/CSSMutableStyleDeclaration.cpp: (WebCore::initShorthandMap): Fixed a typo which mapped the background shorthand to the mask properties.
LayoutTests:
Reviewed by Dave Hyatt.
- updated test for https://bugs.webkit.org/show_bug.cgi?id=19431 <rdar://problem/5994060> REGRESSION (r32406): tabs retain hover color after mouse out
- fast/css/remove-shorthand-expected.txt:
- fast/css/remove-shorthand.html:
- 8:50 PM Changeset in webkit [34437] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Dan Bernstein.
Bug 17928: testkjs shouldn't require "-f"
<https://bugs.webkit.org/show_bug.cgi?id=17928>
- kjs/testkjs.cpp: (printUsageStatement): (parseArguments):
- 6:57 PM Changeset in webkit [34436] by
-
- 2 edits in trunk/WebCore
2008-06-07 Brent Fulgham <bfulgham@gmail.com>
Cairo build fix for r34432
- html/CanvasPattern.cpp: (WebCore::CanvasPattern::CanvasPattern):
- 6:44 PM Changeset in webkit [34435] by
-
- 2 edits in trunk/WebKit/gtk
2008-06-07 Jan Michael Alonzo <jmalonzo@webkit.org>
Confirmed by Christian Dywan.
Gtk build fix for r34432
- webkit/webkitwebhistoryitem.cpp: (_WebKitWebHistoryItemPrivate::webkit_history_item_add): (_WebKitWebHistoryItemPrivate::webkit_history_item_remove): (_WebKitWebHistoryItemPrivate::webkit_web_history_item_dispose): (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new_with_core_item): (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new): (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new_with_data): (WebKit::core):
- 6:12 PM Changeset in webkit [34434] by
-
- 2 edits in trunk/WebKit/gtk
2008-06-07 Darin Adler <Darin Adler>
- try to fix build after HistoryItem changes
- webkit/webkitwebhistoryitem.cpp: (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new): Use HistoryItem::create. (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new_with_data): Ditto. I also believe this fixes a memory leak in the old version.
- 5:20 PM Changeset in webkit [34433] by
-
- 4 edits1 delete in trunk
2008-06-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Timothy.
Remove the --squirrelfish option from SunSpider, as it is no longer needed.
SunSpider:
- sunspider:
- tests/LIST-SQUIRRELFISH: Removed.
WebKitTools:
- Scripts/run-sunspider:
- 3:51 PM Changeset in webkit [34432] by
-
- 100 edits in trunk
WebCore:
2008-06-07 Darin Adler <Darin Adler>
Reviewed by Mitz.
- work on https://bugs.webkit.org/show_bug.cgi?id=17257 start ref counts at 1 instead of 0 for speed
- bindings/js/JSCanvasRenderingContext2DCustom.cpp: (WebCore::toHTMLCanvasStyle):
- bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::findOrCreateJSEventListener): (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener):
- bindings/js/JSNodeFilterCondition.h: (WebCore::JSNodeFilterCondition::create):
- bindings/js/JSNodeFilterCustom.cpp: (WebCore::toNodeFilter):
- bindings/js/JSSVGLazyEventListener.h: (WebCore::JSSVGLazyEventListener::create):
- bindings/js/JSSVGMatrixCustom.cpp: (WebCore::JSSVGMatrix::multiply): (WebCore::JSSVGMatrix::inverse): (WebCore::JSSVGMatrix::translate): (WebCore::JSSVGMatrix::scale): (WebCore::JSSVGMatrix::scaleNonUniform): (WebCore::JSSVGMatrix::rotate): (WebCore::JSSVGMatrix::rotateFromVector): (WebCore::JSSVGMatrix::flipX): (WebCore::JSSVGMatrix::flipY): (WebCore::JSSVGMatrix::skewX): (WebCore::JSSVGMatrix::skewY):
- bindings/js/JSSVGPODTypeWrapper.h: (WebCore::JSSVGPODTypeWrapperCreatorReadWrite::create): (WebCore::JSSVGPODTypeWrapperCreatorReadWrite::JSSVGPODTypeWrapperCreatorReadWrite): (WebCore::JSSVGPODTypeWrapperCreatorReadOnly::create): (WebCore::JSSVGPODTypeWrapperCreatorReadOnly::JSSVGPODTypeWrapperCreatorReadOnly): (WebCore::JSSVGPODTypeWrapperCreatorForList::create): (WebCore::JSSVGPODTypeWrapperCreatorForList::JSSVGPODTypeWrapperCreatorForList): (WebCore::JSSVGPODTypeWrapperCache::lookupOrCreateWrapper): (WebCore::JSSVGPODTypeWrapperCache::forgetWrapper):
- bindings/js/JSSVGPointListCustom.cpp: (WebCore::commonExit): (WebCore::commonExitReadOnly): (WebCore::JSSVGPointList::initialize): (WebCore::JSSVGPointList::getItem): (WebCore::JSSVGPointList::insertItemBefore): (WebCore::JSSVGPointList::replaceItem): (WebCore::JSSVGPointList::removeItem): (WebCore::JSSVGPointList::appendItem):
- bindings/js/JSSVGTransformListCustom.cpp: (WebCore::JSSVGTransformList::initialize): (WebCore::JSSVGTransformList::getItem): (WebCore::JSSVGTransformList::insertItemBefore): (WebCore::JSSVGTransformList::replaceItem): (WebCore::JSSVGTransformList::removeItem): (WebCore::JSSVGTransformList::appendItem):
- bindings/js/kjs_binding.cpp: (WebCore::setDOMException):
- bindings/js/kjs_events.h: (WebCore::JSUnprotectedEventListener::create): (WebCore::JSEventListener::create): (WebCore::JSLazyEventListener::create):
- bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::createHTMLEventHandler): (WebCore::KJSProxy::createSVGEventHandler):
- bindings/objc/DOM.mm: (WebCore::ObjCNodeFilterCondition::create): (WebCore::ObjCNodeFilterCondition::ObjCNodeFilterCondition): (WebCore::ObjCNodeFilterCondition::acceptNode): (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]): (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]):
- bindings/scripts/CodeGeneratorJS.pm:
- css/CSSComputedStyleDeclaration.cpp: (WebCore::valueForNinePieceImage): (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
- css/CSSFontFace.h: (WebCore::CSSFontFace::create): (WebCore::CSSFontFace::CSSFontFace):
- css/CSSFontSelector.cpp: (WebCore::CSSFontSelector::addFontFaceRule):
- css/CSSParser.cpp: (WebCore::CSSParser::parseDashboardRegions): (WebCore::CSSParser::parseCounterContent): (WebCore::CSSParser::parseShape): (WebCore::BorderImageParseContext::commitBorderImage):
- css/CSSSegmentedFontFace.cpp: (WebCore::CSSSegmentedFontFace::CSSSegmentedFontFace):
- css/CSSSegmentedFontFace.h: (WebCore::CSSSegmentedFontFace::create):
- css/Counter.h: (WebCore::Counter::create): (WebCore::Counter::Counter):
- css/DashboardRegion.h: (WebCore::DashboardRegion::create): (WebCore::DashboardRegion::DashboardRegion):
- css/Rect.h: (WebCore::Rect::create): (WebCore::Rect::Rect):
- dom/ChildNodeList.h: (WebCore::ChildNodeList::create):
- dom/ClassNodeList.h: (WebCore::ClassNodeList::create):
- dom/Clipboard.h:
- dom/DOMCoreException.h: (WebCore::DOMCoreException::create):
- dom/DOMImplementation.cpp: (WebCore::DOMImplementation::instance):
- dom/DOMImplementation.h: (WebCore::DOMImplementation::DOMImplementation):
- dom/Document.cpp: (WebCore::Document::addWindowEventListener): (WebCore::Document::removeWindowEventListener): (WebCore::Document::setDecoder): (WebCore::Document::images): (WebCore::Document::applets): (WebCore::Document::embeds): (WebCore::Document::plugins): (WebCore::Document::objects): (WebCore::Document::scripts): (WebCore::Document::links): (WebCore::Document::forms): (WebCore::Document::anchors): (WebCore::Document::all): (WebCore::Document::windowNamedItems): (WebCore::Document::documentNamedItems):
- dom/Document.h:
- dom/DynamicNodeList.h:
- dom/EventException.h: (WebCore::EventException::create): (WebCore::EventException::EventException):
- dom/EventListener.h:
- dom/EventTarget.cpp: (WebCore::EventTarget::addEventListener): (WebCore::EventTarget::removeEventListener):
- dom/ExceptionBase.cpp: (WebCore::ExceptionBase::ExceptionBase):
- dom/ExceptionBase.h:
- dom/NameNodeList.h: (WebCore::NameNodeList::create):
- dom/Node.cpp: (WebCore::Node::childNodes): (WebCore::Node::getElementsByTagNameNS): (WebCore::Node::getElementsByName): (WebCore::Node::getElementsByClassName): (WebCore::Node::querySelectorAll):
- dom/NodeFilterCondition.h:
- dom/NodeList.h:
- dom/RangeException.h: (WebCore::RangeException::create): (WebCore::RangeException::RangeException):
- dom/RegisteredEventListener.h: (WebCore::RegisteredEventListener::create):
- dom/SelectorNodeList.cpp: (WebCore::createSelectorNodeList):
- dom/SelectorNodeList.h:
- dom/StaticNodeList.cpp: (WebCore::StaticNodeList::StaticNodeList):
- dom/StaticNodeList.h: (WebCore::StaticNodeList::adopt):
- dom/TagNodeList.h: (WebCore::TagNodeList::create):
- history/HistoryItem.cpp: (WebCore::defaultNotifyHistoryItemChanged): (WebCore::HistoryItem::HistoryItem): (WebCore::HistoryItem::copy):
- history/HistoryItem.h: (WebCore::HistoryItem::create):
- html/CanvasGradient.h:
- html/CanvasPattern.cpp: (WebCore::CanvasPattern::CanvasPattern):
- html/CanvasPattern.h: (WebCore::CanvasPattern::create):
- html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::State::State): (WebCore::CanvasRenderingContext2D::setStrokeColor): (WebCore::CanvasRenderingContext2D::setFillColor): (WebCore::CanvasRenderingContext2D::createPattern):
- html/CanvasStyle.cpp: (WebCore::CanvasStyle::CanvasStyle):
- html/CanvasStyle.h: (WebCore::CanvasStyle::create):
- html/HTMLCollection.cpp: (WebCore::HTMLCollection::HTMLCollection): (WebCore::HTMLCollection::create):
- html/HTMLCollection.h:
- html/HTMLElement.cpp: (WebCore::HTMLElement::children):
- html/HTMLFormCollection.cpp: (WebCore::HTMLFormCollection::create):
- html/HTMLFormCollection.h:
- html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::elements):
- html/HTMLMapElement.cpp: (WebCore::HTMLMapElement::areas):
- html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::load): (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): (WebCore::HTMLMediaElement::willSaveToCache):
- html/HTMLNameCollection.h: (WebCore::HTMLNameCollection::create):
- html/HTMLOptionsCollection.cpp: (WebCore::HTMLOptionsCollection::create):
- html/HTMLOptionsCollection.h:
- html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::options):
- html/HTMLTableElement.cpp: (WebCore::HTMLTableElement::rows): (WebCore::HTMLTableElement::tBodies):
- html/HTMLTableRowElement.cpp: (WebCore::HTMLTableRowElement::cells):
- html/HTMLTableRowsCollection.cpp: (WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection): (WebCore::HTMLTableRowsCollection::create):
- html/HTMLTableRowsCollection.h:
- html/HTMLTableSectionElement.cpp: (WebCore::HTMLTableSectionElement::rows):
- html/MediaError.h: (WebCore::MediaError::create): (WebCore::MediaError::MediaError):
- loader/CachedCSSStyleSheet.cpp: (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
- loader/CachedFont.cpp: (WebCore::CachedFont::ensureSVGFontData):
- loader/CachedXSLStyleSheet.cpp: (WebCore::CachedXSLStyleSheet::CachedXSLStyleSheet):
- loader/FrameLoader.cpp: (WebCore::FrameLoader::write): (WebCore::FrameLoader::createHistoryItem):
- loader/ImageDocument.cpp: (WebCore::ImageEventListener::create): (WebCore::ImageEventListener::ImageEventListener): (WebCore::ImageDocument::createDocumentStructure):
- loader/TextResourceDecoder.h: (WebCore::TextResourceDecoder::create):
- page/Page.cpp: (WebCore::Page::userStyleSheet):
- svg/SVGException.h: (WebCore::SVGException::create): (WebCore::SVGException::SVGException):
- svg/animation/SVGSMILElement.cpp: (WebCore::ConditionEventListener::create): (WebCore::ConditionEventListener::ConditionEventListener): (WebCore::SVGSMILElement::connectConditions):
- xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::didReceiveData):
- xml/XMLHttpRequestException.h: (WebCore::XMLHttpRequestException::create): (WebCore::XMLHttpRequestException::XMLHttpRequestException):
- xml/XPathException.h: (WebCore::XPathException::create): (WebCore::XPathException::XPathException):
- xml/XPathResult.cpp: (WebCore::InvalidatingEventListener::create): (WebCore::InvalidatingEventListener::InvalidatingEventListener): (WebCore::XPathResult::XPathResult):
- xml/XSLTProcessor.cpp: (WebCore::XSLTProcessor::createDocumentFromSource):
WebKit/mac:
2008-06-07 Darin Adler <Darin Adler>
Reviewed by Mitz.
- work on https://bugs.webkit.org/show_bug.cgi?id=17257 start ref counts at 1 instead of 0 for speed
- History/WebHistoryItem.mm: (-[WebHistoryItem init]): (-[WebHistoryItem initWithURLString:title:lastVisitedTimeInterval:]): (-[WebHistoryItem initWithURL:target:parent:title:]): (-[WebHistoryItem initWithURLString:title:displayTitle:lastVisitedTimeInterval:]):
- WebView/WebView.mm: (+[WebView _decodeData:]):
WebKit/win:
2008-06-07 Darin Adler <Darin Adler>
Reviewed by Mitz.
- work on https://bugs.webkit.org/show_bug.cgi?id=17257 start ref counts at 1 instead of 0 for speed
- WebHistoryItem.cpp: (WebHistoryItem::createInstance): (WebHistoryItem::initFromDictionaryRepresentation): (WebHistoryItem::initWithURLString):
- 3:49 PM Changeset in webkit [34431] by
-
- 9 edits in trunk/LayoutTests
2008-06-07 Sam Weinig <sam@webkit.org>
Reviewed by Dan Bernstein.
Fix random failures of XSS tests by using window.postMessage().
- http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-expected.txt:
- http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-uppercase.html:
- http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame.html:
- http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-sub-frame.html:
- http/tests/security/resources/cross-frame-access.js:
- http/tests/security/resources/cross-frame-iframe-with-explicit-domain-set.html:
- http/tests/security/resources/cross-frame-iframe.html:
- platform/mac-leopard/http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-uppercase-expected.txt:
- 3:37 PM Changeset in webkit [34430] by
-
- 1 edit4 adds in trunk/LayoutTests
Reviewed by Sam Weinig.
- pixel test for https://bugs.webkit.org/show_bug.cgi?id=19279 REGRESSION (r32660): Text not redrawn correctly when selection changes
- fast/text/selection-painted-separately.html: Added.
- platform/mac/fast/text/selection-painted-separately-expected.checksum: Added.
- platform/mac/fast/text/selection-painted-separately-expected.png: Added.
- platform/mac/fast/text/selection-painted-separately-expected.txt: Added.
- 2:56 PM Changeset in webkit [34429] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Eric.
Bug 17548: JavaScriptCore print(a, b) differs from Spidermonkey Behavior
<https://bugs.webkit.org/show_bug.cgi?id=17548>
- kjs/testkjs.cpp: (functionPrint):
- 12:32 PM Changeset in webkit [34428] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Sam.
Bug 17547: JavaScriptCore print() differs from Spidermonkey Behavior
<https://bugs.webkit.org/show_bug.cgi?id=17547>
- kjs/testkjs.cpp: (functionPrint):
- 12:02 PM Changeset in webkit [34427] by
-
- 1 edit3 adds in trunk/LayoutTests
2008-06-07 Adam Barth <abarth@webkit.org>
Reviewed by Sam.
- http/tests/security/resources/iframe-for-synchronous-form.html: Added.
- http/tests/security/xss-DENIED-synchronous-form-expected.txt: Added.
- http/tests/security/xss-DENIED-synchronous-form.html: Added.
- 11:07 AM Changeset in webkit [34426] by
-
- 6 edits in trunk
Remove PLATFORM ifdefs from ContextMenu.cpp
https://bugs.webkit.org/show_bug.cgi?id=17324
Reviewed by Alp Toker.
- 3:59 AM Changeset in webkit [34425] by
-
- 2 edits in trunk/JavaScriptCore
More build fixes.
- kjs/JSGlobalData.cpp: Fixed an included file name for case-sensitive file systems, fixed JSGlobalData::threadInstance() for non-multithreaded builds.
- 3:41 AM Changeset in webkit [34424] by
-
- 5 edits in trunk/JavaScriptCore
Build fix - actually adding JSGlobalData.cpp to non-Mac builds!
- GNUmakefile.am:
- JavaScriptCore.pri:
- JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
- JavaScriptCoreSources.bkl:
- 3:36 AM Changeset in webkit [34423] by
-
- 5 edits in trunk/WebCore
Reviewed by ap.
Still more CSSParser cleanup
- use c++ style member initializers in CSSParser()
- change m_styleElement to m_styleSheet and make it a CSSStyleSheet
- finally add my copyright to the files I've been cleaning
- css/CSSGrammar.y:
- css/CSSParser.cpp: (WebCore::CSSParser::CSSParser): (WebCore::CSSParser::setupParser): (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseColor): (WebCore::CSSParser::parseDeclaration): (WebCore::CSSParser::parseContent): (WebCore::CSSParser::parseFillImage): (WebCore::CSSParser::parseFontFaceSrc): (WebCore::CSSParser::parseBorderImage): (WebCore::CSSParser::createCharsetRule): (WebCore::CSSParser::createImportRule): (WebCore::CSSParser::createMediaRule): (WebCore::CSSParser::createStyleRule):
- css/CSSParser.h:
- css/SVGCSSParser.cpp:
- 3:35 AM Changeset in webkit [34422] by
-
- 4 edits in trunk/WebCore
Reviewed by ap.
More CSSParser cleanup
- rename CSSParser::id to m_id
- rename CSSParser::data to m_data
- fix a few whitespace and argument name issues
- css/CSSGrammar.y:
- css/CSSParser.cpp: (WebCore::CSSParser::CSSParser): (WebCore::CSSParser::~CSSParser): (WebCore::CSSParser::setupParser): (WebCore::CSSParser::parseValue):
- css/CSSParser.h:
- 3:35 AM Changeset in webkit [34421] by
-
- 4 edits in trunk/WebCore
Reviewed by ap.
Rename CSSParser::strict to m_strict
- css/CSSGrammar.y:
- css/CSSParser.cpp: (WebCore::CSSParser::CSSParser): (WebCore::CSSParser::parseColor): (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseBackgroundColor): (WebCore::CSSParser::parseFillPositionXY): (WebCore::CSSParser::parseFillSize): (WebCore::CSSParser::parseTransitionDuration): (WebCore::CSSParser::parseTransitionRepeatCount): (WebCore::CSSParser::parseTimingFunctionValue): (WebCore::CSSParser::parseDashboardRegions): (WebCore::CSSParser::parseShape): (WebCore::CSSParser::parseFont): (WebCore::CSSParser::parseColorFromValue): (WebCore::CSSParser::parseShadow): (WebCore::CSSParser::parseReflect): (WebCore::CSSParser::parseBorderImage):
- css/CSSParser.h:
- 3:34 AM Changeset in webkit [34420] by
-
- 5 edits in trunk/WebCore
Reviewed by ap.
Rename CSSParser::defaultNamespace to m_defaultNamespace
- css/CSSGrammar.y:
- css/CSSParser.cpp: (WebCore::CSSParser::CSSParser): (WebCore::CSSParser::parseSheet):
- css/CSSParser.h:
- css/CSSStyleSheet.cpp: (WebCore::CSSStyleSheet::addNamespace):
- 3:34 AM Changeset in webkit [34419] by
-
- 4 edits in trunk/WebCore
Reviewed by ap.
Rename CSSParser::important to m_important
- css/CSSGrammar.y:
- css/CSSParser.cpp: (WebCore::CSSParser::CSSParser): (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseFontFaceSrc): (WebCore::CSSParser::parseFontFaceUnicodeRange):
- css/CSSParser.h:
- 3:33 AM Changeset in webkit [34418] by
-
- 5 edits in trunk/WebCore
Reviewed by ap.
Yet another cleanup patch for CSSParser
Rename CSSParser::valueList to m_valueList
- css/CSSGrammar.y:
- css/CSSParser.cpp: (WebCore::CSSParser::CSSParser): (WebCore::CSSParser::~CSSParser): (WebCore::CSSParser::checkForOrphanedUnits): (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseFillShorthand): (WebCore::CSSParser::parseTransitionShorthand): (WebCore::CSSParser::parseShorthand): (WebCore::CSSParser::parse4Values): (WebCore::CSSParser::parseContent): (WebCore::CSSParser::parseFillImage): (WebCore::CSSParser::parseFillPositionXY): (WebCore::CSSParser::parseFillPosition): (WebCore::CSSParser::parseFillSize): (WebCore::CSSParser::parseFillProperty): (WebCore::CSSParser::parseTransitionProperty): (WebCore::CSSParser::parseDashboardRegions): (WebCore::CSSParser::parseShape): (WebCore::CSSParser::parseFont): (WebCore::CSSParser::parseFontFamily): (WebCore::CSSParser::parseFontFaceSrc): (WebCore::CSSParser::parseFontFaceUnicodeRange): (WebCore::CSSParser::parseColor): (WebCore::CSSParser::parseShadow): (WebCore::CSSParser::parseReflect): (WebCore::BorderImageParseContext::commitBorderImage): (WebCore::CSSParser::parseBorderImage): (WebCore::CSSParser::parseCounter): (WebCore::CSSParser::parseGradient): (WebCore::CSSParser::parseCanvas): (WebCore::CSSParser::parseTransform): (WebCore::CSSParser::parseTransformOrigin):
- css/CSSParser.h:
- css/SVGCSSParser.cpp: (WebCore::CSSParser::parseSVGValue): (WebCore::CSSParser::parseSVGStrokeDasharray): (WebCore::CSSParser::parseSVGPaint): (WebCore::CSSParser::parseSVGColor):
- 3:32 AM Changeset in webkit [34417] by
-
- 4 edits in trunk/WebCore
Reviewed by ap.
More cleanup to CSSParser, rename mediaQuery to m_mediaQuery
Remove CSSParser::current and CSSParser::currentParser and use
the magic of YYLEX_PARAM instead.
- css/CSSParser.cpp: (WebCore::enterGeneratedParser): (WebCore::CSSParser::parseSheet): (WebCore::CSSParser::parseRule): (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseColor): (WebCore::CSSParser::parseDeclaration): (WebCore::CSSParser::parseMediaQuery):
- css/CSSParser.h:
- 3:20 AM Changeset in webkit [34416] by
-
- 2 edits in trunk/JavaScriptCore
Try to fix Gtk/gcc 4.3 build.
- kjs/JSGlobalData.h: Include ustring.h instead of forward-declaring UString::Rep.
- 2:57 AM Changeset in webkit [34415] by
-
- 4 edits in trunk/WebCore
WebCore:
2008-06-07 Julien Chaffraix <jchaffraix@webkit.org>
Reviewed by Eric.
Part of bug 19200: *.in files should embed more information
https://bugs.webkit.org/show_bug.cgi?id=19200
- Added XML attributes' parsing.
- Moved (most) capitalization and audio hacks in the *.in files.
- dom/make_names.pl:
- html/HTMLTagNames.in:
- svg/svgtags.in:
- 1:20 AM Changeset in webkit [34414] by
-
- 2 edits in trunk/WebCore
2008-06-07 Pierre-Luc Beaudoin <pierre-luc.beaudoin@collabora.co.uk>
With the help of Jonathon Jongsma.
Reviewed by Dan Bernstein.
Fix for https://bugs.webkit.org/show_bug.cgi?id=19279
REGRESSION (r32660): Text not redrawn correctly when selection changes
- rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::paint): Add a condition for when ePos <= sPos
- 12:58 AM Changeset in webkit [34413] by
-
- 3 edits in trunk/LayoutTests
2008-06-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Bug 17663: Wrong sequencing of argument list evaluation
<https://bugs.webkit.org/show_bug.cgi?id=17663>
SquirrelFish fixed this bug, but we should add a test.
LayoutTests:
- fast/js/order-of-operations-expected.txt:
- fast/js/resources/order-of-operations.js:
Jun 6, 2008:
- 11:03 PM Changeset in webkit [34412] by
-
- 26 edits2 adds in trunk/JavaScriptCore
Reviewed by Darin.
Combine per-thread objects into one, to make it easier to support legacy clients (for
which they shouldn't be really per-thread).
No change on SunSpider total.
- JavaScriptCore.xcodeproj/project.pbxproj: Added JSGlobalData.{h,cpp}
- kjs/JSGlobalData.cpp: Added. (KJS::JSGlobalData::JSGlobalData): (KJS::JSGlobalData::~JSGlobalData): (KJS::JSGlobalData::threadInstance):
- kjs/JSGlobalData.h: Added. This class encapsulates all data that should be per-thread (or shared between legacy clients). It will also keep a Heap pointer, but right now, Heap (Collector) methods are all static.
- kjs/identifier.h: (KJS::Identifier::Identifier): Added a constructor explicitly taking JSGlobalData to access IdentifierTable. Actually, all of them should, but this will be a separate patch.
- kjs/identifier.cpp: (KJS::IdentifierTable::literalTable): (KJS::createIdentifierTable): (KJS::deleteIdentifierTable): (KJS::Identifier::add): (KJS::Identifier::addSlowCase): Combined IdentifierTable and LiteralIdentifierTable into a single class for simplicity.
- kjs/grammar.y: kjsyyparse now takes JSGlobalData, not just a Lexer.
- kjs/nodes.cpp: (KJS::Node::Node): (KJS::EvalFunctionCallNode::emitCode): (KJS::ScopeNode::ScopeNode): Changed to access Lexer and Parser via JSGlobalData::threadInstance(). This is also a temporary measure, they will need to use JSGlobalData explicitly.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::CodeGenerator):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::callEval):
- kjs/CommonIdentifiers.cpp: (KJS::CommonIdentifiers::CommonIdentifiers):
- kjs/CommonIdentifiers.h:
- kjs/DebuggerCallFrame.cpp: (KJS::DebuggerCallFrame::evaluate):
- kjs/ExecState.cpp: (KJS::ExecState::ExecState):
- kjs/ExecState.h: (KJS::ExecState::globalData): (KJS::ExecState::identifierTable): (KJS::ExecState::propertyNames): (KJS::ExecState::emptyList): (KJS::ExecState::lexer): (KJS::ExecState::parser): (KJS::ExecState::arrayTable): (KJS::ExecState::dateTable): (KJS::ExecState::mathTable): (KJS::ExecState::numberTable): (KJS::ExecState::RegExpImpTable): (KJS::ExecState::RegExpObjectImpTable): (KJS::ExecState::stringTable):
- kjs/InitializeThreading.cpp: (KJS::initializeThreadingOnce):
- kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::init):
- kjs/JSGlobalObject.h: (KJS::JSGlobalObject::JSGlobalObjectData::JSGlobalObjectData): (KJS::JSGlobalObject::head): (KJS::JSGlobalObject::globalData):
- kjs/Parser.cpp: (KJS::Parser::parse):
- kjs/Parser.h:
- kjs/function.cpp: (KJS::FunctionImp::getParameterName): (KJS::IndexToNameMap::unMap): (KJS::globalFuncEval):
- kjs/function_object.cpp: (KJS::FunctionObjectImp::construct):
- kjs/interpreter.cpp: (KJS::Interpreter::checkSyntax): (KJS::Interpreter::evaluate):
- kjs/lexer.cpp: (kjsyylex):
- kjs/lexer.h:
- kjs/testkjs.cpp: (prettyPrintScript): Updated for the above changes. Most of threadInstance uses here will need to be replaced with explicitly passed pointers to support legacy JSC clients.
- JavaScriptCore.exp: Removed KJS::parser().
- 9:51 PM Changeset in webkit [34411] by
-
- 4 edits in trunk/JavaScriptCore
2008-06-06 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Bug 19424: Add support for logging opcode pair counts
<https://bugs.webkit.org/show_bug.cgi?id=19424>
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Opcode.cpp: (KJS::OpcodeStats::OpcodeStats): (KJS::compareOpcodeIndices): (KJS::compareOpcodePairIndices): (KJS::OpcodeStats::~OpcodeStats): (KJS::OpcodeStats::recordInstruction): (KJS::OpcodeStats::resetLastInstruction):
- VM/Opcode.h:
- 7:11 PM Changeset in webkit [34410] by
-
- 11 edits1 add in trunk/WebCore
WebCore:
2008-06-06 Julien Chaffraix <jchaffraix@webkit.org>
Reviewed by Eric.
Part of bug 19200: *.in files should embed more information
https://bugs.webkit.org/show_bug.cgi?id=19200
- Switched *.in files to XML format.
- Added (simple) parsing facilities in make_names.pl using the XML::Tiny Perl parser.
- Updated the build systems to include bindings/scripts when executing make_names.pl (for XMLTiny dependency).
- Cleaned-up make_names.pl a little.
- DerivedSources.make:
- GNUmakefile.am:
- WebCore.pro:
- bindings/scripts/XMLTiny.pm: Added.
- dom/make_names.pl:
- html/HTMLAttributeNames.in:
- html/HTMLTagNames.in:
- svg/svgattrs.in:
- svg/svgtags.in:
- svg/xlinkattrs.in:
- xml/xmlattrs.in:
- 3:51 PM Changeset in webkit [34409] by
-
- 3 edits2 adds in trunk
2008-06-06 Robert Blaut <webkit@blaut.biz>
Reviewed by Darin Adler.
Fix for https://bugs.webkit.org/show_bug.cgi?id=19407
CSS3 Selector Test: *= ~= = $= should all accept the empty string, but match nothing
Test: fast/css/begin-end-contain-selector-empty-value.html
- css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
2008-06-06 Robert Blaut <webkit@blaut.biz>
Reviewed by Darin Adler.
Test for https://bugs.webkit.org/show_bug.cgi?id=19407
CSS3 Selector Test: *= ~= = $= should all accept the empty string, but match nothing.
- fast/css/begin-end-contain-selector-empty-value.html: Added.
- platform/mac/fast/css/begin-end-contain-selector-empty-value-expected.txt: Added.
- 3:09 PM Changeset in webkit [34408] by
-
- 5 edits in trunk/WebCore
Reviewed by mitz.
More cleanup of CSSParser.
Rename CSSParser::numParsedProperties and maxNumParsedProperites to m_*
- css/CSSGrammar.y:
- css/CSSParser.cpp: (WebCore::CSSParser::CSSParser): (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseColor): (WebCore::CSSParser::parseDeclaration): (WebCore::CSSParser::addProperty): (WebCore::CSSParser::rollbackLastProperties): (WebCore::CSSParser::clearProperties): (WebCore::CSSParser::parse4Values): (WebCore::CSSParser::createStyleRule): (WebCore::CSSParser::createFontFaceRule):
- css/CSSParser.h:
- css/SVGCSSParser.cpp: (WebCore::CSSParser::parseSVGValue):
- 3:03 PM Changeset in webkit [34407] by
-
- 4 edits in trunk/WebCore
Reviewed by mitz.
More cleanup of CSSParser.
Rename CSSParser::parsedProperties to m_parsedProperties.
- css/CSSParser.cpp: (WebCore::CSSParser::CSSParser): (WebCore::CSSParser::~CSSParser): (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseColor): (WebCore::CSSParser::parseDeclaration): (WebCore::CSSParser::addProperty): (WebCore::CSSParser::rollbackLastProperties): (WebCore::CSSParser::clearProperties): (WebCore::CSSParser::parse4Values): (WebCore::CSSParser::createStyleRule): (WebCore::CSSParser::createFontFaceRule):
- css/CSSParser.h:
- css/SVGCSSParser.cpp: (WebCore::CSSParser::parseSVGValue):
- 2:49 PM Changeset in webkit [34406] by
-
- 4 edits in trunk/WebCore
Reviewed by mitz.
Start the cleanup of CSSParser.
Rename CSSParser::styleElement to CSSParser::m_styleElement
- css/CSSGrammar.y:
- css/CSSParser.cpp: (WebCore::CSSParser::document): (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseContent): (WebCore::CSSParser::parseFillImage): (WebCore::CSSParser::parseFontFaceSrc): (WebCore::CSSParser::parseBorderImage): (WebCore::CSSParser::createCharsetRule): (WebCore::CSSParser::createImportRule): (WebCore::CSSParser::createMediaRule): (WebCore::CSSParser::createStyleRule):
- css/CSSParser.h:
- 2:07 PM Changeset in webkit [34405] by
-
- 5 edits in trunk
Reviewed by adele. Landed by eseidel.
Calls listBoxOnChange() in typeAheadFind() when the <select> tag is a listBox.
- html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::typeAheadFind):
- 1:39 PM Changeset in webkit [34404] by
-
- 4 edits2 adds in trunk
WebCore:
2008-06-05 Justin Garcia <justin.garcia@apple.com>
Reviewed by John.
<rdar://problem/5890684> REGRESSION(r23969): Deleting a line break changes the style of text after the break
Serialization of font-family:-webkit-monospace when it came from a
CSSMutableStyleDeclaration would wrap the value in single quotes but
serialization of the same property value pair from a CSSComputedStyleDeclaration
wouldn't, which kept code that checked for and removed non-redundant styles from
style spans from working correctly.
A redundant style left on a style span would not normally create a rendering
difference, but it did in this case because an element with
font-family:-webkit-monospace does not appear to inherit font-size.
Added a FIXME about how we might need to keep font-size on a style span if its
non-redundant styles include font-family:-webkit-monospace, although I couldn't
create a test case to produce this scenario.
- css/FontFamilyValue.cpp: (WebCore::isValidCSSIdentifier): Don't return false if the String starts with a '-'. This function now appears identical to isCSSTokenizerIdentifier, so perhaps we should use a single function.
- editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::handleStyleSpans): Added FIXME. Removed the creation of two Strings that were never used.
LayoutTests:
2008-06-06 Justin Garcia <justin.garcia@apple.com>
Reviewed by John.
<rdar://problem/5890684> REGRESSION(r23969): Deleting a line break changes the style of text after the break
- editing/deleting/5890684-expected.txt: Added.
- editing/deleting/5890684.html: Added.
- 10:06 AM Changeset in webkit [34403] by
-
- 4 edits2 adds in trunk
WebCore:
2008-06-06 Justin Garcia <justin.garcia@apple.com>
Reviewed by Darin.
<https://bugs.webkit.org/show_bug.cgi?id=19087>
Editing crash in IndentOutdentCommand::prepareBlockquoteLevelForInsertion, ASSERT in debug mode
- editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete): applyStyle can destroy insertedPlaceholder if it needs to move it, but it will set an endingSelection() at [movedPlaceholder, 0] if it does so. Re-fetch insertedPlaceholder if that happens. The long term solution for these crashes is to make moveParagraphs not copy/destroy/move content, and to make VisiblePositions update themselves on DOM mutations.
- editing/IndentOutdentCommand.cpp: (WebCore::IndentOutdentCommand::indentRegion): Early return to avoid crashes like this in the future, but ASSERT to catch them in debug builds.
LayoutTests:
2008-06-06 Justin Garcia <justin.garcia@apple.com>
Reviewed by Darin.
<https://bugs.webkit.org/show_bug.cgi?id=19087>
Editing crash in IndentOutdentCommand::prepareBlockquoteLevelForInsertion, ASSERT in debug mode
- editing/execCommand/19087-expected.txt: Added.
- editing/execCommand/19087.html: Added.
- 10:01 AM WikiStart edited by
- Added a link to the Clutter page (diff)
- 9:58 AM clutter created by
- 9:48 AM Changeset in webkit [34402] by
-
- 6 edits in trunk/JavaScriptCore
2008-06-06 Kevin McCullough <kmccullough@apple.com>
Reviewed by Adam.
<rdar://problem/5969992> JSProfiler: Remove the recursion limit in the
profiler.
- Change the remaining functions that do not take arguments, from using recursion to using iteration.
- JavaScriptCore.exp:
- profiler/Profile.cpp: (KJS::stopProfiling): (KJS::restoreAll): (KJS::Profile::stopProfiling): Use foreach instead of recursion. (KJS::Profile::restoreAll): Ditto.
- profiler/Profile.h:
- profiler/ProfileNode.cpp: Remove recursion. (KJS::ProfileNode::stopProfiling): (KJS::ProfileNode::restore):
- profiler/ProfileNode.h:
- 7:48 AM Changeset in webkit [34401] by
-
- 3 edits1 add1 delete in trunk/LayoutTests
LayoutTests:
2008-06-06 Julien Chaffraix <jchaffraix@webkit.org>
Reviewed by Alexey.
xmlhttprequest-onProgress-open-should-zero-length.html supposes that the onprogress event
is dispatched 3 times to test that the position is reset when XMLHttpRequest.open() is
called.
The test was failing because CoreFoundation keeps the data if they are not big enough
(which led to only 1 progress event dispatched).
We now generate a big response instead of a small one.
Warning: this test is not guaranteed to succeed as we cannot guarantee that the server
will send responses' sizes that are close for 2 different requests to the same
resource.
- http/tests/xmlhttprequest/resources/big-response.php: Added.
- http/tests/xmlhttprequest/resources/five-tiny-chunk-one-second-delay.php: Removed.
- http/tests/xmlhttprequest/xmlhttprequest-onProgress-open-should-zero-length-expected.txt: Added a warning about the possible failure of the test.
- http/tests/xmlhttprequest/xmlhttprequest-onProgress-open-should-zero-length.html: Ditto.
Jun 5, 2008:
- 10:09 PM Changeset in webkit [34400] by
-
- 3 edits3 adds in trunk
Fix Greater and GreaterEq nodes to emit code in the correct order.
Reviewed by Alexey.
- 9:44 PM Changeset in webkit [34399] by
-
- 3 edits2 adds in trunk
WebCore:
2008-06-05 Justin Garcia <justin.garcia@apple.com>
Reviewed by Eric.
<https://bugs.webkit.org/show_bug.cgi?id=19403>
ASSERT in InsertIntoTextNodeCommand::InsertIntoTextNodeCommand during RemoveFormat call
- editing/RemoveFormatCommand.cpp: (WebCore::RemoveFormatCommand::doApply): If the selection was all formatting (like an empty list) the format-less text will be empty. Early return to avoid the ASSERT that fires if input(...) is called with an empty String.
LayoutTests:
2008-06-05 Justin Garcia <justin.garcia@apple.com>
Reviewed by Eric.
<https://bugs.webkit.org/show_bug.cgi?id=19403>
ASSERT in InsertIntoTextNodeCommand::InsertIntoTextNodeCommand during RemoveFormat call
- editing/execCommand/19403-expected.txt: Added.
- editing/execCommand/19403.html: Added.
- 6:43 PM Changeset in webkit [34398] by
-
- 2 edits in trunk/WebKit/gtk
2008-06-05 Alp Toker <alp@nuanti.com>
Add 'Since' documentation for API versioning functions.
- webkit/webkitversion.cpp:
- 6:09 PM Changeset in webkit [34397] by
-
- 4 edits in trunk
2008-06-05 Alp Toker <alp@nuanti.com>
Build fix for r34387.
- GNUmakefile.am:
- 6:00 PM Changeset in webkit [34396] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-05 Antti Koivisto <Antti Koivisto>
Reviewed by Alp Toker.
Fix whitespaces.
- kjs/collector.cpp: (KJS::getPlatformThreadRegisters):
- 5:50 PM Changeset in webkit [34395] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-05 Antti Koivisto <Antti Koivisto>
Reviewed by Darin.
Support compiling JavaScriptCore for ARM.
- kjs/collector.cpp: (KJS::getPlatformThreadRegisters): (KJS::otherThreadStackPointer):
- 5:49 PM Changeset in webkit [34394] by
-
- 1 edit in trunk/JavaScriptCore/ChangeLog
Oops, accidentally commited ChangeLog only.
- 5:47 PM Changeset in webkit [34393] by
-
- 1 edit in trunk/JavaScriptCore/ChangeLog
2008-06-05 Antti Koivisto <Antti Koivisto>
Reviewed by Darin.
Support compiling JavaScriptCore for ARM.
- kjs/collector.cpp: (KJS::getPlatformThreadRegisters): (KJS::otherThreadStackPointer):
- 5:33 PM Changeset in webkit [34392] by
-
- 4 edits in trunk/JavaScriptCore
2008-06-05 Kevin McCullough <kmccullough@apple.com>
Reviewed by Jon.
- Name changes.
- JavaScriptCore.exp:
- profiler/Profile.cpp: (KJS::Profile::Profile): (KJS::Profile::stopProfiling): (KJS::Profile::didExecute): (KJS::Profile::forEach): (KJS::Profile::debugPrintData): (KJS::Profile::debugPrintDataSampleStyle):
- profiler/Profile.h: (KJS::Profile::callTree): (KJS::Profile::totalTime): (KJS::Profile::sortTotalTimeDescending): (KJS::Profile::sortTotalTimeAscending): (KJS::Profile::sortSelfTimeDescending): (KJS::Profile::sortSelfTimeAscending): (KJS::Profile::sortCallsDescending): (KJS::Profile::sortCallsAscending): (KJS::Profile::sortFunctionNameDescending): (KJS::Profile::sortFunctionNameAscending): (KJS::Profile::focus): (KJS::Profile::exclude): (KJS::Profile::restoreAll):
- 5:28 PM Changeset in webkit [34391] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-05 Geoffrey Garen <ggaren@apple.com>
Reviewed by Stephanie Lewis.
Added the -fno-move-loop-invariants flag to the pcre_exec.cpp build, to
tell GCC not to perform loop invariant motion, since GCC's loop
invariant motion doesn't do very well with computed goto code.
SunSpider reports no change.
- 5:20 PM Changeset in webkit [34390] by
-
- 3 edits2 adds in trunk
WebCore:
2008-06-05 Justin Garcia <justin.garcia@apple.com>
Reviewed by Eric.
<https://bugs.webkit.org/show_bug.cgi?id=19089> Editing ASSERT in Range::compareBoundaryPoints
ApplyStyleCommand::applyInlineStyle does some work and then checks to see
if the start offset of the Range it's operating on is now past the caretMaxOffset
of the start container. If it is, applyInlineStyle updates the position to
[startContainer->traverseNextNode(), 0] and then operates on that new start
position.
caretMaxOffset was incorrect for horizontal rules. It should be 1 and it was 0. So,
if the horizontal rule was the last node in the document, applyInlineStyle would update
its start position to [0, 0] and then try to operate on that position, assuming it was
non-null, leading to the ASSERT.
- rendering/RenderObject.cpp: (WebCore::RenderObject::caretMaxOffset):
LayoutTests:
2008-06-05 Justin Garcia <justin.garcia@apple.com>
Reviewed by Eric.
<https://bugs.webkit.org/show_bug.cgi?id=19089> Editing ASSERT in Range::compareBoundaryPoints
- editing/execCommand/19089-expected.txt: Added.
- editing/execCommand/19089.html: Added.
- 4:19 PM Changeset in webkit [34389] by
-
- 3 edits in trunk/WebCore
<rdar://problem/5947396> AccessibilityListBoxOptions should return their string as AXValue, not AXTitle
- 4:13 PM Changeset in webkit [34388] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-05 Geoffrey Garen <ggaren@apple.com>
Reviewed by Stephanie Lewis.
Added the -fno-tree-pre flag to the Machine.cpp build, to tell GCC not
to perform Partial Redundancy Elimination (PRE) on trees in Machine.cpp,
since GCC's PRE doesn't do very well with computed goto code.
SunSpider reports a .7% speedup.
- 3:50 PM Changeset in webkit [34387] by
-
- 7 edits1 copy1 add in trunk
Please add a version to the Gtk port
https://bugs.webkit.org/show_bug.cgi?id=14141
Reviewed by Alp Toker.
- 3:40 PM Changeset in webkit [34386] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-05 Geoffrey Garen <ggaren@apple.com>
Reviewed by Stephanie Lewis (or maybe the other way around).
Minor change to PCRE to help out certain compilers.
SunSpider reports no change, maybe a small speedup.
- pcre/pcre_exec.cpp: (match): Use instructionPtr++ a little less, to avoid confusing the optimizer.
- 3:34 PM Changeset in webkit [34385] by
-
- 3 edits6 adds in trunk
WebCore:
2008-06-05 Justin Garcia <justin.garcia@apple.com>
Reviewed by Harrison.
<rdar://problem/5658933> GoogleDocs: Crash indenting a particular selection twice
<rdar://problem/5831310> CrashTracer: [USER] 4 crashes in Mail at WebCore::IndentOutdentCommand::prepareBlockquoteLevelForInsertion
<rdar://problem/5480141> GoogleDocs: Attempting to indent content in <td> closes <table> element
A crash would occur when indenting a selection that started just before a table
and ended inside that table. With a selection like this, we'd indent the entire
table, then try and indent paragraphs inside it, but the stored position for the
next paragraph to indent was inside content that had been removed from the document
during the first Indent.
Fixed the crash adjusting the selection to perform the indent on to prepare it
for paragraph iteration using selectionForParagraphIteration. We do this adjustment
for paragraph iteration in InsertList as well.
Also, indenting paragraphs inside table cells would break table structure because
we were splitting the DOM all the way up to the root editable element to insert
a blockquote. Fixed this by only splitting up to the enclosing table cell. This
matches FF. Lastly, fixed a bug where indenting several paragraphs inside different
table cells would move all the selected text into the same table cell. FF still has
this bug.
- editing/IndentOutdentCommand.cpp: (WebCore::IndentOutdentCommand::indentRegion):
LayoutTests:
2008-06-05 Justin Garcia <justin.garcia@apple.com>
Reviewed by Harrison.
<rdar://problem/5658933> GoogleDocs: Crash indenting a particular selection twice
- editing/execCommand/5658933-1-expected.txt: Added.
- editing/execCommand/5658933-1.html: Added.
- editing/execCommand/5658933-2-expected.txt: Added.
- editing/execCommand/5658933-2.html: Added.
- editing/execCommand/5658933-3-expected.txt: Added.
- editing/execCommand/5658933-3.html: Added.
- 3:17 PM Changeset in webkit [34384] by
-
- 10 edits in trunk/WebCore
<rdar://problem/5979998> AXList controls should have AXSelectedChildren and its children's AXSelected attribute writable
- 3:01 PM Changeset in webkit [34383] by
-
- 2 edits in trunk/WebCore
Reviewed by mjs.
Get rid of Uninitialized Memory Reads (UMRs) in the XPath::Value copy constructor.
No functional changes, thus no tests.
- xml/XPathValue.h: (WebCore::XPath::Value::Value): initialize all values in each constructor
- 1:51 PM Changeset in webkit [34382] by
-
- 3 edits1 add in trunk/WebCore
2008-06-04 David Hyatt <hyatt@apple.com>
Fix for <rdar://problem/5957994> Height doesn't animate
Improve the behavior when transitions are dynamically changed. Make sure to leave older transitions
running and let them obsolete themselves when they finish.
Reviewed by Dan Bernstein
Added WebCore/manual-tests/transitions2.html (must be tested manually)
- manual-tests/transitions.html:
- manual-tests/transitions2.html: Added.
- page/AnimationController.cpp: (WebCore::ImplicitAnimation::property): (WebCore::ImplicitAnimation::setFinished): (WebCore::ImplicitAnimation::markedForDeath): (WebCore::ImplicitAnimation::setMarkedForDeath): (WebCore::ImplicitAnimation::ImplicitAnimation): (WebCore::ImplicitAnimation::reset): (WebCore::ImplicitAnimation::animate): (WebCore::CompositeImplicitAnimation::animate):
- 1:33 PM Changeset in webkit [34381] by
-
- 2 edits in trunk/WebCore
Reviewed by hyatt.
No functional changes, thus no tests.
- platform/graphics/Color.h: remove unnecessary bitfield use
- 1:03 PM Changeset in webkit [34380] by
-
- 2 edits in trunk/JavaScriptCore
Re-landing an independent part of a previously rolled out threading patch.
- wtf/ThreadSpecific.h: Make sure to initialize POD thread-specific varaibles, too (replaced "new T" with "new T()").
- 12:56 PM Changeset in webkit [34379] by
-
- 4 edits in trunk
WebCore:
2008-06-05 Antti Koivisto <Antti Koivisto>
Reviewed by Dave Hyatt.
Make hasFeature() return true for the animation stuff.
- dom/DOMImplementation.cpp: (WebCore::isSVG11Feature):
LayoutTests:
2008-06-05 Antti Koivisto <Antti Koivisto>
Reviewed by Dave Hyatt.
Make hasFeature() return true for the animation stuff.
- svg/custom/svg-features-expected.txt:
- 10:54 AM Changeset in webkit [34378] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-05 Maciej Stachowiak <mjs@apple.com>
Reviewed by Hyatt.
- force inlining of a template function that only has one call site per specialization 1.3% speedup on SunSpider
- kjs/collector.cpp: (KJS::Collector::heapAllocate): This template function is only called from allocate() and allocateNumber() (once per specialization) and the extra call overhead for GC allocation shows up, so force inlining.
- 9:55 AM Changeset in webkit [34377] by
-
- 4 edits4 adds in trunk
WebCore:
Reviewed by Darin Adler.
- fix https://bugs.webkit.org/show_bug.cgi?id=19397 REGRESSION (3.1-TOT): Box-shadow renders weird when rotating a div with border radius
Test: fast/transforms/shadows.html
- platform/graphics/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::setPlatformShadow): In Core Graphics, shadow dimensions are always in device space. Account for that, and apply the current context transform to shadow offset, and multiply the blur radius by the inverse of the operator norm of the inverse transform (which is the radius of the circle inscribed in the transformed unit circle).
- rendering/RenderObject.cpp: (WebCore::RenderObject::paintBoxShadow): Added 1px separation between the edge of the filled shape and the edge of the clipped-out shape, because in a transformed context, due to antialiasing, the fill can bleed into the clip if they touch.
LayoutTests:
Reviewed by Darin Adler.
- pixel test for https://bugs.webkit.org/show_bug.cgi?id=19397 REGRESSION (3.1-TOT): Box-shadow renders weird when rotating a div with border radius
- fast/transforms/shadows.html: Added.
- platform/mac/fast/transforms/shadows-expected.checksum: Added.
- platform/mac/fast/transforms/shadows-expected.png: Added.
- platform/mac/fast/transforms/shadows-expected.txt: Added.
- 4:45 AM Changeset in webkit [34376] by
-
- 4 edits in trunk/LayoutTests
2008-06-05 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon
Update layout tests on Mac based on the changes to html4.css
in r34299. The missing backgroundClip and outlineClip in the
new results is strange, but visually it looks the same.
- 3:36 AM Changeset in webkit [34375] by
-
- 2 edits in trunk/WebCore
2008-06-05 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon.
Prevent cycles when converting from DOM objects to
QVariant, due to cycles in the DOM tree.
- 3:30 AM Changeset in webkit [34374] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-05 Maciej Stachowiak <mjs@apple.com>
Reviewed by Alexey and Oliver.
- remove profiler fetch hack I measure an 0.5% progression from this, others show a wash. It seems not needed any more.
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- 2:19 AM Changeset in webkit [34373] by
-
- 7 edits in trunk
2008-06-05 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Bug 19400: subscript operator does not protect base when necessary
<https://bugs.webkit.org/show_bug.cgi?id=19400>
Use a temporary for the base in BracketAccessorNode if the subscript
might possibly modify it.
- kjs/grammar.y:
- kjs/nodes.cpp: (KJS::BracketAccessorNode::emitCode):
- kjs/nodes.h: (KJS::BracketAccessorNode::):
LayoutTests:
- fast/js/codegen-temporaries-expected.txt:
- fast/js/resources/codegen-temporaries.js:
Jun 4, 2008:
- 10:36 PM Changeset in webkit [34372] by
-
- 32 edits in trunk/JavaScriptCore
2008-06-04 Sam Weinig <sam@webkit.org>
Reviewed by Maciej Stachowiak.
Big cleanup of formatting and whitespace.
- 9:39 PM Changeset in webkit [34371] by
-
- 6 edits in trunk
2008-06-04 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Add an option to dump statistics on executed instructions.
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Opcode.cpp: (KJS::): (KJS::OpcodeStats::~OpcodeStats): (KJS::OpcodeStats::recordInstruction):
- VM/Opcode.h:
WebKitTools:
- Scripts/check-for-global-initializers:
- 6:03 PM Changeset in webkit [34370] by
-
- 5 edits in trunk/WebCore
2008-06-04 Anders Carlsson <andersca@apple.com>
Reviewed by Mitz.
Get rid of DeprecatedPtrList from StyleSheetList.
- css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::CSSStyleSelector):
- css/StyleSheetList.cpp: (WebCore::StyleSheetList::~StyleSheetList): (WebCore::StyleSheetList::length): (WebCore::StyleSheetList::item):
- css/StyleSheetList.h: (WebCore::StyleSheetList::swap):
- dom/Document.cpp: (WebCore::Document::recalcStyleSelector):
- 5:31 PM Changeset in webkit [34369] by
-
- 17 edits in trunk/WebCore
2008-06-04 Anders Carlsson <andersca@apple.com>
Reviewed by Darin.
Convert more classes over to start out with a ref count of 1.
- css/CSSImageGeneratorValue.cpp: (WebCore::CSSImageGeneratorValue::generatedImage):
- css/CSSImageValue.cpp: (WebCore::CSSImageValue::cachedImage):
- css/CSSMediaRule.cpp: (WebCore::CSSMediaRule::CSSMediaRule):
- css/CSSParser.cpp: (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseFillSize): (WebCore::CSSParser::parseCounter): (WebCore::CSSParser::createRuleList):
- css/CSSRuleList.cpp: (WebCore::CSSRuleList::CSSRuleList):
- css/CSSRuleList.h: (WebCore::CSSRuleList::create):
- css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::matchRules): (WebCore::CSSStyleSelector::styleRulesForElement):
- css/CSSStyleSelector.h:
- css/CSSStyleSheet.cpp: (WebCore::CSSStyleSheet::cssRules): (WebCore::CSSStyleSheet::addSubresourceURLStrings):
- css/CSSStyleSheet.h: (WebCore::CSSStyleSheet::rules):
- css/Pair.h: (WebCore::Pair::create): (WebCore::Pair::Pair):
- html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::buffered): (WebCore::HTMLMediaElement::played): (WebCore::HTMLMediaElement::seekable):
- html/TimeRanges.cpp: (TimeRanges::TimeRanges):
- html/TimeRanges.h: (WebCore::TimeRanges::create): (WebCore::TimeRanges::TimeRanges):
- rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::addCursor): (WebCore::RenderStyle::clearCursorList):
- rendering/style/RenderStyle.h: (WebCore::StyleImage::~StyleImage): (WebCore::StyleImage::StyleImage): (WebCore::StyleCachedImage::create): (WebCore::StyleCachedImage::StyleCachedImage): (WebCore::StyleGeneratedImage::create): (WebCore::StyleGeneratedImage::StyleGeneratedImage): (WebCore::CursorList::create): (WebCore::CursorList::CursorList):
- 4:45 PM Changeset in webkit [34368] by
-
- 2 edits in trunk/WebCore
<rdar://problem/5983804> Editable web areas do not properly report the AXFocused attribute
- 3:04 PM Changeset in webkit [34367] by
-
- 2 edits in trunk/WebCore
2008-06-03 Beth Dakin <Beth Dakin>
Reviewed by Adele.
Fix for https://bugs.webkit.org/show_bug.cgi?id=19381 WebKit
Crashing Constantly on Gmail with accessibility turned on
There was a missing null-check!
- page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::roleValue):
- 2:12 PM Changeset in webkit [34366] by
-
- 21 edits in trunk/WebCore
2008-06-04 Anders Carlsson <andersca@apple.com>
Reviewed by Sam.
Convert more classes to start with a ref count of 1.
- bindings/js/JSCustomVoidCallback.cpp: (WebCore::toVoidCallback):
- bindings/js/JSCustomVoidCallback.h: (WebCore::JSCustomVoidCallback::create):
- css/StyleSheetList.cpp: (WebCore::StyleSheetList::StyleSheetList):
- css/StyleSheetList.h: (WebCore::StyleSheetList::create):
- dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::createNodeIterator): (WebCore::Document::createTreeWalker):
- dom/NodeIterator.h: (WebCore::NodeIterator::create):
- dom/Traversal.cpp: (WebCore::Traversal::Traversal):
- dom/Traversal.h:
- dom/TreeWalker.h: (WebCore::TreeWalker::create):
- history/CachedPage.cpp: (WebCore::CachedPage::create): (WebCore::CachedPage::CachedPage):
- html/CanvasGradient.cpp: (WebCore::CanvasGradient::CanvasGradient):
- html/CanvasGradient.h: (WebCore::CanvasGradient::create):
- html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D): (WebCore::CanvasRenderingContext2D::createLinearGradient): (WebCore::CanvasRenderingContext2D::createRadialGradient):
- html/CanvasRenderingContext2D.h: (WebCore::CanvasRenderingContext2D::create):
- html/HTMLCanvasElement.cpp: (WebCore::HTMLCanvasElement::getContext):
- html/VoidCallback.h: (WebCore::VoidCallback::VoidCallback):
- loader/FormState.cpp: (WebCore::FormState::create): (WebCore::FormState::FormState):
- platform/text/RegularExpression.cpp: (WebCore::RegularExpression::Private::create): (WebCore::RegularExpression::Private::Private): (WebCore::RegularExpression::RegularExpression):
- storage/SQLResultSet.cpp: (WebCore::SQLResultSet::SQLResultSet):
- storage/SQLResultSetRowList.h: (WebCore::SQLResultSetRowList::create): (WebCore::SQLResultSetRowList::SQLResultSetRowList):
- 1:47 PM Changeset in webkit [34365] by
-
- 3 edits2 adds in trunk
WebCore:
Reviewed by Dave Hyatt.
- fix <rdar://problem/5962118> Crash in RenderBlock::calcColumnWidth()
Test: fast/multicol/gap-non-negative.html
- css/CSSParser.cpp: (WebCore::CSSParser::parseValue): Changed to not allow negative values for column-gap, per <http://www.w3.org/TR/2001/WD-css3-multicol-20010118/#column-gap>.
LayoutTests:
Reviewed by Dave Hyatt.
- test for <rdar://problem/5962118> Crash in RenderBlock::calcColumnWidth()
- fast/multicol/gap-non-negative-expected.txt: Added.
- fast/multicol/gap-non-negative.html: Added.
- 1:45 PM Changeset in webkit [34364] by
-
- 3 edits4 adds in trunk
WebCore:
Reviewed by Dave Hyatt.
- fix <rdar://problem/5962270> Crash in WebCore::RenderTableCell::computeAbsoluteRepaintRect()
Test: fast/reflections/table-cell.html
- rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::computeAbsoluteRepaintRect): Null-check parent(). (WebCore::RenderTableCell::absolutePosition): Ditto.
LayoutTests:
Reviewed by Dave Hyatt.
- test for <rdar://problem/5962270> Crash in WebCore::RenderTableCell::computeAbsoluteRepaintRect()
- fast/reflections/table-cell.html: Added.
- platform/mac/fast/reflections/table-cell-expected.checksum: Added.
- platform/mac/fast/reflections/table-cell-expected.png: Added.
- platform/mac/fast/reflections/table-cell-expected.txt: Added.
- 1:00 PM Changeset in webkit [34363] by
-
- 1 edit2 adds in trunk/WebKitSite
Added index.html files to specification directories so
things are easier to find.
- 11:53 AM Changeset in webkit [34362] by
-
- 6 edits in trunk/JavaScriptCore
2008-06-04 Kevin McCullough <kmccullough@apple.com>
Reviewed by Geoff.
<rdar://problem/5969992> JSProfiler: Remove the recursion limit in the
profiler.
- This patch removes the use of recursion for the sort functions.
- JavaScriptCore.exp: Change the signatures of the functions being exported.
- profiler/Profile.cpp: (KJS::Profile::sort): This generic function will accept any of the static sort functions and apply them to the whole tree.
- profiler/Profile.h: All of the sorting functions now call the new sort() function. (KJS::Profile::sortTotalTimeDescending): (KJS::Profile::sortTotalTimeAscending): (KJS::Profile::sortSelfTimeDescending): (KJS::Profile::sortSelfTimeAscending): (KJS::Profile::sortCallsDescending): (KJS::Profile::sortCallsAscending): (KJS::Profile::sortFunctionNameDescending): (KJS::Profile::sortFunctionNameAscending):
- profiler/ProfileNode.cpp: (KJS::ProfileNode::ProfileNode): m_head used to point to the head node if this was the head node. It now points to null to make iteration easy (KJS::ProfileNode::willExecute): Now must check if m_head is null, this check used to happend in the constructor. (KJS::ProfileNode::stopProfiling): Again the check is slightly different to determine if this is the head. (KJS::ProfileNode::traverseNextNode): This function returns the next node in post order. (KJS::ProfileNode::sort): This generic function will sort according to the comparator passed in, then reset the children pointers to macth the new order.
- profiler/ProfileNode.h: The sorting function were removed from the definition file and instead use the new generic sort() function (KJS::ProfileNode::totalPercent): because the head can now be empty we need to check here too for the head node. (KJS::ProfileNode::selfPercent): Ditto (KJS::ProfileNode::firstChild): This function is necessary for the iterative algorithm in Profile.cpp. (KJS::ProfileNode::sortTotalTimeDescending): (KJS::ProfileNode::sortTotalTimeAscending): (KJS::ProfileNode::sortSelfTimeDescending): (KJS::ProfileNode::sortSelfTimeAscending): (KJS::ProfileNode::sortCallsDescending): (KJS::ProfileNode::sortCallsAscending): (KJS::ProfileNode::sortFunctionNameDescending): (KJS::ProfileNode::sortFunctionNameAscending): (KJS::ProfileNode::childrenBegin): (KJS::ProfileNode::childrenEnd): (KJS::ProfileNode::totalTimeDescendingComparator): (KJS::ProfileNode::totalTimeAscendingComparator): (KJS::ProfileNode::selfTimeDescendingComparator): (KJS::ProfileNode::selfTimeAscendingComparator): (KJS::ProfileNode::callsDescendingComparator): (KJS::ProfileNode::callsAscendingComparator): (KJS::ProfileNode::functionNameDescendingComparator): (KJS::ProfileNode::functionNameAscendingComparator):
- 11:10 AM Changeset in webkit [34361] by
-
- 11 edits2 deletes in trunk
Reviewed by Darin.
Fix JSClassCreate to work with old JSCore API threading model.
No change on SunSpider.
- API/JSClassRef.cpp: (OpaqueJSClass::OpaqueJSClass): Since JSClass is constructed without a context, there is no way for it to create Identifiers. Also, added initializeThreading(), just for good measure.
- API/JSCallbackObjectFunctions.h: (KJS::::getPropertyNames): Make an Identifier out of the string here, because propertyNames.add() needs that.
- kjs/identifier.cpp:
- kjs/identifier.h: (KJS::Identifier::equal):
- kjs/ustring.cpp: (KJS::equal): Moved equal() from identifier.h to ustring.h, because it's not really about Identifiers, and to make it possible to use it from StrHash. Include StrHash.h from ustring.h to avoid having the behavior depend on headers that happen to be included.
- wtf/StrHash.h: Removed.
- kjs/ustring.h: Made RefPtr<UString::Rep> use the same default hash as UString::Rep* (it used to default to pointer equality). Moved the whole StrHash header into ustring.h.
- JavaScriptCore.exp: Export equal() for WebCore use (this StrHash is used in c_class.cpp, jni_class.cpp, and npruntime.cpp).
- 9:29 AM Changeset in webkit [34360] by
-
- 3 edits in trunk/JavaScriptCore
Rubber-stamped by Darin.
Fix spacing in collector.{h,cpp}.
- kjs/collector.cpp:
- kjs/collector.h:
- 6:40 AM Changeset in webkit [34359] by
-
- 2 edits in trunk/WebKit/qt
2008-06-04 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon.
Fix a failing assertion when calling QWebFrame::evaluateJavaScript.
The starting line number has to be 1 instead of 0.
Jun 3, 2008:
- 7:57 PM Changeset in webkit [34358] by
-
- 6 edits2 adds in trunk
WebCore:
2008-06-03 Antti Koivisto <Antti Koivisto>
Reviewed by Darin.
https://bugs.webkit.org/show_bug.cgi?id=19384
Implement path morphing for SVG animation
You can animate smoothly between paths that have equal number of control points of matching type.
Test: svg/custom/animate-path-morphing.svg
- svg/SVGAnimateElement.cpp: (WebCore::SVGAnimateElement::determinePropertyType): (WebCore::SVGAnimateElement::calculateAnimatedValue): (WebCore::SVGAnimateElement::calculateFromAndToValues): (WebCore::SVGAnimateElement::resetToBaseValue): (WebCore::SVGAnimateElement::applyResultsToTarget):
- svg/SVGAnimateElement.h: (WebCore::SVGAnimateElement::):
- svg/SVGPathSegList.cpp: (WebCore::blendFunc): (WebCore::SVGPathSegList::createAnimated):
- svg/SVGPathSegList.h:
LayoutTests:
2008-06-03 Antti Koivisto <Antti Koivisto>
Reviewed by Darin.
Test for path morphing.
- platform/mac/svg/custom/animate-path-morphing-expected.txt: Added.
- svg/custom/animate-path-morphing.svg: Added.
- 7:09 PM Changeset in webkit [34357] by
-
- 3 edits in trunk/WebCore
2008-06-03 Darin Adler <Darin Adler>
- try to fix the Qt build
- bridge/qt/qt_runtime.cpp: (KJS::Bindings::QtRuntimeMetaMethod::lengthGetter): Remove the originalObject argument. (KJS::Bindings::QtRuntimeMetaMethod::connectGetter): Ditto. (KJS::Bindings::QtRuntimeMetaMethod::disconnectGetter): Ditto. (KJS::Bindings::QtRuntimeConnectionMethod::lengthGetter): Ditto. (KJS::Bindings::QtConnectionObject::execute): Use callAsFunction.
- bridge/qt/qt_runtime.h: More of the same.
- 6:03 PM Changeset in webkit [34356] by
-
- 3 edits in trunk/JavaScriptCore
2008-06-03 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Build fix. The cleanup in r34355 missed a method.
- kjs/nodes.cpp:
- kjs/nodes.h:
- 5:40 PM Changeset in webkit [34355] by
-
- 71 edits in trunk
2008-06-03 Darin Adler <Darin Adler>
Reviewed by Geoff.
- https://bugs.webkit.org/show_bug.cgi?id=19269 speed up SunSpider by eliminating the toObject call for most get/put/delete
Makes standalone SunSpider 1.025x as fast as before.
The getOwnPropertySlot virtual function now takes care of the toObject call
for get. Similarly, the put function (and later deleteProperty) does the
same for those operations. To do this, the virtual functions were moved from
the JSObject class to the JSCell class. Also, since the caller no longer knows
the identity of the "original object", which is used by JavaScript-function
based getters, changed the PropertySlot class so the original object is
already stored in the slot when getOwnPropertySlot is called, if the caller
intends to call getValue.
This affected the old interpreter code enough that the easiest thing for me
was to just delete it. While I am not certain the mysterious slowdown is not
still occurring, the net change is definitely a significant speedup.
- JavaScriptCore.exp: Updated.
- VM/Machine.cpp: Moved the UNLIKELY macro into AlwaysInline.h. (KJS::resolve): Set up the originalObject in the PropertySlot before calling getPropertySlot. Also removed the originalObject argument from getValue. (KJS::resolve_skip): Ditto. (KJS::resolveBaseAndProperty): Ditto. (KJS::resolveBaseAndFunc): Ditto. (KJS::Machine::privateExecute): Removed the toObject calls from the get and put functions where possible, instead calling directly with JSValue and letting the JSValue and JSCell calls handle toObject. Same for toThisObject.
- kjs/ExecState.h: Removed OldInterpreterExecState.
- API/JSBase.cpp: Updated includes.
- kjs/LocalStorageEntry.h: Removed contents. Later we can remove the file too.
- kjs/array_instance.cpp: (KJS::ArrayInstance::lengthGetter): Removed originalObject argumet. (KJS::ArrayInstance::inlineGetOwnPropertySlot): Don't pass a base value to setValueSlot. Also use UNLIKELY around the "getting elements past the end of the array" code path; less common than successfully getting an element.
- kjs/array_object.cpp: (KJS::getProperty): Initialize the PropertySlot with the original object. Don't pass the original object to the get function. (KJS::arrayProtoFuncFilter): Ditto. (KJS::arrayProtoFuncMap): Ditto. (KJS::arrayProtoFuncEvery): Ditto. (KJS::arrayProtoFuncForEach): Ditto. (KJS::arrayProtoFuncSome): Ditto.
- kjs/function_object.cpp: (KJS::FunctionObjectImp::construct): Removed an obsolete comment.
- kjs/grammar.y: Eliminated support for some of the node types that were used to optimize executing from the syntax tree.
- kjs/internal.cpp: (KJS::StringImp::toThisObject): Added. Same as toObject. (KJS::NumberImp::toThisObject): Ditto. (KJS::GetterSetterImp::getOwnPropertySlot): Added. Not reached. (KJS::GetterSetterImp::put): Ditto. (KJS::GetterSetterImp::toThisObject): Ditto.
- kjs/internal.h: Added toThisObject to NumberImp for speed.
- kjs/lexer.cpp: (KJS::Lexer::shift): Changed shift to just do a single character, to unroll the loop and especially to make the one character case faster. (KJS::Lexer::setCode): Call shift multiple times instead of passing a number. (KJS::Lexer::lex): Ditto. (KJS::Lexer::matchPunctuator): Ditto. Also removed unneeded elses after returns. (KJS::Lexer::scanRegExp): Ditto.
- kjs/lexer.h: Removed the count argument from shift.
- kjs/math_object.cpp: (KJS::mathProtoFuncPow): Call jsNaN instead of jsNumber(NaN).
- kjs/nodes.cpp: Removed some of the things needed only for the pre-SquirrelFish execution model. (KJS::ForNode::emitCode): Handle cases where some expressions are missing by not emitting any code at all. The old way was to emit code for "true", but this is an unnecessary remnant of the old way of doing things.
- kjs/nodes.h: Removed some of the things needed only for the pre-SquirrelFish execution model.
- kjs/object.cpp: (KJS::JSObject::fillGetterPropertySlot): Changed to only pass in the getter function. The old code passed in a base, but it was never used when actually getting the property; the toThisObject call was pointless. Also changed to not pass a base for setUndefined.
- kjs/object.h: Added the new JSCell operations to GetterSetterImp. Never called. (KJS::JSObject::get): Initialize the object in the PropertySlot and don't pass it in getValue. (KJS::JSObject::getOwnPropertySlotForWrite): Removed the base argument in calls to setValueSlot. (KJS::JSObject::getOwnPropertySlot): Ditto. (KJS::JSValue::get): Added. Here because it calls through to JSObject. A version of JSObject::get that also handles the other types of JSValue by creating the appropriate wrapper. Saves the virtual call to toObject. (KJS::JSValue::put): Ditto. (KJS::JSValue::deleteProperty): Ditto.
- kjs/property_slot.cpp: (KJS::PropertySlot::undefinedGetter): Removed the originalObject argument. (KJS::PropertySlot::ungettableGetter): Ditto. (KJS::PropertySlot::functionGetter): Ditto. Use the value in the base as the "this" object, which will be set to the original object by the new PropertySlot initialization code. Also call toThisObject. The old code did not do this, but needed to so we can properly handle the activation object like the other similar code paths.
- kjs/property_slot.h: (KJS::PropertySlot::PropertySlot): Added a constructor that takes a base object. In debug builds, set the base to 0 if you don't pass one. (KJS::PropertySlot::getValue): Don't take or pass the originalObject. (KJS::PropertySlot::setValueSlot): Don't take a base object, and clear the base object in debug builds. (KJS::PropertySlot::setGetterSlot): Ditto. (KJS::PropertySlot::setUndefined): Ditto. (KJS::PropertySlot::setUngettable): Ditto. (KJS::PropertySlot::slotBase): Assert that a base object is present. This will fire if someone actually calls the get function without having passed in a base object and the getter needs it. (KJS::PropertySlot::setBase): Added. Used by the code that implements toObject so it can supply the original object after the fact. (KJS::PropertySlot::clearBase): Added. Clears the base, but is debug-only code because it's an error to fetch the base if you don't have a guarantee it was set.
- API/JSCallbackObject.h:
- API/JSCallbackObjectFunctions.h: (KJS::JSCallbackObject::cachedValueGetter): (KJS::JSCallbackObject::staticValueGetter): (KJS::JSCallbackObject::staticFunctionGetter): (KJS::JSCallbackObject::callbackGetter):
- kjs/JSActivation.cpp: (KJS::JSActivation::getOwnPropertySlot): (KJS::JSActivation::argumentsGetter):
- kjs/JSActivation.h:
- kjs/JSVariableObject.h: (KJS::JSVariableObject::symbolTableGet):
- kjs/array_instance.h:
- kjs/function.cpp: (KJS::FunctionImp::argumentsGetter): (KJS::FunctionImp::callerGetter): (KJS::FunctionImp::lengthGetter): (KJS::Arguments::mappedIndexGetter):
- kjs/function.h:
- kjs/lookup.h: (KJS::staticFunctionGetter): (KJS::staticValueGetter):
- kjs/string_object.cpp: (KJS::StringInstance::lengthGetter): (KJS::StringInstance::indexGetter): (KJS::stringInstanceNumericPropertyGetter):
- kjs/string_object.h: Removed originalObject arguments from getters. Don't pass base values to the various PropertySlot functions that no longer take them.
- kjs/value.cpp: (KJS::JSCell::getOwnPropertySlot): Added. Calls toObject and then sets the slot. This function has to always return true, because the caller can't walk the prototype chain. Because of that, we do a getPropertySlot, not getOwnPropertySlot, which works for the caller. This is private, only called by getOwnPropertySlotInternal. (KJS::JSCell::put): Added. Calls toObject and then put. (KJS::JSCell::toThisObject): Added. Calls toObject.
- kjs/value.h: Added get, put, and toThisObject to both JSValue and JSCell. These take care of the toObject operation without an additional virtual function call, and so make the common "already an object" case faster.
- wtf/AlwaysInline.h: Moved the UNLIKELY macro here for now. Maybe we can find a better place later, or rename this header.
JavaScriptGlue:
2008-06-03 Darin Adler <Darin Adler>
- update for JavaScriptCore changes for https://bugs.webkit.org/show_bug.cgi?id=19269 speed up SunSpider by eliminating the toObject call for most get/put/delete
- UserObjectImp.cpp: (UserObjectImp::userObjectGetter): Removed originalObject argument.
- UserObjectImp.h: Ditto.
WebCore:
2008-06-03 Justin Garcia <justin.garcia@apple.com>
Reviewed by John.
<rdar://problem/5763082> GMail: Hang when removing indent from nested list
<rdar://problem/5775449> In Gmail and GoogleDocs, a hang occurs when I attempt to apply a list style to a large selection of text
<rdar://problem/5937624> 9D32: Hang in Safari. Using 100% of processor
- editing/InsertListCommand.cpp: (WebCore::InsertListCommand::modifyRange): doApply() may operate on and remove the last paragraph of the selection from the document if it's in the same list item as startOfCurrentParagraph. Return early to avoid an infinite loop and because there is no more work to be done. Added a FIXME (<rdar://problem/5983974>) about the incorrect endingSelection()s.
- 5:36 PM Changeset in webkit [34354] by
-
- 3 edits2 adds in trunk
WebCore:
2008-06-03 Justin Garcia <justin.garcia@apple.com>
Reviewed by John.
<rdar://problem/5763082> GMail: Hang when removing indent from nested list
<rdar://problem/5775449> In Gmail and GoogleDocs, a hang occurs when I attempt to apply a list style to a large selection of text
<rdar://problem/5937624> 9D32: Hang in Safari. Using 100% of processor
- editing/InsertListCommand.cpp: (WebCore::InsertListCommand::modifyRange): doApply() may operate on and remove the last paragraph of the selection from the document if it's in the same list item as startOfCurrentParagraph. Return early to avoid an infinite loop and because there is no more work to be done. Added a FIXME (<rdar://problem/5983974>) about the incorrect endingSelection()s.
LayoutTests:
2008-06-03 Justin Garcia <justin.garcia@apple.com>
Reviewed by John.
<rdar://problem/5763082> GMail: Hang when removing indent from nested list
- editing/execCommand/5763082-expected.txt: Added.
- editing/execCommand/5763082.html: Added.
- 3:53 PM Changeset in webkit [34353] by
-
- 4 edits in tags/Safari-6526.9.1
Versioning.
- 3:52 PM Changeset in webkit [34352] by
-
- 2 edits in tags/Safari-6526.9.1/WebKit/mac
Merge r34347.
- 3:48 PM Changeset in webkit [34351] by
-
- 15 edits in trunk
Bug 12983: Web Inspector break on the debugger keyword
<https://bugs.webkit.org/show_bug.cgi?id=12983>
Reviewed by Tim
Added a DebuggerStatementNode to handle codegen, and added a new
DidReachBreakPoint debug event (which will hopefully be useful
if we ever move breakpoint management into JSC proper). Also
added didReachBreakpoint to Debugger to allow us to actually respond
to this event.
- 3:46 PM Changeset in webkit [34350] by
-
- 1 copy in tags/Safari-6526.9.1
New tag.
- 2:43 PM Changeset in webkit [34349] by
-
- 2 edits in trunk/WebCore
2008-06-03 Darin Adler <Darin Adler>
Fix build with GCC.
- page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::ariaRoleHasPresentationalChildren): Put a default case back in the switch statement so we don't get warned about all the unhandled cases with GCC. Remove the unreachable code that was causing a warning in Visual Studio.
- 2:01 PM Changeset in webkit [34348] by
-
- 2 edits in trunk/WebKit/qt
2008-06-03 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>
Reviewed by Darin.
- Api/qwebhistoryinterface.cpp: Remove WebCore::historyContains(). This function is not used anywhere internally and is only a convenience function that can still be accomplished using QWebHistoryInterface::historyContains();
- 12:25 PM Changeset in webkit [34347] by
-
- 2 edits in trunk/WebKit/mac
2008-06-03 Anders Carlsson <andersca@apple.com>
Reviewed by Darin.
<rdar://problem/5980961>
In 64-bit Web Kit, converting between float and double, can cause rounding errors which in turn causes
newBottom to be larger than oldBottom which is illegal.
- WebView/WebHTMLView.mm: (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]):
- 11:46 AM Changeset in webkit [34346] by
-
- 10 edits in trunk
2008-05-30 Steve Falkenburg <sfalken@apple.com>
Registry-free COM.
WebKit no longer requires COM registration.
Registry-free COM information is read from the application manifest.
Only 1 set of CLSIDs are now used, since we don't need to worry about registry collisions.
The second set remains, but only temporarily so nightlies continue to work.
This is supported for XPSP2 and later. Earlier systems require an installer
to write the required registry keys. Nightlies and developer builds require
XPSP2, Server 2003, or later.
Reviewed by Adam.
- ForEachCoClass.cpp: Moved COM registration code here from WebKitDLL.cpp. This is ONLY used in the nightly case. (substituteGUID): Moved here from WebKitDLL.cpp. (registerWebKit): Moved here from WebKitDLL.cpp. (setUseOpenSourceWebKit): Call registerWebKit instead of swapping progids. There is only 1 set of progids now - for the nightly.
- ForEachCoClass.h: Removed production progids.
- Interfaces/WebKit.idl: Added prototype for shutDownWebKit.
- WebKit.vcproj/Interfaces.vcproj: Changed path to type library to move it out of project directory.
- WebKit.vcproj/WebKit.vcproj: Changed path to type library to move it out of project directory.
- WebKitDLL.cpp: (DllUnregisterServer): Does nothing. Entry point is still present for backward compatibility. (DllRegisterServer): Does nothing. Entry point is still present for backward compatibility. (RunAsLocalServer): Does nothing. Entry point is still present for backward compatibility. (shutDownWebKit): Moved from ForEachCoClass.
- WebKitDLL.h:
2008-05-30 Steve Falkenburg <sfalken@apple.com>
Generate an isolated COM manifest for registry free COM.
- DumpRenderTree/win/DumpRenderTree.vcproj:
- 11:29 AM Changeset in webkit [34345] by
-
- 2 edits in trunk/WebCore
Fix build.
- 10:12 AM Changeset in webkit [34344] by
-
- 4 edits in trunk/WebCore
2008-06-03 Justin Garcia <justin.garcia@apple.com>
Reviewed by John Sullivan.
<rdar://problem/5943515> SelectionController()->modify Backward/Forward with LineGranularity sometimes don't work
next/previousLinePosition didn't work if the input position was the last line in its
block. The code for handling such a position assumed that the input position was
editable, and that the position to be returned needed to also be editable. Changed
this code to just maintain the same editability.
No test case for now because we haven't enabled selection extension operations for
non-editable selections. I enabled them temporarily to test the fix, however.
- dom/Node.cpp: Removed the now unused nextEditable(int).
- dom/Node.h:
- editing/visible_units.cpp: (WebCore::previousLeafWithSameEditability): Added. Like previousEditable but just returns a node of the same editability. (WebCore::previousLinePosition): Call previousLeaf instead of previousEditable. (WebCore::nextLeafWithSameEditability): Added. (WebCore::nextLinePosition): Same as above.
- 10:07 AM Changeset in webkit [34343] by
-
- 4 edits4 adds in trunk
WebCore:
2008-06-02 Anders Carlsson <andersca@apple.com>
Reviewed by John and Sam.
<rdar://problem/5955218>
Assertion failure in ApplicationCacheGroup::addEntry when reloading a page with a cache manifest (19182)
- loader/appcache/ApplicationCacheGroup.h: (WebCore::ApplicationCacheGroup::hasNewestCache): Add new accessor.
- loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::cacheGroupDestroyed): Don't call newestCache since it will always be null. Instead, call hasNewestCache which returns the saved newest cache pointer.
LayoutTests:
2008-06-03 Anders Carlsson <andersca@apple.com>
Reviewed by John and Sam.
<rdar://problem/5955218>
Assertion failure in ApplicationCacheGroup::addEntry when reloading a page with a cache manifest (19182)
- http/tests/appcache/crash-when-navigating-away-then-back-expected.txt: Added.
- http/tests/appcache/crash-when-navigating-away-then-back.html: Added.
- http/tests/appcache/resources/crash-when-navigating-away-then-back.html: Added.
- http/tests/appcache/resources/crash-when-navigating-away-then-back.manifest: Added.
- 8:56 AM Changeset in webkit [34342] by
-
- 2 edits in trunk/SunSpider
Rubber-stamped by Mark Rowe.
Roll out r31215 - with Mac OS X 10.5.3, there is no need to pause update daemon any more.
- sunspider:
- 8:29 AM Changeset in webkit [34341] by
-
- 6 edits4 adds in trunk
WebCore:
Reviewed by Dave Hyatt.
- fix <rdar://problem/5965410> In fixed table layout, the width of cells with auto width should be proportional to their column span, to match Firefox and IE.
Test: fast/table/fixed-with-auto-with-colspan.html
- rendering/FixedTableLayout.cpp: (WebCore::FixedTableLayout::layout):
LayoutTests:
Reviewed by Dave Hyatt.
- test and updated results for <rdar://problem/5965410> In fixed table layout, the width of cells with auto width should be proportional to their column span, to match Firefox and IE.
- fast/table/fixed-with-auto-with-colspan.html: Added.
- platform/mac/fast/table/fixed-with-auto-with-colspan-expected.checksum: Added.
- platform/mac/fast/table/fixed-with-auto-with-colspan-expected.png: Added.
- platform/mac/fast/table/fixed-with-auto-with-colspan-expected.txt: Added.
- platform/mac/tables/mozilla_expected_failures/bugs/bug220653-expected.checksum:
- platform/mac/tables/mozilla_expected_failures/bugs/bug220653-expected.png:
- platform/mac/tables/mozilla_expected_failures/bugs/bug220653-expected.txt:
- 2:01 AM Changeset in webkit [34340] by
-
- 2 edits in trunk/WebCore
2008-06-03 Alp Toker <alp@nuanti.com>
Rubber-stamped by Alexey.
Remove GenerateNativeConverter added in r34331 to fix JS regressions.
(JSTextCustom.cpp added in r34141 is now unused in any code path.)
- dom/Text.idl:
- 1:47 AM Changeset in webkit [34339] by
-
- 1 edit1 add in trunk/WebKitSite
2008-06-03 Maciej Stachowiak <mjs@apple.com>
Add a snapshot of the squirrelfish bytecode docs.
- specs/squirrelfish-bytecode.html: Added.
- 1:44 AM Changeset in webkit [34338] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-03 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- document remaining opcodes.
- VM/Machine.cpp: (KJS::Machine::privateExecute): Document call, call_eval, construct, ret and end opcodes.
- 1:42 AM Changeset in webkit [34337] by
-
- 2 edits in trunk/LayoutTests
<rdar://problem/5621979> editing/selection/5241148.html crashes on Windows
Try removing it from the Skipped list, as this is not reproducible with current closed
source libraries.
- platform/win/Skipped:
- 12:56 AM Changeset in webkit [34336] by
-
- 2 edits in trunk/WebCore
2008-06-03 Alexander Vassilev <avasilev@voipgate.com>
Reviewed, tweaked and landed by Alexey.
https://bugs.webkit.org/show_bug.cgi?id=19363
Compiler error in Entity.h
- dom/Entity.h: (WebCore::Entity::Entity): Add a private constructor to shut down the errors.
- 12:46 AM Changeset in webkit [34335] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-03 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- VM/Machine.cpp: (KJS::Machine::privateExecute): Document throw and catch opcodes.
Jun 2, 2008:
- 11:26 PM Changeset in webkit [34334] by
-
- 29 edits in trunk
2008-06-02 Geoffrey Garen <ggaren@apple.com>
Reviewed by Alexey Proskuryakov.
Removed JSObject::call, since it just called JSObject::callAsFunction.
SunSpider reports no change.
JavaScriptGlue:
2008-06-02 Geoffrey Garen <ggaren@apple.com>
Reviewed by Alexey Proskuryakov.
Removed JSObject::call, since it just called JSObject::callAsFunction.
SunSpider reports no change.
WebCore:
2008-06-02 Geoffrey Garen <ggaren@apple.com>
Reviewed by Alexey Proskuryakov.
Removed JSObject::call, since it just called JSObject::callAsFunction.
SunSpider reports no change.
- 8:48 PM Changeset in webkit [34333] by
-
- 2 edits in trunk/PlanetWebKit
2008-06-02 Maciej Stachowiak <mjs@apple.com>
- config.ini: Correct URL for just-added blog.
- 8:15 PM Changeset in webkit [34332] by
-
- 2 edits in trunk/PlanetWebKit
2008-06-02 Maciej Stachowiak <mjs@apple.com>
Rubber stamped by Mark.
- config.ini: Add Camerom's Summer of JavaScriptCore blog.
- 7:17 PM Changeset in webkit [34331] by
-
- 4 edits in trunk/WebCore
2008-06-02 Alp Toker <alp@nuanti.com>
Reviewed by Maciej.
Two of the toJSNewlyCreated() optimisations in r34141 were never
reached due to a generator bug and missing IDL attribute.
Fix header generation to provide the necessary toJSNewlyCreated()
overloads.
Patch includes a related build fix by Jan Michael Alonzo.
- GNUmakefile.am:
- bindings/scripts/CodeGeneratorJS.pm:
- dom/Text.idl:
- 6:05 PM Changeset in webkit [34330] by
-
- 2 edits in trunk/WebKitSite
2008-06-02 Geoffrey Garen <ggaren@apple.com>
Transparent background!
- blog-files/squirrelfish.png:
- 5:30 PM Changeset in webkit [34329] by
-
- 3 edits in trunk
2008-06-02 Alp Toker <alp@nuanti.com>
GTK+/autotools Windows build system fixes.
- GNUmakefile.am:
- configure.ac:
- 4:04 PM Changeset in webkit [34328] by
-
- 5 edits in trunk/WebCore
2008-06-02 Alice Liu <alice.liu@apple.com>
Reviewed by Beth Dakin.
Some ARIA roles are designated to have presentational children, which
means that their descendants aren't exposed to assistive technologies
on an individual basis. What this means in webcore is that descendants
of such roles need to be ignored in terms of accessibility.
- page/AccessibilityObject.cpp: (WebCore::AccessibilityObject::isPresentationalChildOfAriaRole): (WebCore::AccessibilityObject::ariaRoleHasPresentationalChildren):
- page/AccessibilityObject.h:
- page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): (WebCore::RoleEntry::): (WebCore::AccessibilityRenderObject::isPresentationalChildOfAriaRole): (WebCore::AccessibilityRenderObject::ariaRoleHasPresentationalChildren):
- page/AccessibilityRenderObject.h:
- 3:28 PM Changeset in webkit [34327] by
-
- 2 edits in trunk/WebKitSite
2008-06-02 Geoffrey Garen <ggaren@apple.com>
Crop!
- blog-files/squirrelfish-webkit-graph.png:
- 3:07 PM Changeset in webkit [34326] by
-
- 1 edit1 move in trunk/WebKitSite
2008-06-02 Geoffrey Garen <ggaren@apple.com>
Renamed this file quiet down the peanut gallery.
- blog-files/squirrelfish-webkit-graph.png: Copied from blog-files/webkit-graph.png.
- blog-files/webkit-graph.png: Removed.
- 3:02 PM Changeset in webkit [34325] by
-
- 1 edit1 add in trunk/WebKitSite
2008-06-02 Geoffrey Garen <ggaren@apple.com>
Added a graph.
- blog-files/webkit-graph.png: Added.
- 2:54 PM Changeset in webkit [34324] by
-
- 2 edits4 adds in trunk
2008-06-02 David Hyatt <hyatt@apple.com>
When the right slice value is omitted in border-image it should use the value of the left slice and not
the top slice.
Reviewed by darin
Added fast/borders/border-image-omit-right-slice.html
- css/CSSParser.cpp: (WebCore::BorderImageParseContext::commitBorderImage)
- 2:46 PM Changeset in webkit [34323] by
-
- 6 edits2 adds in trunk
WebCore:
2008-06-02 Anders Carlsson <andersca@apple.com>
Reviewed by David Hyatt and Mitz.
<rdar://problem/5704119>
repro crash in WebCore::RenderPart::setWidget (plugin-related?)
Test: platform/mac/plugins/update-widget-from-style-recalc.html
Make sure to update the document's rendering before calling updateWidget.
- html/HTMLEmbedElement.cpp: (WebCore::HTMLEmbedElement::updateWidget):
- html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::updateWidget):
WebKitTools:
2008-06-02 Anders Carlsson <andersca@apple.com>
Reviewed by David Hyatt and Mitz.
<rdar://problem/5704119>
repro crash in WebCore::RenderPart::setWidget (plugin-related?)
Call -[WebView display] in the "plug-in" failed delegate method, simulating
the sheet that Safari puts up.
- DumpRenderTree/mac/ResourceLoadDelegate.mm: (-[ResourceLoadDelegate webView:plugInFailedWithError:dataSource:]):
LayoutTests:
2008-06-02 Anders Carlsson <andersca@apple.com>
Reviewed by David Hyatt and Mitz.
<rdar://problem/5704119>
repro crash in WebCore::RenderPart::setWidget (plugin-related?)
- platform/mac/plugins/update-widget-from-style-recalc-expected.txt: Added.
- platform/mac/plugins/update-widget-from-style-recalc.html: Added.
- 2:45 PM Changeset in webkit [34322] by
-
- 1 edit1 move in trunk/WebKitSite
2008-06-02 Geoffrey Garen <ggaren@apple.com>
Moved the squirrelfish mascot to the right place.
- blog-files/squirrelfish.png: Copied from images/squirrelfish.png.
- images/squirrelfish.png: Removed.
- 2:41 PM Changeset in webkit [34321] by
-
- 1 edit1 add in trunk/WebKitSite
2008-06-02 Geoffrey Garen <ggaren@apple.com>
Uploaded the squirrelfish mascot.
- images/squirrelfish.png: Added.
- 1:47 PM Changeset in webkit [34320] by
-
- 1 edit10 adds in trunk/LayoutTests
LayoutTests:
2008-06-02 Julien Chaffraix <jchaffraix@webkit.org>
Reviewed by Darin.
Bug 18655: [XHR] OnProgress needs more test case
https://bugs.webkit.org/show_bug.cgi?id=18655
- http/tests/xmlhttprequest/resources/five-tiny-chunk-one-second-delay.php: Added.
- http/tests/xmlhttprequest/resources/noContentLength.asis: Added.
- http/tests/xmlhttprequest/xmlhttprequest-LSProgressEvent-ProgressEvent-should-match-expected.txt: Added.
- http/tests/xmlhttprequest/xmlhttprequest-LSProgressEvent-ProgressEvent-should-match.html: Added.
- http/tests/xmlhttprequest/xmlhttprequest-addEventListener-onProgress-expected.txt: Added.
- http/tests/xmlhttprequest/xmlhttprequest-addEventListener-onProgress.html: Added.
- http/tests/xmlhttprequest/xmlhttprequest-no-content-length-onProgress-expected.txt: Added.
- http/tests/xmlhttprequest/xmlhttprequest-no-content-length-onProgress.html: Added.
- http/tests/xmlhttprequest/xmlhttprequest-onProgress-open-should-zero-length-expected.txt: Added.
- http/tests/xmlhttprequest/xmlhttprequest-onProgress-open-should-zero-length.html: Added.
- 1:45 PM Changeset in webkit [34319] by
-
- 8 edits in trunk/JavaScriptCore
2008-06-02 Geoffrey Garen <ggaren@apple.com>
Reviewed by Darin Adler.
A little cleanup in the CodeGenerator.
- VM/CodeGenerator.cpp: A few changes here.
(1) Removed remaining cases of the old hack of putting "this" into the
symbol table; replaced with explicit tracking of m_thisRegister.
(2) Made m_thisRegister behave the same for function, eval, and program
code, removing the static programCodeThis() function.
(3) Added a feature to nix a ScopeNode's declaration stacks when done
compiling, to save memory.
(4) Removed code that copied eval declarations into special vectors: we
just use the originals in the ScopeNode now.
- VM/CodeGenerator.h: Removed unneded parameters from the CodeGenerator constructor: we just use get that data from the ScopeNode now.
- VM/Machine.cpp: (KJS::Machine::execute): When executing an eval node, don't iterate a special copy of its declarations; iterate the originals, instead.
- kjs/nodes.cpp: Moved responsibility for knowing what AST data to throw away into the CodeGenerator. Nodes no longer call shrinkCapacity on their data directly.
- kjs/nodes.h: Changed FunctionStack to ref its contents, so declaration data stays around even after we've thrown away the AST, unless we explicitly throw away the declaration data, too. This is useful for eval code, which needs to reference its declaration data at execution time. (Soon, it will be useful for program code, too, since program code should do the same.)
- 1:15 PM Changeset in webkit [34318] by
-
- 4 edits in trunk/WebCore
2008-06-02 Kevin McCullough <kmccullough@apple.com>
Reviewed by Adam.
<rdar://problem/5954226> JSProfiler: Move the calls from
JavaScriptProfileNode to JavaScriptProfile in WebCore (19231)
- This Makes the profiler now call sorting function s on a per-profile basis instead of on a node in the profile.
- This is also needed to remove the recursion limit in the profiler <rdar://problem/5969992> JSProfiler: Remove the recursion limit in the profiler since once the limit is removed calling sort on a node will only sort that node's children not the entire sub-tree of that node.
- page/JavaScriptProfile.cpp: All of these functions were moved from JavaScriptProfileNode. (WebCore::sortTotalTimeDescending): (WebCore::sortTotalTimeAscending): (WebCore::sortSelfTimeDescending): (WebCore::sortSelfTimeAscending): (WebCore::sortCallsDescending): (WebCore::sortCallsAscending): (WebCore::sortFunctionNameDescending): (WebCore::sortFunctionNameAscending): (WebCore::ProfileClass):
- page/JavaScriptProfileNode.cpp: (WebCore::ProfileNodeClass):
- page/inspector/ProfileView.js: Change uses of JavaScriptProfileNode for sorting to JavaScriptProfile.
- 1:00 PM Changeset in webkit [34317] by
-
- 3 edits1 move28 adds3 deletes in trunk
WebCore:
Reviewed by Oliver Hunt.
- fix more cases of https://bugs.webkit.org/show_bug.cgi?id=19344 <rdar://problem/5977300> Regression: Shadow offsets seem to have changed in 10.5.3 in canvas
Tests: fast/canvas/shadow-offset-1.html
fast/canvas/shadow-offset-2.html
fast/canvas/shadow-offset-3.html
fast/canvas/shadow-offset-4.html
fast/canvas/shadow-offset-5.html
fast/canvas/shadow-offset-6.html
fast/canvas/shadow-offset-7.html
- html/CanvasRenderingContext2D.cpp: (WebCore::adjustedShadowSize): Added this helper function. (WebCore::CanvasRenderingContext2D::setShadow): Changed to call adjustedShadowSize(). (WebCore::CanvasRenderingContext2D::applyShadow): Ditto.
LayoutTests:
Reviewed by Oliver Hunt.
- additional tests for https://bugs.webkit.org/show_bug.cgi?id=19344 <rdar://problem/5977300> Regression: Shadow offsets seem to have changed in 10.5.3 in canvas
- fast/canvas/resources/shadow-offset.js: Added.
- fast/canvas/shadow-offset-1.html: Copied from LayoutTests/fast/canvas/shadow-offset.html.
- fast/canvas/shadow-offset-2.html: Added.
- fast/canvas/shadow-offset-3.html: Added.
- fast/canvas/shadow-offset-4.html: Added.
- fast/canvas/shadow-offset-5.html: Added.
- fast/canvas/shadow-offset-6.html: Added.
- fast/canvas/shadow-offset-7.html: Added.
- fast/canvas/shadow-offset.html: Removed.
- platform/mac/fast/canvas/shadow-offset-1-expected.checksum: Added.
- platform/mac/fast/canvas/shadow-offset-1-expected.png: Added.
- platform/mac/fast/canvas/shadow-offset-1-expected.txt: Added.
- platform/mac/fast/canvas/shadow-offset-2-expected.checksum: Added.
- platform/mac/fast/canvas/shadow-offset-2-expected.png: Added.
- platform/mac/fast/canvas/shadow-offset-2-expected.txt: Added.
- platform/mac/fast/canvas/shadow-offset-3-expected.checksum: Added.
- platform/mac/fast/canvas/shadow-offset-3-expected.png: Added.
- platform/mac/fast/canvas/shadow-offset-3-expected.txt: Added.
- platform/mac/fast/canvas/shadow-offset-4-expected.checksum: Added.
- platform/mac/fast/canvas/shadow-offset-4-expected.png: Added.
- platform/mac/fast/canvas/shadow-offset-4-expected.txt: Added.
- platform/mac/fast/canvas/shadow-offset-5-expected.checksum: Added.
- platform/mac/fast/canvas/shadow-offset-5-expected.png: Added.
- platform/mac/fast/canvas/shadow-offset-5-expected.txt: Added.
- platform/mac/fast/canvas/shadow-offset-6-expected.checksum: Added.
- platform/mac/fast/canvas/shadow-offset-6-expected.png: Added.
- platform/mac/fast/canvas/shadow-offset-6-expected.txt: Added.
- platform/mac/fast/canvas/shadow-offset-7-expected.checksum: Added.
- platform/mac/fast/canvas/shadow-offset-7-expected.png: Added.
- platform/mac/fast/canvas/shadow-offset-7-expected.txt: Added.
- platform/mac/fast/canvas/shadow-offset-expected.checksum: Removed.
- platform/mac/fast/canvas/shadow-offset-expected.png: Removed.
- platform/mac/fast/canvas/shadow-offset-expected.txt: Removed.
- 12:58 PM Changeset in webkit [34316] by
-
- 2 edits in trunk/JavaScriptCore
Build fix for non-AllInOne builds
- kjs/array_object.cpp: Added a missing #include.
- 12:51 PM Changeset in webkit [34315] by
-
- 4 edits2 adds in trunk
WebCore:
2008-06-02 Julien Chaffraix <jchaffraix@webkit.org>
Reviewed by Darin.
Bug 18066: REGRESSION: createAttribute throws NAMESPACE_ERR exception
https://bugs.webkit.org/show_bug.cgi?id=18066
Test: fast/dom/createAttribute-exception.html
- dom/Document.cpp: (WebCore::Document::createAttributeNS):
- dom/Document.h: Add a bool parameter shouldIgnoreNamespaceChecks to createNamespaceNS() used by createAttribute() to bypass namespace checking.
LayoutTests:
2008-06-02 Julien Chaffraix <jchaffraix@webkit.org>
Reviewed by Darin.
Bug 18066: REGRESSION: createAttribute throws NAMESPACE_ERR exception
https://bugs.webkit.org/show_bug.cgi?id=18066
- fast/dom/createAttribute-exception-expected.txt: Added.
- fast/dom/createAttribute-exception.html: Added.
- 11:13 AM Changeset in webkit [34314] by
-
- 2 edits in trunk/WebKit/mac
2008-06-02 Anders Carlsson <andersca@apple.com>
Reviewed by Mitz.
Speculative fix for <rdar://problem/5661112>
CrashTracer: [USER] 49 crashes in DashboardClient at com.apple.WebCore: WebCore::RenderPart::setWidget + 62
Defer loads while calling NPP_New. Some plug-ins start a run-loop inside NPP_New and finished loads could cause
layouts to be triggered.
- Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView _createPlugin]):
- 10:32 AM Changeset in webkit [34313] by
-
- 1 edit in trunk/JavaScriptCore/ChangeLog
2008-06-02 Kevin McCullough <kmccullough@apple.com>
Took out accidental confilct lines I checked in.
- ChangeLog:
- 10:30 AM Changeset in webkit [34312] by
-
- 8 edits1 copy2 moves5 adds in trunk
WebCore:
2008-06-02 Darin Adler <Darin Adler>
Reviewed by John Sullivan.
- fix https://bugs.webkit.org/show_bug.cgi?id=18799 apl.aip.org menu does not work (property names should be case sensitive) <rdar://problem/5900484>
Test: fast/dom/CSSStyleDeclaration/css-properties-case-sensitive.html
- bindings/js/JSCSSStyleDeclarationCustom.cpp: (WebCore::hasCSSPropertyNamePrefix): Tweak implementation a tiny bit for improved performance when the first character does not match. (WebCore::cssPropertyName): Reject property names with a leading uppercase letter.
LayoutTests:
2008-06-02 Darin Adler <Darin Adler>
Reviewed by John Sullivan.
- test for https://bugs.webkit.org/show_bug.cgi?id=18799 apl.aip.org menu does not work (property names should be case sensitive) <rdar://problem/5900484>
- fast/dom/CSSStyleDeclaration: Added.
- fast/dom/CSSStyleDeclaration/css-properties-case-sensitive-expected.txt: Added.
- fast/dom/CSSStyleDeclaration/css-properties-case-sensitive.html: Added.
- fast/dom/CSSStyleDeclaration/resources: Added.
- fast/dom/CSSStyleDeclaration/resources/TEMPLATE.html: Copied from LayoutTests/fast/dom/Element/resources/TEMPLATE.html.
- fast/dom/CSSStyleDeclaration/resources/css-properties-case-sensitive.js: Added.
- fast/dom/CSSStyleDeclaration-empty-string-property-expected.txt: Removed.
- fast/dom/CSSStyleDeclaration-empty-string-property.html: Removed.
- fast/dom/CSSStyleDeclaration/empty-string-property-expected.txt: Copied from LayoutTests/fast/dom/CSSStyleDeclaration-empty-string-property-expected.txt.
- fast/dom/CSSStyleDeclaration/empty-string-property.html: Copied from LayoutTests/fast/dom/CSSStyleDeclaration-empty-string-property.html.
- fast/js/duplicate-param-crash.html: Allowed the make-js-test-wrappers script to update this file.
- fast/js/duplicate-param-gc-crash.html: Ditto.
- fast/js/resources/tostring-exception-in-property-access.js: Ditto.
- fast/js/var-shadows-arg-crash.html: Ditto.
- fast/js/var-shadows-arg-gc-crash.html: Ditto.
- 10:26 AM Changeset in webkit [34311] by
-
- 4 edits1 copy3 adds in trunk
WebCore:
2008-06-02 Darin Adler <Darin Adler>
Reviewed by Mitz.
- fix https://bugs.webkit.org/show_bug.cgi?id=19358 <rdar://problem/5951986> first line break in <pre> elements ignored (chess boards at http://rankzero.de/)
Test: fast/parser/pre-first-line-break.html
- editing/markup.cpp: (WebCore::appendStartMarkup): Fix handling of <listing>. Not part of the bug mentioned above, but uncovered by the regression test.
- html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::write): Clear the "discardLF" flag when processing a new tag.
LayoutTests:
2008-06-02 Darin Adler <Darin Adler>
Reviewed by Mitz.
- test for https://bugs.webkit.org/show_bug.cgi?id=19358 <rdar://problem/5951986> first line break in <pre> elements ignored (chess boards at http://rankzero.de/)
- fast/parser/pre-first-line-break-expected.txt: Added.
- fast/parser/pre-first-line-break.html: Added.
- fast/parser/resources/TEMPLATE.html: Copied from fast/dom/resources/TEMPLATE.html.
- fast/parser/resources/pre-first-line-break.js: Added.
- 10:11 AM Changeset in webkit [34310] by
-
- 3 edits in trunk/JavaScriptCore
2008-06-02 Kevin McCullough <kmccullough@apple.com>
Reviewed by Darin.
<rdar://problem/5969992> JSProfiler: Remove the recursion limit in the
profiler
Implement Next Sibling pointers as groundwork for removing the recursion
limit in the profiler.
- profiler/ProfileNode.cpp: Also I renamed parentNode and headNode since 'node' is redundant. (KJS::ProfileNode::ProfileNode): Initialize the nextSibling. (KJS::ProfileNode::willExecute): If there are already children then the new child needs to be the nextSibling of the last child. (KJS::ProfileNode::didExecute): (KJS::ProfileNode::addChild): Ditto. (KJS::ProfileNode::stopProfiling): (KJS::ProfileNode::sortTotalTimeDescending): For all of the sorting algorithms once the children are sorted their nextSibling pointers need to be reset to reflect the new order. (KJS::ProfileNode::sortTotalTimeAscending): (KJS::ProfileNode::sortSelfTimeDescending): (KJS::ProfileNode::sortSelfTimeAscending): (KJS::ProfileNode::sortCallsDescending): (KJS::ProfileNode::sortCallsAscending): (KJS::ProfileNode::sortFunctionNameDescending): (KJS::ProfileNode::sortFunctionNameAscending): (KJS::ProfileNode::resetChildrensSiblings): This new function simply loops over all of the children and sets their nextSibling pointers to the next child in the Vector (KJS::ProfileNode::debugPrintData):
- profiler/ProfileNode.h: (KJS::ProfileNode::parent): (KJS::ProfileNode::setParent): (KJS::ProfileNode::nextSibling): (KJS::ProfileNode::setNextSibling): (KJS::ProfileNode::totalPercent): (KJS::ProfileNode::selfPercent):
- 10:08 AM Changeset in webkit [34309] by
-
- 2 edits in trunk/JavaScriptCore
2008-06-02 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Removed the recursion limit from JSObject::call, since the VM does
recursion checking now.
This should allow us to remove JSObject::call entirely, netting a small
speedup.
- kjs/object.cpp: (KJS::JSObject::call):
- 9:40 AM Changeset in webkit [34308] by
-
- 3 edits in trunk/WebCore
Fixes a bug where only the last breakpoint would be hit after reloading
the page. Also fixes a bug where disabled breakpoints would be hit
after reloading the page.
Reviewed by Darin Adler.
- page/inspector/BreakpointsSidebarPane.js: (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint): Don't call InspectorController.addBreakpoint() unless the breakpoint is enabled.
- page/inspector/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype.addScript): Move the addBreakpoint() call inside the for loop so each breakpoint is added. Also check the breakpoint's enabled state before calling addBreakpoint().
- 9:40 AM Changeset in webkit [34307] by
-
- 2 edits in trunk/WebCore
Fixes a bug where the line highlight and the execution line were conflicting.
The line highlight no longer shows up when the execution line changes, only
when showResource or showScript is called with a line number.
Reviewed by Darin Adler.
- page/inspector/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype.showScript): Pass true for shouldHighlightLine. (WebInspector.ScriptsPanel.prototype.showResource): Ditto. (WebInspector.ScriptsPanel.prototype._showScriptOrResource): Added a shouldHighlightLine argument that triggers the highlightLine() call on the SourceFrame. (WebInspector.ScriptsPanel.prototype._goBack): Pass false for shouldHighlightLine since we need to pass true for fromBackForwardAction. (WebInspector.ScriptsPanel.prototype._goForward): Ditto.
- 9:39 AM Changeset in webkit [34306] by
-
- 2 edits in trunk/WebCore
Bring the Web Inspector forward when the debugger pauses.
Reviewed by Darin Adler.
- page/inspector/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype.debuggerPaused): Call window.focus() and make the Scripts panel the current panel.
- 9:36 AM Changeset in webkit [34305] by
-
- 4 edits in trunk
2008-06-02 Jan Michael Alonzo <jmalonzo@webkit.org>
Reviewed by Alp Toker.
Build WebCore GTK+ sources as part of WebCore, not WebKit.
Split common and GTK+-specific sources into separate file lists.
- 9:36 AM Changeset in webkit [34304] by
-
- 3 edits in trunk/JavaScriptCore
2008-06-02 Geoffrey Garen <ggaren@apple.com>
Reviewed by Adele Peterson.
Added a specific affordance for avoiding stack overflow when converting
recursive arrays to string, in preparation for removing generic stack
overflow checking from JSObject::call.
Tested by fast/js/toString-stack-overflow.html.
- 9:32 AM Changeset in webkit [34303] by
-
- 4 edits in trunk/JavaScriptCore
2008-06-02 Geoffrey Garen <ggaren@apple.com>
Reviewed by Alice Liu.
Refactored some hand-rolled code to call ScopeChain::globalObject instead.
- 9:30 AM Changeset in webkit [34302] by
-
- 3 edits2 adds in trunk
2008-06-02 Geoffrey Garen <ggaren@apple.com>
Reviewed by Darin Adler.
Fixed ASSERT due to execution continuing after an exception is thrown
during array sort.
- kjs/array_instance.cpp: (KJS::AVLTreeAbstractorForArrayCompare::compare_key_key): Don't call the custom comparator function if an exception has been thrown. Just return 1 for everything, so the sort completes quickly. (The result will be thrown away.)
LayoutTests:
2008-06-02 Geoffrey Garen <ggaren@apple.com>
Reviewed by Darin Adler.
Test for an exception thrown from an array sort comparator function.
- fast/js/throw-from-array-sort-expected.txt: Added.
- fast/js/throw-from-array-sort.html: Added.
- 6:39 AM Changeset in webkit [34301] by
-
- 1 edit3 adds in trunk/LayoutTests
2008-06-02 Simon Pieters <zcorpan@hotmail.com>
Reviewed and landed by Alexey.
https://bugs.webkit.org/show_bug.cgi?id=19355
createElement() with colon and localName
WebKit behavior has changed to expected during Acid3 work (r31230, r31231), but this
specific case appears to have been an untested side effect, landing it now.
- fast/dom/createElement-with-column-expected.txt: Added.
- fast/dom/createElement-with-column.xml: Added.
- fast/dom/createElement-with-column.html: Added.
- 3:23 AM Changeset in webkit [34300] by
-
- 4 edits in trunk/WebCore
2008-05-30 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon.
Implement basic media element controls for the QtWebKit port.
- 3:23 AM Changeset in webkit [34299] by
-
- 2 edits in trunk/WebCore
2008-05-30 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon.
Change default styling of media elements to allow controls
to be placed at any position within the media element
- 3:17 AM Changeset in webkit [34298] by
-
- 2 edits in trunk/WebCore
2008-05-30 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon.
Use intrinsic size for media elements with no natural size.
- 3:16 AM Changeset in webkit [34297] by
-
- 6 edits2 adds in trunk/WebCore
2008-05-28 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon.
Allow platform specific adjustments to the default style sheet.
Clients will change the ifdef in RenderTheme.cpp and implement
any platform specific adjustments in RenderThemeXXX.cpp, either
by loading a file as the Qt port does, or by modifying the style
directly.
- 3:08 AM Changeset in webkit [34296] by
-
- 3 edits in trunk/WebCore
2008-06-02 Siraj Razick <siraj.razick@collabora.co.uk>
Reviewed by Simon
Allow button fonts to scale based on the text size multiplier.
- 12:25 AM Changeset in webkit [34295] by
-
- 4 edits in tags/Safari-6526.11.1
Versioning.
- 12:20 AM Changeset in webkit [34294] by
-
- 1 copy in tags/Safari-6526.11.1
New tag.
- 12:19 AM Changeset in webkit [34293] by
-
- 2 edits in branches/WWDC-2008-branch/JavaScriptCore
Merge r34205.
Jun 1, 2008:
- 11:44 PM Changeset in webkit [34292] by
-
- 4 edits2 adds in trunk
Reviewed by Darin.
https://bugs.webkit.org/show_bug.cgi?id=15823
getPropertyValue for border returns null, should compute the shorthand value
Compute the value for the border shorthand property by computing
its shorthand subproperties.
Test: fast/css/getPropertyValue-border.html
- 9:31 PM Changeset in webkit [34291] by
-
- 4 edits in branches/WWDC-2008-branch
Versioning.
- 9:30 PM Changeset in webkit [34290] by
-
- 1 copy in tags/Safari-6526.11
New tag.
- 7:08 PM Changeset in webkit [34289] by
-
- 2 edits1 add in trunk
2008-06-01 Josh Triplett <josh@freedesktop.org>
Reviewed by Alp Toker.
http://bugs.webkit.org/show_bug.cgi?id=16891
[GTK] autotools build is slow
Add dolt revision 5e9eef10 to the autotools build system. Speeds up
the build, often by a factor of two or more on supported platforms,
otherwise falls back to libtool.
See http://dolt.freedesktop.org for details.
- acinclude.m4: Added.
- configure.ac:
- 12:48 PM Changeset in webkit [34288] by
-
- 2 edits in trunk
Added Radar URLs
- 12:46 PM Changeset in webkit [34287] by
-
- 3 edits4 adds in trunk
WebCore:
Reviewed by Darin Adler.
- fix https://bugs.webkit.org/show_bug.cgi?id=19344 Regression: Shadow offsets seem to have changed in 10.5.3 in canvas
Test: fast/canvas/shadow-offset.html
- html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::applyShadow): Slightly increase the magnitude of the offsets passed to CGContextSetShadow* to ensure that the end result after truncation is the desired integer offsets. This is the same workaround for <rdar://problem/5539388> that is used in GraphicsContext::setShadow(). Also correct a recent regression where shadow Y offsets were flipped.
LayoutTests:
Reviewed by Darin Adler.
- test for https://bugs.webkit.org/show_bug.cgi?id=19344 Regression: Shadow offsets seem to have changed in 10.5.3 in canvas
- fast/canvas/shadow-offset.html: Added.
- platform/mac/fast/canvas/shadow-offset-expected.checksum: Added.
- platform/mac/fast/canvas/shadow-offset-expected.png: Added.
- platform/mac/fast/canvas/shadow-offset-expected.txt: Added.
- 2:37 AM Changeset in webkit [34286] by
-
- 3 edits in trunk/WebKit/gtk
2008-06-01 Alp Toker <alp@nuanti.com>
Suggested by Christian Dywan.
Use float literals for zoom values and improve documentation wording.
- webkit/webkitwebsettings.cpp: (_WebKitWebSettingsPrivate::webkit_web_settings_class_init):
- webkit/webkitwebview.cpp:
- 2:24 AM Changeset in webkit [34285] by
-
- 3 edits in trunk/WebKit/gtk
2008-06-01 Alp Toker <alp@nuanti.com>
Reviewed by Oliver.
Remove webkit_web_view_go_backward(),
webkit_web_view_can_go_backward(). These have been obsoleted by
the back() versions for quite a while.
- webkit/webkitwebview.cpp:
- webkit/webkitwebview.h:
May 31, 2008:
- 11:33 PM Changeset in webkit [34284] by
-
- 2 edits in branches/WWDC-2008-branch
Merge r34194.
- 11:33 PM Changeset in webkit [34283] by
-
- 23 edits in branches/WWDC-2008-branch
Merge r34193.
- 11:33 PM Changeset in webkit [34282] by
-
- 7 edits1 add in branches/WWDC-2008-branch/WebCore
Merge r34141.
- 11:33 PM Changeset in webkit [34281] by
-
- 7 edits in branches/WWDC-2008-branch/WebCore
Merge r34139.
- 11:33 PM Changeset in webkit [34280] by
-
- 4 edits in branches/WWDC-2008-branch/WebCore
Merge r34128.
- 6:24 PM BuildingGtk edited by
- Removed building with Qmake section (diff)
- 3:33 PM Changeset in webkit [34279] by
-
- 2 edits in trunk/WebCore
2008-05-31 Maciej Stachowiak <mjs@apple.com>
Reviewed by Sam.
- avoid assertion in updateDocument() when running debug
- bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::updateDocument): Exit early if the document is null. We don't need to update in this case.
- 1:46 PM Changeset in webkit [34278] by
-
- 2 edits in trunk/WebKit/gtk
2008-05-31 Alp Toker <alp@nuanti.com>
Fix inconsistent zoom docs and enum name landed in r34249. Issue
noticed by Marco Barisione.
- webkit/webkitwebview.cpp:
May 30, 2008:
- 11:28 PM Changeset in webkit [34277] by
-
- 3 edits4 adds in trunk
WebCore:
Reviewed by Darin Adler.
- fix https://bugs.webkit.org/show_bug.cgi?id=19278 <rdar://problem/5968621> REGRESSION (r31114-r31132): image float disappears on refresh
Test: fast/dynamic/float-in-trailing-whitespace-after-last-line-break.html
- rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren): Ensured that floats occurring in trailing whitespace after a line break are added to the last line's floats vector.
LayoutTests:
Reviewed by Darin Adler.
- test for https://bugs.webkit.org/show_bug.cgi?id=19278 <rdar://problem/5968621> REGRESSION (r31114-r31132): image float disappears on refresh
- fast/dynamic/float-in-trailing-whitespace-after-last-line-break.html: Added.
- platform/mac/fast/dynamic/float-in-trailing-whitespace-after-last-line-break-expected.checksum: Added.
- platform/mac/fast/dynamic/float-in-trailing-whitespace-after-last-line-break-expected.png: Added.
- platform/mac/fast/dynamic/float-in-trailing-whitespace-after-last-line-break-expected.txt: Added.
- 11:06 PM Changeset in webkit [34276] by
-
- 2 edits in trunk/WebCore
Implements the back and forward buttons in the Scripts panel.
Reviewed by Adam Roben.
- page/inspector/ScriptsPanel.js: (WebInspector.ScriptsPanel): Add the back and forward button elements and remove the FIXMEs. (WebInspector.ScriptsPanel.prototype.reset): Reset _backForwardList and _currentBackForwardIndex. Then call _updateBackAndForwardButtons(). (WebInspector.ScriptsPanel.prototype._showScriptOrResource): Added a fromBackForwardAction argument. If fromBackForwardAction is false then update the _currentBackForwardIndex and _backForwardList. (WebInspector.ScriptsPanel.prototype._updateBackAndForwardButtons): Update the disabled state of the buttons. (WebInspector.ScriptsPanel.prototype._goBack): Update the _currentBackForwardIndex and call _showScriptOrResource() and _updateBackAndForwardButtons(). (WebInspector.ScriptsPanel.prototype._goForward): Ditto.
- 11:05 PM Changeset in webkit [34275] by
-
- 5 edits in trunk/WebCore
Made clicking a Console message URL originating from a JavaScript
source show the Resource in the Scripts panel. This only happens
when the debugger is attached.
Reviewed by Adam Roben.
- page/inspector/Console.js: (WebInspector.Console.prototype._formaterror): Add a preferredPanel of "scripts". (WebInspector.ConsoleMessage.prototype.toMessageElement): Add a preferredPanel of "scripts" when the source is JS.
- page/inspector/ScriptView.js: (WebInspector.ScriptView.prototype.highlightLine): Added. Calls through to the sourceFrame. Matches SourceView.
- page/inspector/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype.canShowResource): Added. Returns true if the debugger is attached and the resource has scripts. (WebInspector.ScriptsPanel.prototype._showScriptOrResource): Call highlightLine on the view.
- page/inspector/inspector.js: (WebInspector.documentClick): Pass the preferredPanel to showResourceForURL. (WebInspector.showResourceForURL): Resolve the preferredPanel from the string passed in. Checks if the panel implements showResource and canShowResource. Reverts to the Resources panel if any of that is false or not implemented.
- 11:05 PM Changeset in webkit [34274] by
-
- 2 edits in trunk/WebCore
Fixed an "undefined type" exception that was being thrown when
selecting a eval script from the file menu in the Scripts panel.
This would also happen when stepping into an eval which would
break other parts of the Inspector interface.
Reviewed by Adam Roben.
- page/inspector/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype._showScriptOrResource): Use the scriptOrResource variable instead of the undefined script variable.
- 11:05 PM Changeset in webkit [34273] by
-
- 27 edits in trunk
Made the starting line number of scripts be 1-based throughout the engine.
2008-05-30 Timothy Hatcher <timothy@apple.com>
Made the starting line number of scripts be 1-based throughout the engine.
This cleans up script line numbers so they are all consistent now and fixes
some cases where script execution was shown as off by one line in the debugger.
No change in SunSpider.
Reviewed by Oliver Hunt.
- API/minidom.c: (main): Pass a line number of 1 instead of 0 to parser().parse().
- API/testapi.c: (main): Ditto. And removes a FIXME and changed an assertEqualsAsNumber to use 1 instead of 2 for the line number.
- VM/Machine.cpp: (KJS::callEval): Pass a line number of 1 instead of 0. (KJS::Machine::debug): Use firstLine for WillExecuteProgram instead of lastLine. Use lastLine for DidExecuteProgram instead of firstLine.
- kjs/DebuggerCallFrame.cpp: (KJS::DebuggerCallFrame::evaluate): Pass a line number of 1 instead of 0 to parser().parse().
- kjs/Parser.cpp: (KJS::Parser::parse): ASSERT startingLineNumber is greatter than 0. Change the startingLineNumber to be 1 if it was less than or equal to 0. This is needed for release builds to maintain compatibility with the JavaScriptCore API.
- kjs/function.cpp: (KJS::globalFuncEval): Pass a line number of 1 instead of 0 to parser().parse().
- kjs/function_object.cpp: (FunctionObjectImp::construct): Pass a line number of 1 instead of 0 to construct().
- kjs/lexer.cpp: (Lexer::setCode): Made yylineno = startingLineNumber instead of adding 1.
- kjs/testkjs.cpp: (functionRun): Pass a line number of 1 instead of 0 to Interpreter::evaluate(). (functionLoad): Ditto. (prettyPrintScript): Ditto. (runWithScripts): Ditto.
- profiler/Profiler.cpp: (WebCore::createCallIdentifier): Removed a plus 1 of startingLineNumber.
WebCore:
2008-05-30 Timothy Hatcher <timothy@apple.com>
Made the starting line number of scripts be 1-based throughout the engine.
This cleans up script line numbers so they are all consistent now and fixes
some cases where script execution was shown as off by one line in the debugger.
Doing this also exposed a bug where JSLazyEventListener created in XHML or SVG
documents would always have a line number of 0. So this change fixed that bug
to pass all the SVG and XHTML tests.
All layout tests pass.
Reviewed by Oliver Hunt.
- bindings/js/kjs_events.cpp: (WebCore::JSLazyEventListener::JSLazyEventListener): Set the line number to 1 if it was passed in as 0. This can happen when listeners are created with a setAttribute call from JavaScript. (WebCore::JSLazyEventListener::parseCode): Add a FIXME about the URL being incorrect when listeners are created with a setAttribute call from JavaScript.
- bindings/js/kjs_events.h: Remove the default value for lineNumber, since no callers need it.
- bindings/objc/WebScriptObject.mm: (-[WebScriptObject evaluateWebScript:]): Pass a line number of 1 instead of 0 to Interpreter::evaluate().
- bridge/NP_jsobject.cpp: (_NPN_Evaluate): Ditto.
- bridge/jni/jni_jsobject.mm: (JavaJSObject::eval): Ditto.
- dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::startElementNs): Call KJSProxy::setEventHandlerLineno() around the call to handleElementAttributes, so any JSLazyEventListener created from those attributes have line numbers. (WebCore::XMLTokenizer::endElementNs): Remove a minus 1 of the line number. (WebCore::XMLTokenizer::notifyFinished): Pass a line number of 1 instead of 0. (WebCore::XMLTokenizer::parseEndElement): Remove a minus 1 of the line number.
- html/HTMLScriptElement.cpp: (WebCore::HTMLScriptElement::evaluateScript): Add a FIXME about the starting line number being incorrect in some cases when this function is called.
- html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::parseSpecial): Add a plus 1 to the line number when setting scriptStartLineno so it is 1-based. Same for calling setEventHandlerLineno(). (WebCore::HTMLTokenizer::processToken): Ditto.
- html/HTMLTokenizer.h: Change the default line number on scriptExecution() to 1 from 0.
- loader/FrameLoader.cpp: (FrameLoader::executeIfJavaScriptURL): Pass a line number of 1 instead of 0 to executeScript().
WebKitTools:
2008-05-30 Timothy Hatcher <timothy@apple.com>
Made the starting line number of scripts be 1-based throughout the engine.
This cleans up script line numbers so they are all consistent now.
Reviewed by Oliver Hunt.
- DumpRenderTree/mac/ObjCController.m: (runJavaScriptThread): Pass a line number of 1 instead of 0 to JSEvaluateScript.
- DumpRenderTree/pthreads/JavaScriptThreadingPthreads.cpp: (runJavaScriptThread): Ditto.
- DumpRenderTree/win/DumpRenderTree.cpp: (runJavaScriptThread): Ditto.
- 11:05 PM Changeset in webkit [34272] by
-
- 4 edits in trunk/WebCore
Fixes the regression where image resources don't have a preview icon.
Reviewed by Adam Roben.
- page/inspector/ResourcesPanel.js: (WebInspector.ResourceSidebarTreeElement): Call createIconElement before calling the superclass. (WebInspector.ResourceSidebarTreeElement.prototype.createIconElement): Create an iconElement, if the category is images then make a div that contains a preview image. Otherwise just make an img element. If there was a previous iconElement, then replace it. (WebInspector.ResourceSidebarTreeElement.prototype.refresh): Call createIconElement if the category changed.
- page/inspector/SidebarTreeElement.js: (WebInspector.SidebarTreeElement): Create an iconElement if one hasn't been made already by a subclass. (WebInspector.SidebarTreeElement.prototype.onattach): Append the iconElement instead of creating one each time.
- page/inspector/inspector.css: New and updated style rules.
- 10:37 PM Changeset in webkit [34271] by
-
- 10 edits in trunk/WebCore
2008-05-30 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver (earlier version reviewed by Alexey).
- speculative fix for "REGRESSION(r34143?): Frequent crash while browsing" https://bugs.webkit.org/show_bug.cgi?id=19285
("This Time for Sure" Edition)
I'm pretty sure this fixes it but I have not been able to
reproduce and am unsure if my theory of the bug is right.
I belive the bug was because JSDOMWindowBase accessed
JSDOMWindowShell in its destructor to remove itself from a
hashtable, but GC destructor order is not guaranteed, so the
hashtable may have been freed already. This patch changes things
so that a non-GC object (the KJSProxy) does the tracking of live
window objects for a frame. JSDOMWindowBase can null check the frame
pointer to verify if it is still good.
In addition, we must create a similar setup between DOMWindow and
Frame; since the DOMWindow of a given frame can now change over
time, we must ensure that the Frame disconnects every live
DOMWindow when destroyed, not just the last.
- bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
- bindings/js/JSDOMWindowShell.cpp: (WebCore::JSDOMWindowShell::JSDOMWindowShell):
- bindings/js/JSDOMWindowShell.h: (WebCore::JSDOMWindowShell::setWindow):
- bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::clear): (WebCore::KJSProxy::initScript): (WebCore::KJSProxy::updateDocument):
- bindings/js/kjs_proxy.h: (WebCore::KJSProxy::clearFormerWindow):
- page/DOMWindow.cpp: (WebCore::DOMWindow::~DOMWindow):
- page/Frame.cpp: (WebCore::Frame::~Frame): (WebCore::Frame::setDocument): (WebCore::Frame::clearDOMWindow): (WebCore::Frame::clearFormerDOMWindow):
- page/Frame.h:
- page/FramePrivate.h:
- 9:31 PM Changeset in webkit [34270] by
-
- 4 edits in branches/WWDC-2008-branch
Versioning.
- 9:31 PM Changeset in webkit [34269] by
-
- 1 copy in tags/Safari-6526.10
New tag.
- 9:29 PM Changeset in webkit [34268] by
-
- 3 edits3 adds in branches/WWDC-2008-branch
Merge r34204.
- 2:34 PM Changeset in webkit [34267] by
-
- 7 edits in trunk
WebCore:
Reviewed by Darin Adler and Dave Hyatt.
- eliminate excessive repainting when an object's final position after layout is unchanged
- rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlockChildren): Removed the full repaint for the case that the final position is unchanged but the position at which an intermediate layout occurred was different. Any repainting done during the intermediate layout would have happened at the object's initial (and also final) coordinates, since layoutDelta is factored into repaint rect calculations.
LayoutTests:
Reviewed by Darin Adler.
- updated pixel results for "eliminate excessive repainting when an object's final position after layout is unchanged"
- platform/mac/fast/repaint/intermediate-layout-position-clip-expected.checksum:
- platform/mac/fast/repaint/intermediate-layout-position-clip-expected.png:
- platform/mac/fast/repaint/intermediate-layout-position-expected.checksum:
- platform/mac/fast/repaint/intermediate-layout-position-expected.png:
- 2:30 PM Changeset in webkit [34266] by
-
- 2 edits in trunk/WebKit/mac
2008-05-29 Justin Garcia <justin.garcia@apple.com>
Reviewed by Darin.
<rdar://problem/5949462> REGRESSION: Can't paste screen captures into Mail
AppKit started putting PNG instead of PICT onto the pasteboard for screen
captures. Added support for PNG with kUTTypePNG. Tiger doesn't support
setting and retrieving pasteboard types with UTIs, but we don't know of any
applications on Tiger that put only PNG on the pasteboard.
- WebView/WebHTMLView.mm: (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:]): (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]):
- 1:10 PM Changeset in webkit [34265] by
-
- 3 edits in trunk/JavaScriptCore
Reviewed by Darin.
https://bugs.webkit.org/show_bug.cgi?id=19180
speed up SunSpider by optimizing immediate number cases
Also fixed a JavaScriptCore regression seen on PowerPC - we didn't clip left shift
parameter to 0...31.
0.5% improvement on SunSpider overall, although a 8.5 regression on bitops-3bit-bits-in-byte.
- VM/Machine.cpp: (KJS::Machine::privateExecute): Added fast paths for >>> and <<.
- kjs/JSImmediate.h: (KJS::JSImmediate::toTruncatedUInt32): Added. Same as getTruncatedInt32, but casts the result to unsigned.
- 11:05 AM Changeset in webkit [34264] by
-
- 2 edits in trunk/WebCore
<rdar://problem/5959478> r34079: AX: crash at stringForReplacedNode
- 7:15 AM Changeset in webkit [34263] by
-
- 2 edits in trunk/WebKit/gtk
2008-05-30 Carlos Martín Nieto <carlos@cmartin.tk>
Reviewed by Alp Toker.
http://bugs.webkit.org/show_bug.cgi?id=18383
[GTK] The "hovering-over-link" signal arguments aren't documented.
- webkit/webkitwebview.cpp:
- 4:28 AM Changeset in webkit [34262] by
-
- 2 edits in trunk/WebCore
2008-05-30 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon.
Fix the build dependencies for the Qt build. Don't generate
SVGCSSPropertyNames.cpp for every build.
- WebCore.pro: The output file was renamed, so the compiler rule needs to be adjusted in order for qmake to generate correct depdencies.
- 3:40 AM Changeset in webkit [34261] by
-
- 7 edits in trunk/WebCore
2008-05-30 Maciej Stachowiak <mjs@apple.com>
Revert fix for 19285, it just caused more crashes and I need time
to fix it properly.
- bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
- bindings/js/JSDOMWindowShell.cpp: (WebCore::JSDOMWindowShell::JSDOMWindowShell): (WebCore::JSDOMWindowShell::updateDocument):
- bindings/js/JSDOMWindowShell.h: (WebCore::JSDOMWindowShell::setWindow): (WebCore::JSDOMWindowShell::clearFormerWindow):
- bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::clear): (WebCore::KJSProxy::initScript):
- bindings/js/kjs_proxy.h:
- page/Frame.cpp: (WebCore::Frame::setDocument):
- 3:28 AM Changeset in webkit [34260] by
-
- 2 edits in trunk/WebCore
2008-05-30 Adam Treat <treat@kde.org>
Reviewed by Simon.
Fix a huge memory leak by ensuring that on application shutdown
the shared timer is fired one last time if it is active. This
ensures that the GCController timer is fired at the end to free
references to JavaScript objects.
- 3:08 AM Changeset in webkit [34259] by
-
- 11 edits1 add3 deletes in trunk
Reviewed by Darin.
http://bugs.webkit.org/show_bug.cgi?id=7466
<rdar://problem/4657563> Use of Ctrl as access key modifier conflicts with Mac OS X
emacs-style keybindings
WebCore:
- page/EventHandler.cpp: (WebCore::EventHandler::handleAccessKey): Use Ctrl+Option for access keys on Mac OS X.
LayoutTests:
- fast/events/access-key-self-destruct.html:
- fast/forms/access-key.html:
- fast/forms/focus-selection-input-expected.txt:
- fast/forms/focus-selection-input.html:
- fast/forms/legend-access-key.html:
- fast/forms/select-accesskey.html: Updated tests to keep passing.
- fast/forms/select-accesskey-expected.txt: Added.
- fast/forms/select-accesskey.html:
- platform/mac/fast/forms/select-accesskey-expected.checksum: Removed.
- platform/mac/fast/forms/select-accesskey-expected.png: Removed.
- platform/mac/fast/forms/select-accesskey-expected.txt: Removed. Updated to keep passing, made text-only.
- fast/forms/focus-selection-textarea.html:
- fast/forms/focus-selection-textarea-expected.txt: Added missing platform-specific logic.
- 2:10 AM Changeset in webkit [34258] by
-
- 3 edits in trunk/JavaScriptCore
Reviewed by Oliver Hunt.
https://bugs.webkit.org/show_bug.cgi?id=19180
speed up SunSpider by optimizing immediate number cases
Also fixed three JavaScriptCore regressions seen on PowerPC - we didn't clip right shift
parameter to 0...31.
1.6% improvement on SunSpider, without significant regressions on any tests.
- VM/Machine.cpp: (KJS::Machine::privateExecute): Added fast paths for >>, ==, ===, !=, !==. Changed order of memory accesses in many cases, making them less dependent on gcc's ability to properly assign registers. With this, I could move exception checks back into slow code paths, and saw less randomness in general.
- kjs/JSImmediate.h: (KJS::JSImmediate::rightShiftImmediateNumbers): Added.
- 1:15 AM Changeset in webkit [34257] by
-
- 7 edits in trunk/WebCore
2008-05-30 Maciej Stachowiak <mjs@apple.com>
Reviewed by Alexey.
- speculative fix for "REGRESSION(r34143?): Frequent crash while browsing" https://bugs.webkit.org/show_bug.cgi?id=19285
I'm pretty sure this fixes it but I have not been able to
reproduce and am unsure if my theory of the bug is right.
I belive the bug was because JSDOMWindowBase accessed
JSDOMWindowShell in its destructor to remove itself from a
hashtable, but GC destructor order is not guaranteed, so the
hashtable may have been freed already. This patch changes things
so that a non-GC object (the KJSProxy) does the tracking of live
window objects for a frame. JSDOMWindowBase can null check the frame
pointer to verify if it is still good.
- bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
- bindings/js/JSDOMWindowShell.cpp: (WebCore::JSDOMWindowShell::JSDOMWindowShell):
- bindings/js/JSDOMWindowShell.h: (WebCore::JSDOMWindowShell::setWindow):
- bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::clear): (WebCore::KJSProxy::initScript): (WebCore::KJSProxy::updateDocument):
- bindings/js/kjs_proxy.h: (WebCore::KJSProxy::clearFormerWindow):
- page/Frame.cpp: (WebCore::Frame::setDocument):
- 12:12 AM Changeset in webkit [34256] by
-
- 2 edits in tags/Safari-5525.18.1/WebKit/mac
Merge r34154.
- 12:10 AM Changeset in webkit [34255] by
-
- 2 edits in branches/Safari-3-1-branch/WebKit/mac
Merge r34154.
May 29, 2008:
- 11:05 PM Changeset in webkit [34254] by
-
- 6 edits in trunk/WebCore
<rdar://problem/5091386> Seed: VO reads form labels twice in Safari
<rdar://problem/4783102> Radio button/checkbox embedded with <label> tag should combine the text and the label as a single element
- 10:50 PM Changeset in webkit [34253] by
-
- 4 edits in branches/WWDC-2008-branch
Versioning.
- 10:50 PM Changeset in webkit [34252] by
-
- 1 copy in tags/Safari-6526.9
New tag.
- 10:49 PM Changeset in webkit [34251] by
-
- 5 edits2 adds in branches/WWDC-2008-branch
Merge r34250.
- 10:45 PM Changeset in webkit [34250] by
-
- 5 edits2 adds in trunk
2008-05-29 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- fixed <rdar://problem/5972943> REGRESSION(r33979): Flash clips do not play on cnn.com
Finally blocks could clobber registers that had to remain live
until they returned. This patch takes a conservative approach and
makes sure that finally blocks do not reuse any registers that
were previously allocated for the function. In the future this
could probably be tightened up to be less profligate with the
register allocation.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::highestUsedRegister):
- VM/CodeGenerator.h:
- kjs/nodes.cpp: (KJS::TryNode::emitCode):
LayoutTests:
2008-05-29 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver. Test by Geoff Garen.
- fixed <rdar://problem/5972943> REGRESSION(r33979): Flash clips do not play on cnn.com
- fast/js/finally-codegen-failure-expected.txt: Added.
- fast/js/finally-codegen-failure.html: Added.
- 8:44 PM Changeset in webkit [34249] by
-
- 5 edits in trunk/WebKit/gtk
2008-05-29 Marco Barisione <marco@collabora.co.uk>
Reviewed (and tweaked) by Alp Toker.
http://bugs.webkit.org/show_bug.cgi?id=18281
[GTK] add functions to set/get the zoom level
- webkit/webkitwebsettings.cpp: (_WebKitWebSettingsPrivate::): (_WebKitWebSettingsPrivate::webkit_web_settings_class_init): (_WebKitWebSettingsPrivate::webkit_web_settings_set_property): (_WebKitWebSettingsPrivate::webkit_web_settings_get_property):
- webkit/webkitwebview.cpp: Add functions to get and set the zoom level.
- webkit/webkitwebview.h: Ditto.
- webkit/webkitprivate.h:
- 4:51 PM Changeset in webkit [34248] by
-
- 4 edits in trunk
Versioning.
- 4:27 PM Changeset in webkit [34247] by
-
- 4 edits in branches/WWDC-2008-branch/WebKit
Merge r34208.
- 4:27 PM Changeset in webkit [34246] by
-
- 4 edits in branches/WWDC-2008-branch
Merge r34207.
- 4:26 PM Changeset in webkit [34245] by
-
- 2 edits in branches/WWDC-2008-branch/WebKit/mac
Merge r34203.
- 4:26 PM Changeset in webkit [34244] by
-
- 6 edits in branches/WWDC-2008-branch/JavaScriptGlue
Merge r34191.
- 4:26 PM Changeset in webkit [34243] by
-
- 2 edits in branches/WWDC-2008-branch/WebCore
Merge r34190.
- 4:26 PM Changeset in webkit [34242] by
-
- 2 edits in branches/WWDC-2008-branch/WebCore
Merge r34188.
- 4:26 PM Changeset in webkit [34241] by
-
- 4 edits in branches/WWDC-2008-branch/WebCore
Merge r34186.
- 4:26 PM Changeset in webkit [34240] by
-
- 13 edits in branches/WWDC-2008-branch
Merge r34182.
- 4:26 PM Changeset in webkit [34239] by
-
- 4 edits in branches/WWDC-2008-branch/WebCore
Merge r34179.
- 4:26 PM Changeset in webkit [34238] by
-
- 3 edits3 adds in branches/WWDC-2008-branch
Merge r34177.
- 4:26 PM Changeset in webkit [34237] by
-
- 6 edits in branches/WWDC-2008-branch
Merge r34166.
- 4:26 PM Changeset in webkit [34236] by
-
- 2 edits in branches/WWDC-2008-branch/WebCore
Merge r34162.
- 4:26 PM Changeset in webkit [34235] by
-
- 3 edits in branches/WWDC-2008-branch/WebCore
Merge r34161.
- 4:26 PM Changeset in webkit [34234] by
-
- 3 edits in branches/WWDC-2008-branch/WebCore
Merge r34158.
- 4:26 PM Changeset in webkit [34233] by
-
- 2 edits in branches/WWDC-2008-branch/WebCore
Merge r34155.
- 4:26 PM Changeset in webkit [34232] by
-
- 2 edits in branches/WWDC-2008-branch/WebKit/mac
Merge r34154.
- 4:26 PM Changeset in webkit [34231] by
-
- 1 edit in branches/WWDC-2008-branch/JavaScriptCore/ChangeLog
Merge r34136.
- 4:25 PM Changeset in webkit [34230] by
-
- 2 edits in branches/WWDC-2008-branch/JavaScriptCore
Merge r34135.
- 4:25 PM Changeset in webkit [34229] by
-
- 3 edits in branches/WWDC-2008-branch/LayoutTests
Merge r34134.
- 4:25 PM Changeset in webkit [34228] by
-
- 4 edits in branches/WWDC-2008-branch/WebKit/mac
Merge r34130.
- 4:25 PM Changeset in webkit [34227] by
-
- 3 edits4 adds in branches/WWDC-2008-branch
Merge r34127.
- 4:25 PM Changeset in webkit [34226] by
-
- 2 edits in branches/WWDC-2008-branch/WebCore
Merge r34115.
- 4:25 PM Changeset in webkit [34225] by
-
- 3 edits in branches/WWDC-2008-branch/WebCore
Merge r34109.
- 4:25 PM Changeset in webkit [34224] by
-
- 8 edits4 deletes in branches/WWDC-2008-branch/WebCore
Merge r34107.
- 4:25 PM Changeset in webkit [34223] by
-
- 2 edits in branches/WWDC-2008-branch/WebCore
Merge r34104.
- 4:25 PM Changeset in webkit [34222] by
-
- 3 edits in branches/WWDC-2008-branch/WebCore
Merge r34102.
- 4:25 PM Changeset in webkit [34221] by
-
- 2 edits in branches/WWDC-2008-branch/LayoutTests/editing/execCommand
Merge r34098.
- 4:25 PM Changeset in webkit [34220] by
-
- 4 edits1 add in branches/WWDC-2008-branch/WebCore
Merge r34096.
- 4:25 PM Changeset in webkit [34219] by
-
- 5 edits in branches/WWDC-2008-branch/JavaScriptCore
Merge r34095.
- 4:25 PM Changeset in webkit [34218] by
-
- 3 edits in branches/WWDC-2008-branch/LayoutTests
Merge r34093.
- 4:25 PM Changeset in webkit [34217] by
-
- 3 edits in branches/WWDC-2008-branch/JavaScriptCore
Merge r34092.
- 4:25 PM Changeset in webkit [34216] by
-
- 4 edits in branches/WWDC-2008-branch
Versioning.
- 4:10 PM Changeset in webkit [34215] by
-
- 1 copy in branches/WWDC-2008-branch
New branch.
- 3:06 PM Changeset in webkit [34214] by
-
- 2 edits in trunk/BugsSite
Update PrettyPatch directory list
- PrettyPatch/PrettyPatch.rb:
- 3:03 PM Changeset in webkit [34213] by
-
- 4 edits in trunk/WebCore
Removes a use of the internal _childrenListNode property by adding
a getter/setter for smallChildren to SidebarSectionTreeElement.
Reviewed by Adam Roben.
- page/inspector/ResourcesPanel.js: (WebInspector.ResourcesPanel.prototype._toggleLargerResources): Toggle smallChildren on the resourcesTreeElement instead of setting the style class directly.
- page/inspector/SidebarTreeElement.js: (WebInspector.SidebarSectionTreeElement.prototype.smallChildren): Sets or removes the small class on the _childrenListNode.
- 2:35 PM Changeset in webkit [34212] by
-
- 2 edits in trunk/WebKitTools
Geoffrey Garen <ggaren@apple.com>
Reviewed by Adam Roben.
Fixed VCSUtils.pm to work with git repositories inside symlinks.
- Scripts/VCSUtils.pm: Compute a relative path from the git repository root, instead of the root of the filesystem, to work around a bug in abs2rel when traversing symlinked home directories.
- 2:25 PM Changeset in webkit [34211] by
-
- 3 edits in trunk/WebCore
Fixes a bug where the className would be reset for Resource
tree elements and the selected state would be lost. This could
happen when sorting the resources.
https://bugs.webkit.org/show_bug.cgi?id=19211
Reviewed by Adam Roben.
- page/inspector/ResourcesPanel.js:
(WebInspector.ResourceSidebarTreeElement.prototype.refresh): Call
removeMatchingStyleClasses to remove previous category classes instead
of setting the whole className directly.
- page/inspector/utilities.js:
(Element.prototype.removeStyleClass): Moved code to
removeMatchingStyleClasses and call removeMatchingStyleClasses.
(Element.prototype.removeMatchingStyleClasses): Added. Code moved from
removeStyleClass and don't escape the string.
- 2:05 PM Changeset in webkit [34210] by
-
- 7 edits in trunk/WebCore
2008-05-29 David Hyatt <hyatt@apple.com>
Improve the performance of the GUIMark benchmark by 2x in the CoreGraphics code path.
Whenever a foreground image changes size rapidly, we will now dynamically shift into rendering it
using low quality scaling. Once the animation completes, the image will repaint at high quality.
Scaled images will still render at high quality by default, only shifting into low quality if
the scale factor is rapidly changing. This change raises GUIMark from 21fps to 34fps on my machine.
Rewrite the Image draw method to avoid the use of throwaway CG subimages. Instead the entire image is
always drawn (with the appropriate clip and scale set up to make sure the correct subimage portion shows up
in the destination rect). This change raises GUIMark from 34fps to 43fps on my machine.
Reviewed by Darin
- platform/graphics/GraphicsContext.cpp: (WebCore::GraphicsContext::drawImage):
- platform/graphics/cg/ImageCG.cpp: (WebCore::BitmapImage::draw):
- rendering/RenderImage.cpp: (WebCore::RenderImageScaleData::RenderImageScaleData): (WebCore::RenderImageScaleData::~RenderImageScaleData): (WebCore::RenderImageScaleData::size): (WebCore::RenderImageScaleData::time): (WebCore::RenderImageScaleData::useLowQualityScale): (WebCore::RenderImageScaleData::hiqhQualityRepaintTimer): (WebCore::RenderImageScaleData::setSize): (WebCore::RenderImageScaleData::setTime): (WebCore::RenderImageScaleData::setUseLowQualityScale): (WebCore::RenderImageScaleObserver::shouldImagePaintAtLowQuality): (WebCore::RenderImageScaleObserver::imageDestroyed): (WebCore::RenderImageScaleObserver::highQualityRepaintTimerFired): (WebCore::RenderImage::highQualityRepaintTimerFired): (WebCore::RenderImage::~RenderImage): (WebCore::RenderImage::paintReplaced):
- rendering/RenderImage.h:
- 1:37 PM Changeset in webkit [34209] by
-
- 6 edits4 adds in trunk
WebCore:
2008-05-29 Justin Garcia <justin.garcia@apple.com>
Reviewed by Eric.
<rdar://problem/5847330> REGRESSION CrashTracer: [USER] 536 crashes at WebCore::highestAncestor
- editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Don't break out of an empty list item if its parent is non-editable, since doing so will move into non-editable content.
- editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::initializePositionData): We want to prevent merges from table cells even if those table cells are non-editable.
- editing/htmlediting.cpp: (WebCore::enclosingNodeOfType): Can now return non-editable nodes, for cases where the caller isn't going to do editing in the returned node.
- editing/htmlediting.h:
LayoutTests:
2008-05-28 Justin Garcia <justin.garcia@apple.com>
Reviewed by Eric.
<rdar://problem/5847330> REGRESSION CrashTracer: [USER] 536 crashes at WebCore::highestAncestor
- editing/deleting/5847330-1-expected.txt: Added.
- editing/deleting/5847330-1.html: Added.
- editing/deleting/5847330-2-expected.txt: Added.
- editing/deleting/5847330-2.html: Added.
- 12:22 PM Changeset in webkit [34208] by
-
- 4 edits in trunk/WebKit
../mac:
2008-05-29 Anders Carlsson <andersca@apple.com>
Reviewed by Brady.
<rdar://problem/5970312>
icon file specified for stand alone web app causes crash if the icon can't be found
Handle the case where iconData is null.
- Misc/WebIconFetcher.mm: (WebIconFetcherClient::finishedFetchingIcon):
../win:
2008-05-29 Anders Carlsson <andersca@apple.com>
Reviewed by Brady.
<rdar://problem/5970312>
icon file specified for stand alone web app causes crash if the icon can't be found
Handle the case where iconData is null.
- WebIconFetcher.cpp: (WebIconFetcherClient::finishedFetchingIcon):
- 11:57 AM Changeset in webkit [34207] by
-
- 4 edits in trunk
WebCore:
2008-05-29 Anders Carlsson <andersca@apple.com>
Reviewed by Mitz.
<rdar://problem/5971845>
https://bugs.webkit.org/show_bug.cgi?id=19313
Add version member to NPCocoaEvent
- bridge/npapi.h:
WebKit/mac:
2008-05-29 Anders Carlsson <andersca@apple.com>
Reviewed by Mitz.
<rdar://problem/5971845>
https://bugs.webkit.org/show_bug.cgi?id=19313
Add version member to NPCocoaEvent
Initialize the version member to 0 for all events.
- Plugins/WebNetscapePluginEventHandlerCocoa.mm: (initializeEvent): (WebNetscapePluginEventHandlerCocoa::drawRect): (WebNetscapePluginEventHandlerCocoa::sendMouseEvent): (WebNetscapePluginEventHandlerCocoa::flagsChanged): (WebNetscapePluginEventHandlerCocoa::sendKeyEvent): (WebNetscapePluginEventHandlerCocoa::windowFocusChanged): (WebNetscapePluginEventHandlerCocoa::focusChanged):
- 11:02 AM Changeset in webkit [34206] by
-
- 2 edits in trunk/WebKitTools
Reviewed by Darin Adler.
Restore original behavior of isOSX() referring to the Mac port, not the OS itself.
https://bugs.webkit.org/show_bug.cgi?id=19311
- 10:31 AM Changeset in webkit [34205] by
-
- 2 edits in trunk/JavaScriptCore
2008-05-29 Steve Falkenburg <sfalken@apple.com>
Build fix.
- kjs/array_instance.cpp:
- 10:14 AM Changeset in webkit [34204] by
-
- 3 edits3 adds in trunk
Reviewed by Darin.
https://bugs.webkit.org/show_bug.cgi?id=19294
<rdar://problem/5969062> A crash when iterating over a sparse array backwards.
- kjs/array_instance.cpp: Turned sparseArrayCutoff into a macro, so that using max() on it doesn't cause a PIC branch. (KJS::ArrayInstance::increaseVectorLength): Added a comment about this function not preserving class invariants. (KJS::ArrayInstance::put): Update m_storage after reallocation. Move values that fit to the vector from the map in all code paths.
- 9:08 AM Changeset in webkit [34203] by
-
- 2 edits in trunk/WebKit/mac
Reviewed by Jessica Kahn.
- fix <rdar://problem/5965013> Page 2 does not print correctly
When printing, _recursiveDisplayRectIfNeededIgnoringOpacity:... and
_recursiveDisplayAllDirtyWithLockFocus:... can be invoked without
-viewWillDraw being sent first, which could lead to painting without
valid layout. The fix is to ensure up-to-date layout in those methods
when printing.
- WebView/WebHTMLView.mm: (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]): (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]):
- 8:05 AM Changeset in webkit [34202] by
-
- 2 edits in trunk/WebCore
Reviewed by Adam Roben.
<rdar://problem/5960682> REGRESSION(r30535): Crashes on iExploder in checkForHeadCharset().
I don't see how to make a reliable test, but iExploder catches this quickly.
- loader/TextResourceDecoder.cpp: (WebCore::TextResourceDecoder::checkForHeadCharset): Correct the length passed to findIgnoringCase().
- 6:42 AM Changeset in webkit [34201] by
-
- 3 edits in trunk/WebKitTools
Reviewed by Adam Roben.
Fix run-iexploder-tests and run-mangleme-tests to work with updated shared scripts and
configuration files.
- Scripts/run-iexploder-tests:
- Scripts/run-mangleme-tests: Renamed runSafari to not conflict with the one in webkitdirs. Added SSLCertificateFile option for httpd, as now needed.
- 5:53 AM Changeset in webkit [34200] by
-
- 4 edits in trunk/WebCore
2008-05-29 Peter Kasting <zerodpx@gmail.com>
Reviewed by Dave Hyatt.
https://bugs.webkit.org/show_bug.cgi?id=19273
Handle looping GIFs correctly (at least in the open source GIF decoder) even when
the loop count doesn't appear in the initial data packets.
- platform/graphics/BitmapImage.cpp: (WebCore::BitmapImage::cacheFrame): (WebCore::BitmapImage::startAnimation): (WebCore::BitmapImage::advanceAnimation):
- platform/image-decoders/gif/GIFImageDecoder.cpp: (WebCore::GIFImageDecoder::GIFImageDecoder): (WebCore::GIFImageDecoder::repetitionCount): (WebCore::GIFImageDecoder::gifComplete):
- platform/image-decoders/gif/GIFImageDecoder.h:
- 4:28 AM Changeset in webkit [34199] by
-
- 8 edits in trunk/WebCore
2008-05-29 Brent Fulgham <bfulgham@gmail.com>
Reviewed by Alp Toker.
http://bugs.webkit.org/show_bug.cgi?id=19284
Correct Windows (Cairo) Build Regressions
Correct small Windows (Cairo) build regressions in recent updates.
- platform/graphics/SimpleFontData.h: Correct build regression due to r32781 (additional use of m_syntheticBoldOffset in GDI code).
- platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: Correct build regression due to r31830 (change of clip signature to use FloatRect rather than IntRect).
- platform/graphics/win/SimpleFontDataCairoWin.cpp: (WebCore::SimpleFontData::platformInit): Initialize m_syntheticBoldOffset
- platform/image-decoders/jpeg/JPEGImageDecoder.cpp: (WebCore::JPEGImageReader::JPEGImageReader): Work around build error due to warnings about _setjmp treated as errors.
- platform/image-decoders/png/PNGImageDecoder.cpp: Work around build error due to warnings about _setjmp treated as errors.
- platform/network/curl/ResourceHandleCurl.cpp: Correct build error due to different order (and content) of include files when building with CoreFoundation (but not CoreGraphics).
- platform/network/curl/ResourceHandleManager.cpp: (WebCore::ResourceHandleManager::setupPOST): Correct build error due to Visual Studio compiler bug.
- 3:16 AM Changeset in webkit [34198] by
-
- 2 edits in trunk/JavaScriptCore
2008-05-29 Thiago Macieira <tjmaciei@trolltech.com>
Reviewed by Simon.
Fix compilation in Solaris with Sun CC
Lots of WebKit code uses C99 functions that, strict as it
is, the Solaris system doesn't provide in C++. So we must define them
for both GCC and the Sun CC.
- 2:43 AM Changeset in webkit [34197] by
-
- 12 edits2 adds in trunk
Reviewed by Darin.
https://bugs.webkit.org/show_bug.cgi?id=19215
REGRESSION: transformToDocument fails when xsl includes  
Test: fast/xsl/nbsp-in-stylesheet.html
- editing/markup.cpp: (WebCore::appendAttributeValue): (WebCore::appendEscapedContent): (WebCore::escapeContentText): (WebCore::appendQuotedURLAttributeValue): (WebCore::appendNamespace): (WebCore::appendStartMarkup): (WebCore::appendDocumentType): (WebCore::createMarkup): Only escape non-breaking spaces in HTML documents. In Firefox, this behavior is also limited to innerHTML, but we don't have a separate code path for it, and do not necessarily want to.
- page/Frame.cpp: (WebCore::Frame::documentTypeString):
- dom/CDATASection.cpp:
- dom/CDATASection.h:
- dom/Comment.cpp:
- dom/Comment.h:
- dom/DocumentType.cpp:
- dom/DocumentType.h:
- dom/ProcessingInstruction.cpp:
- dom/ProcessingInstruction.h: While at it, I also wanted to fix escaping for these nodes, but it turned out that FIXMEs were incorrect. So, I just moved their serialization to markup.cpp for consistency.
- 2:37 AM Changeset in webkit [34196] by
-
- 2 edits in trunk/WebKit/qt
Kavindra Devi Palaraja <kdpalara@trolltech.com>
Doc: Mention the requirement of a QApplication with QtWebKit
- 2:37 AM Changeset in webkit [34195] by
-
- 3 edits in trunk/WebKit/qt
David Boddie <dboddie@trolltech.com>
Some clarifications for the documentation.
- 1:11 AM Changeset in webkit [34194] by
-
- 2 edits in trunk
Fix ChangeLog typos.
- 1:05 AM Changeset in webkit [34193] by
-
- 23 edits in trunk
WebCore:
2008-05-29 Maciej Stachowiak <mjs@apple.com>
Reviewed by Dave Hyatt.
- speed up DHTML using lazy style resolution and rendere creation
This change introduces the concept of "lazy attach" - when a node
is lazy attached, then instead of resolving style and creating a
renderer right away, we just mark it as needing a style recalc.
The patch makes use of this mechanism when inserting nodes directly
using DOM APIs from script. For now this is only done for the
JavaScript language binding but could also be done for other
bindings in the future.
Lazy attach helps some common DHTML patterns - when a node is
added to the DOM, and then subsequently changed in a
style-affecting way, this causes an extra style recalc. This is a
fairly common pattern so it is better to be lazy.
- bindings/js/JSNodeCustom.cpp: (WebCore::JSNode::insertBefore): Request lazy attach. (WebCore::JSNode::replaceChild): ditto (WebCore::JSNode::appendChild): ditto
- dom/ContainerNode.cpp: (WebCore::ContainerNode::insertBefore): Support lazy attach. (WebCore::ContainerNode::replaceChild): ditto (WebCore::ContainerNode::appendChild): ditto (WebCore::ContainerNode::detach): Clear "changed child" bit if still set.
- dom/ContainerNode.h:
- dom/Element.cpp: (WebCore::Element::recalcStyle): Adjusted to properly reattach a lazy-attached node.
- dom/Node.cpp: (WebCore::Node::insertBefore): Extra parameter for lazy attach (still doesn't do anything). (WebCore::Node::replaceChild): ditto (WebCore::Node::appendChild): ditto (WebCore::Node::setChanged): Unrelated but obvious optimization - stop marking ancestor as having a changed child once we already reach an ancestor so marked. (WebCore::outermostLazyAttachedAncestor): Helper function for lazyAttach. (WebCore::Node::lazyAttach): Implement lazy attach. (WebCore::Node::canLazyAttach): Virtual method - true for most nodes.
- dom/Node.h:
- dom/Text.cpp: (WebCore::Text::recalcStyle): Properly handle the case of a reattached node.
- html/HTMLEmbedElement.h: (WebCore::HTMLEmbedElement::canLazyAttach): Refuse lazy attach, since plugins and frames do important work at rederer creation time.
- html/HTMLFrameElementBase.h: (WebCore::HTMLFrameElementBase::canLazyAttach): Refuse lazy attach, since plugins and frames do important work at rederer creation time.
- html/HTMLFrameSetElement.cpp: (WebCore::HTMLFrameSetElement::recalcStyle): Change order so that reattach works properly.
- html/HTMLObjectElement.h: (WebCore::HTMLObjectElement::canLazyAttach): Refuse lazy attach, since plugins and frames do important work at rederer creation time.
- html/HTMLOptGroupElement.cpp: (WebCore::HTMLOptGroupElement::insertBefore): Pass along extra param. (WebCore::HTMLOptGroupElement::replaceChild): ditto (WebCore::HTMLOptGroupElement::appendChild): ditto
- html/HTMLOptGroupElement.h:
- html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::insertBefore): Pass along extra param. (WebCore::HTMLSelectElement::replaceChild): ditto (WebCore::HTMLSelectElement::appendChild): ditto
- html/HTMLSelectElement.h:
- svg/SVGLocatable.cpp: (WebCore::SVGLocatable::getBBox): Add missing updateLayout call.
- svg/SVGTextContentElement.cpp: (WebCore::SVGTextContentElement::getNumberOfChars): ditto (WebCore::SVGTextContentElement::getComputedTextLength): ditto (WebCore::SVGTextContentElement::getSubStringLength): ditto (WebCore::SVGTextContentElement::getStartPositionOfChar): ditto (WebCore::SVGTextContentElement::getEndPositionOfChar): ditto (WebCore::SVGTextContentElement::getExtentOfChar): ditto (WebCore::SVGTextContentElement::getRotationOfChar): ditto (WebCore::SVGTextContentElement::getCharNumAtPosition): ditto
LayoutTests:
2008-05-29 Maciej Stachowiak <mjs@apple.com>
Reviewed by Dave Hyatt.
- Test cases for this change: "speed up DHTML using lazy style resolution and rendere creation"
- http/tests/misc/acid3-expected.txt:
- platform/mac/fast/dynamic/insert-before-table-part-in-continuation-expected.checksum:
- platform/mac/fast/dynamic/insert-before-table-part-in-continuation-expected.png:
- platform/mac/fast/dynamic/insert-before-table-part-in-continuation-expected.txt:
May 28, 2008:
- 9:15 PM Changeset in webkit [34192] by
-
- 5 edits in trunk
Fix codegen for assignment being used as a function.
Reviewed by Anders.
FunctionCallValueNode::emitCode failed to account for the
potential of the function expression to allocate arbitrary
registers.
- 7:11 PM Changeset in webkit [34191] by
-
- 6 edits in trunk/JavaScriptGlue
2008-05-28 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Fixed total destruction in Software Update.app.
Updated JavaScriptGlue to honor squirrelfish's new getCallData mechanism for
indicating that an object can be called as a function.
- 5:51 PM Changeset in webkit [34190] by
-
- 2 edits in trunk/WebCore
<rdar://problem/5957036> REGRESSION (r31960): 20-30% slowdown in i-Bench JavaScript test on XP Home
Conditionalize the timer latency change (r31960) only for vista since it does not
help xp anyway.
Reviewed by Steve Falkenburg.
- platform/win/SharedTimerWin.cpp: (WebCore::isRunningOnVistaOrLater): (WebCore::TimerWindowWndProc): (WebCore::setSharedTimerFireTime):
- 5:44 PM Changeset in webkit [34189] by
-
- 2 edits in trunk/WebKit/mac
2008-05-28 Anders Carlsson <andersca@apple.com>
Reviewed by Jon.
Remove workaround, this is no longer a problem.
- WebView/WebView.mm: (-[WebView _removeObjectForIdentifier:]):
- 4:20 PM Changeset in webkit [34188] by
-
- 2 edits in trunk/WebCore
2008-05-28 Anders Carlsson <andersca@apple.com>
Build fix.
- storage/LocalStorage.cpp: (WebCore::LocalStorage::scheduleImport):
- 3:50 PM Changeset in webkit [34187] by
-
- 4 edits in trunk/WebCore
2008-05-28 Anders Carlsson <andersca@apple.com>
Reviewed by Tim.
<rdar://problem/5965960>
CrashTracer: [USER] 4 crashes in Safari at libxml2.2.dylib: xmlGenericErrorDefaultFunc + 76
Turns out that while libxml has two different error callbacks, they both use the same context, so we need to
set both error callbacks to prevent one of the error callbacks from using the context as a FILE pointer.
- xml/XSLStyleSheet.cpp: (WebCore::XSLStyleSheet::parseString):
- xml/XSLTProcessor.cpp: (WebCore::XSLTProcessor::genericErrorFunc): (WebCore::docLoaderFunc):
- xml/XSLTProcessor.h:
- 3:45 PM Changeset in webkit [34186] by
-
- 4 edits in trunk/WebCore
2008-05-28 Brady Eidson <beidson@apple.com>
Reviewed by Adam
Fix hang I introduced to WebKit clients without their LocalStorage paths set
Such as DRT...
- storage/LocalStorage.cpp: (WebCore::LocalStorage::scheduleImport): Return a bool, namely to signify whether or not there is a LocalStorageThread to schedule the import on.
- storage/LocalStorage.h:
- storage/LocalStorageArea.cpp: (WebCore::LocalStorageArea::LocalStorageArea): If the scheduleImport failed, mark the imported flag as true so the LocalStorageArea doesn't wait around locking the main thread.
- 3:25 PM Changeset in webkit [34185] by
-
- 3 edits in trunk/WebCore
2008-05-28 Anthony Ricaud <rik24d@gmail.com>
User stylesheets are now non-editable and displayed as user-stylesheets
<https://bugs.webkit.org/show_bug.cgi?id=17602>
<rdar://problem/5967637>
Reviewed by Tim Hatcher.
- English.lproj/localizedStrings.js: Added a string
- page/inspector/StylesSidebarPane.js:
- 2:48 PM Drosera edited by
- Add note about Drosera going to the giant debugger in the sky (diff)
- 2:00 PM Changeset in webkit [34184] by
-
- 2 edits in trunk/WebCore
2008-05-28 Anders Carlsson <andersca@apple.com>
Reviewed by Mitz.
<rdar://problem/5819989>
Crash in WebKit!KJS::Window::printErrorMessage quitting Safari after pop up window on uk.real.com was closed
Add null check for Frame::settings().
- bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::printErrorMessage):
- 1:57 PM Changeset in webkit [34183] by
-
- 5 edits in trunk/WebKit/wx
Reviewed by Kevin Ollivier.
This patch adds a new wx event type and code to send it when a new title is set by the page being loaded.
https://bugs.webkit.org/show_bug.cgi?id=19067
- 1:47 PM Changeset in webkit [34182] by
-
- 13 edits in trunk
2008-05-27 Geoffrey Garen <ggaren@apple.com>
Reviewed by Tim Hatcher.
Fixed https://bugs.webkit.org/show_bug.cgi?id=19183
REGRESSION (r33979): Crash in DebuggerCallFrame::functionName when
clicking button in returnEvent-crash.html
Added two new debugger hooks, willExecuteProgram and didExecuteProgram,
along with code to generate them, code to invoke them when unwinding
due to an exception, and code to dump them.
SunSpider reports no change.
- VM/CodeBlock.cpp: (KJS::debugHookName): I had to mark this function NEVER_INLINE to avoid a .4% performance regression. The mind boggles.
WebCore:
2008-05-27 Geoffrey Garen <ggaren@apple.com>
Reviewed by Tim Hatcher.
Fixed https://bugs.webkit.org/show_bug.cgi?id=19183
REGRESSION (r33979): Crash in DebuggerCallFrame::functionName when
clicking button in returnEvent-crash.html
Added implementations for willExecuteProgram and didExecuteProgram. They
take care to update our call frame when entering and exiting programs,
preventing us from keeping around a stale global frame after executing
a program.
eval programs now show up as "anonymous function" in a new scope. This
is slightly better than what they used to do -- overwriting the current
scope -- but obviously we can do better.
WebKit/mac:
2008-05-27 Geoffrey Garen <ggaren@apple.com>
Reviewed by Tim Hatcher.
Fixed https://bugs.webkit.org/show_bug.cgi?id=19183
REGRESSION (r33979): Crash in DebuggerCallFrame::functionName when
clicking button in returnEvent-crash.html
Added implementations for willExecuteProgram and didExecuteProgram, which
take care of making sure we're not hanging on to stale data.
- 1:28 PM Changeset in webkit [34181] by
-
- 3 edits in trunk/WebKit/wx
Reviewed by Kevin Ollivier.
This patch tweaks the wxWebView class to make it conform to normal wx patterns for widget classes. It adds a default ctor and the Create method so it can use the 2-phase create pattern, adds wxRTTI macros which is important for wxPython and XRC, and fixes the LoadURL method to pass a wxString reference to save a copy.
https://bugs.webkit.org/show_bug.cgi?id=19068
- 1:13 PM Changeset in webkit [34180] by
-
- 2 edits in trunk/JavaScriptCore
Fix JavaScriptCore tests on OS X
We were quoting the path to testkjs too late, after it had already
been combined with spaces and other options.
- tests/mozilla/jsDriver.pl: (top level): Move path quoting from here... (sub get_kjs_engine_command): ...to here.
- 11:55 AM Changeset in webkit [34179] by
-
- 4 edits in trunk/WebCore
2008-05-28 Brady Eidson <beidson@apple.com>
Reviewed by Dan Bernstein
<rdar://problem/5946834> - LocalStorage threads appearing in apps that don't want them.
Decided to fix this bug from a few different avenues to make sure we only create LocalStorage resources
when we *really* want them.
- page/DOMWindow.cpp: (WebCore::DOMWindow::localStorage): Account for the possibility that the LocalStorage object might be null.
- storage/LocalStorage.cpp: (WebCore::LocalStorage::LocalStorage): Don't create the thread if there is no path name - we know we'll never be needing it when there is no file backing us on disk. (WebCore::LocalStorage::scheduleImport): Null check the thread, as it might not exist. (WebCore::LocalStorage::scheduleSync): Ditto
- storage/LocalStorageThread.cpp: (WebCore::LocalStorageThread::localStorageThread): Clear the threadID after termination - clear way to signify that this thread is truly done. (WebCore::LocalStorageThread::scheduleImport): ASSERT that the queue is live, and the threadID exists (WebCore::LocalStorageThread::scheduleSync): Ditto (WebCore::LocalStorageThread::terminate): Don't schedule termination and wait for it to complete if the thread isn't live.
- 11:36 AM Changeset in webkit [34178] by
-
- 2 edits in trunk/WebCore
Reviewed by Kevin Ollivier.
Rescale image to fit the destination rect so that we don't get a crash when drawing in a destination rect that's bigger than the image rect. Also adds an optimization for drawing an image that is a solid color.
https://bugs.webkit.org/show_bug.cgi?id=18465
- 11:13 AM Changeset in webkit [34177] by
-
- 3 edits3 adds in trunk
2008-05-28 Anders Carlsson <andersca@apple.com>
Reviewed by Oliver.
<rdar://problem/5968071> "const f" crashes in JavaScriptCore
Make sure to null check the initializer.
- kjs/nodes.cpp: (KJS::ConstDeclNode::emitCodeSingle):
LayoutTests:
2008-05-28 Anders Carlsson <andersca@apple.com>
Reviewed by Oliver.
<rdar://problem/5968071> "const f" crashes in JavaScriptCore
- fast/js/const-without-initializer-expected.txt: Added.
- fast/js/const-without-initializer.html: Added.
- fast/js/resources/const-without-initializer.js: Added.
- 11:04 AM Changeset in webkit [34176] by
-
- 3 edits in trunk/WebKit/gtk
2008-05-28 Alp Toker <alp@nuanti.com>
Reviewed by Alexey Proskuryakov.
http://bugs.webkit.org/show_bug.cgi?id=18704
[gtk] cannot type letters with dead keys in textarea
http://bugs.webkit.org/show_bug.cgi?id=14120
[GDK] Support input methods
Add support for input method composition.
Remove some old hacks so we handle input method events more
consistently.
- WebCoreSupport/EditorClientGtk.cpp: (WebKit::imContextCommitted): (WebKit::imContextPreeditChanged): (WebKit::EditorClient::setInputMethodState): (WebKit::EditorClient::respondToChangedSelection): (WebKit::EditorClient::handleInputMethodKeydown): (WebKit::EditorClient::EditorClient): (WebKit::EditorClient::~EditorClient): (WebKit::EditorClient::textFieldDidBeginEditing): (WebKit::EditorClient::textFieldDidEndEditing): (WebKit::EditorClient::textDidChangeInTextField): (WebKit::EditorClient::doTextFieldCommandFromEvent):
- webkit/webkitwebview.cpp:
- 10:31 AM Changeset in webkit [34175] by
-
- 2 edits in trunk/BugsSite
Make PrettyPatch able to handle diffs taken from outside the WebKit source tree
Part of Bug 19290: More patches not handled by PrettyPatch.rb
<https://bugs.webkit.org/show_bug.cgi?id=19290>
Reviewed by David Kilzer.
- PrettyPatch/PrettyPatch.rb: (PrettyPatch.find_url_and_path): Added. Searches the file path from the bottom up looking for a directory that exists in the source tree. (PrettyPatch.linkifyFilename): Changed to call find_url_and_path.
- 10:31 AM Changeset in webkit [34174] by
-
- 2 edits in trunk/JavaScriptCore
Make run-javascriptcore-tests work with a space in the path to testkjs
Reviewed by Alexey Proskuryakov.
- tests/mozilla/jsDriver.pl: Quote the path to the engine so that spaces will be interpreted correctly.
- 8:46 AM Changeset in webkit [34173] by
-
- 3 edits in trunk/BugsSite
Print exceptions from PrettyPatch to stdout
This will make it much easier to debug problems with PrettyPatch,
since we'll be able to see the exceptions in the browser.
Reviewed by Sam Weinig.
- PrettyPatch/prettify.rb: Added a --html-exceptions option, which will print exceptions to stdout as HTML.
- attachment.cgi: Changed to pass --html-exceptions to prettify.rb.
- 5:36 AM Changeset in webkit [34172] by
-
- 2 edits in trunk/JavaScriptCore
Fixed a misguiding comment - my measurement for negative numbers only included cases
where both operands were negative, which is not very interesting.
- VM/Machine.cpp:
- 3:48 AM Changeset in webkit [34171] by
-
- 3 edits in trunk/JavaScriptCore
Reviewed by Maciej.
Based on a patch by Oliver Hunt.
https://bugs.webkit.org/show_bug.cgi?id=19180
speed up SunSpider by optimizing immediate number cases
1.4% speedup on SunSpider.
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- kjs/JSImmediate.h: (KJS::JSImmediate::incImmediateNumber): (KJS::JSImmediate::decImmediateNumber): Added fast paths for ++ and --.
(KJS::JSImmediate::canDoFastAdditiveOperations): Corrected a comment.
- 2:47 AM Changeset in webkit [34170] by
-
- 3 edits in trunk/JavaScriptCore
Reviewed by Darin.
https://bugs.webkit.org/show_bug.cgi?id=19180
speed up SunSpider by optimizing immediate number cases
2% speedup overall, maximum 10% on controlflow-recursive and bitops-3bit-bits-in-byte,
but a 4% regression on bitops-bits-in-byte and bitops-bitwise-and.
- kjs/JSImmediate.h: (KJS::JSImmediate::canDoFastAdditiveOperations): (KJS::JSImmediate::addImmediateNumbers): (KJS::JSImmediate::subImmediateNumbers): Added fast cases that work with positive values less than 230.
- VM/Machine.cpp: (KJS::Machine::privateExecute): Use the above operations. Also updated SunSpider frequencies with my results (looks like tag values have changed, not sure what caused the minor variation in actual frequencies).
- 12:44 AM Changeset in webkit [34169] by
-
- 2 edits in trunk/WebCore
2008-05-27 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon
Close the video widget explicitly so we don't hang
when exiting the application.
May 27, 2008:
- 9:31 PM Changeset in webkit [34168] by
-
- 3 edits in tags/Safari-6526.8.1/JavaScriptCore
Merge r34165.
- 9:28 PM Changeset in webkit [34167] by
-
- 1 copy in tags/Safari-6526.8.1
New tag.
- 9:20 PM Changeset in webkit [34166] by
-
- 6 edits in trunk
WebCore:
2008-05-27 Justin Garcia <justin.garcia@apple.com>
Reviewed by Oliver.
<rdar://problem/5803706> Pressing return at the end of a header doesn't break out of header (17460)
It wasn't enough to break out of the header, to match other browsers we
also need to not preserve the typing style.
- editing/InsertParagraphSeparatorCommand.cpp: (WebCore::InsertParagraphSeparatorCommand::applyStyleAfterInsertion): (WebCore::InsertParagraphSeparatorCommand::doApply):
- editing/InsertParagraphSeparatorCommand.h:
LayoutTests:
2008-05-27 Justin Garcia <justin.garcia@apple.com>
Reviewed by Oliver.
<rdar://problem/5803706> Pressing return at the end of a header doesn't break out of header (17460)
- editing/inserting/5803706-1-expected.txt: Adjust this already checked-in test to reflect the new expected behavior.
- editing/inserting/5803706-1.html:
- 8:54 PM Changeset in webkit [34165] by
-
- 3 edits in trunk/JavaScriptCore
Windows build fix
- JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGenerated.make: Remove code that appended Cygwin's /bin directory to PATH.
- JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGenerated.vcproj: Prepend Cygwin's /bin directory to PATH. We prepend instead of append so that Cygwin's utilities will win out over Win32 versions of the same utilities (particularly perl). We do the prepend here instead of in the Makefile because nmake doesn't seem to like prepending to PATH inside the Makefile. This also matches the way WebCoreGenerated works.
- 8:54 PM Changeset in webkit [34164] by
-
- 3 edits in trunk/JavaScriptCore
Roll out r34163
A better fix is on the way.
- DerivedSources.make:
- JavaScriptCore.vcproj/JavaScriptCore/build-generated-files.sh:
- 8:31 PM Changeset in webkit [34163] by
-
- 3 edits in trunk/JavaScriptCore
Windows build fix
- DerivedSources.make: Don't generate the bytecode docs if OMIT_BYTECODE_DOCS is set to 1.
- JavaScriptCore.vcproj/JavaScriptCore/build-generated-files.sh: Set OMIT_BYTECODE_DOCS for production builds.
- 7:45 PM Changeset in webkit [34162] by
-
- 2 edits in trunk/WebCore
<rdar://problem/5966961> REGRESSION: Font previews in the Web
Inspector always show in Lucida Grande (not the real font)
Reviewed by Adam Roben.
- page/inspector/FontView.js: Add a style element that loads the
@font-face rule that is excepted by the preview element.
- 7:45 PM Changeset in webkit [34161] by
-
- 3 edits in trunk/WebCore
Fixes a regression where the Image and Font preview views do not
size correctly.
<rdar://problem/5966723> REGRESSION (r33991): Image and font previews
are shrunken and can't be made larger (19281)
Reviewed by Adam Roben.
- page/inspector/FontView.js: Adjust the font size based only on the
container width minus padding.
- page/inspector/inspector.css: Updated styles for the image and
font views.
- 5:44 PM Changeset in webkit [34160] by
-
- 3 edits3 adds in trunk
2008-05-27 Anders Carlsson <andersca@apple.com>
Reviewed by Geoff and Maciej.
<rdar://problem/5806428>
https://bugs.webkit.org/show_bug.cgi?id=17925
Crash in KJS::JSObject::put after setting this.proto
Set slotIsWriteable to false for proto, we want setting proto to go through JSObject::put instead.
- kjs/object.h: (KJS::JSObject::getOwnPropertySlotForWrite):
LayoutTests:
2008-05-27 Anders Carlsson <andersca@apple.com>
Reviewed by Geoff and Maciej.
<rdar://problem/5806428>
https://bugs.webkit.org/show_bug.cgi?id=17925
Crash in KJS::JSObject::put after setting this.proto
- fast/js/resources/this-non-object-proto.js: Added.
- fast/js/this-non-object-proto-expected.txt: Added.
- fast/js/this-non-object-proto.html: Added.
- 4:38 PM Changeset in webkit [34159] by
-
- 1 edit in trunk/WebCore/html/HTMLTokenizer.h
Fix typo in comment.
- 4:33 PM Changeset in webkit [34158] by
-
- 3 edits in trunk/WebCore
Fix Bug 19276: XHR resources are classified as "Other" until Inspector is closed and reopened
<https://bugs.webkit.org/show_bug.cgi?id=19276>
<rdar://problem/5965742>
Reviewed by Tim Hatcher.
- page/InspectorController.cpp: (WebCore::InspectorController::updateScriptResourceResponse): Moved code that updates the resource's type from here... (WebCore::InspectorController::updateScriptResourceType): ...to here. (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest): Call updateScriptResourceType now that we know this resource was retrieved via an XHR.
- page/InspectorController.h:
- 4:25 PM Changeset in webkit [34157] by
-
- 1 edit in trunk/JavaScriptCore/VM/CodeBlock.cpp
Roll out r34156, which was accidentally checked in
- 4:22 PM Changeset in webkit [34156] by
-
- 1 edit in trunk/JavaScriptCore/VM/CodeBlock.cpp
add printInstruction
- 2:50 PM Changeset in webkit [34155] by
-
- 2 edits in trunk/WebCore
Removes a redundant call to InspectorController::stopDebugging().
Rubber-stamped by Adam Roben.
- page/InspectorController.cpp:
(WebCore::InspectorController::showWindow):
- 1:44 PM Changeset in webkit [34154] by
-
- 2 edits in trunk/WebKit/mac
Fixes a bug where unplugging the monitor from a video card and
moving it to another video card would no longer show OpenGL plugins
until you relaunched Safari.
<rdar://problem/5790983> Add AllowOfflineDisplays pixel format
attribute to OpenGL contexts
Reviewed by Kevin Decker.
- Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView _createWindowedAGLContext]): Added
AGL_ALLOW_OFFLINE_RENDERERS for non-Tiger builds.
(-[WebBaseNetscapePluginView _createWindowlessAGLContext]): Ditto.
- 11:46 AM Changeset in webkit [34153] by
-
- 4 edits2 adds in trunk/WebCore
2008-05-27 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
- Added and updated some manual test for the profiler.
- manual-tests/inspector/profiler-test-anonymous-function-calls-eval.html:
- manual-tests/inspector/profiler-test-apply.html:
- manual-tests/inspector/profiler-test-call.html:
- manual-tests/inspector/profiler-test-deep-recursion.html: Added.
- manual-tests/inspector/profiler-test-simple-event-call.html: Added.
- 10:49 AM Changeset in webkit [34152] by
-
- 2 edits in trunk/WebKitTools
wx build fix. Update the sample app after wxWebFrame->wxWebBrowserShell rename.
- 9:29 AM Changeset in webkit [34151] by
-
- 4 edits in trunk
wx build fix. Accidently left a couple fixes out of the previous commit.
- 9:12 AM Changeset in webkit [34150] by
-
- 6 edits in trunk
wx build fixes after introduction of SquirrelFish and other updates.
- 7:43 AM Changeset in webkit [34149] by
-
- 3 edits in trunk/JavaScriptCore
2008-05-27 Darin Adler <Darin Adler>
Reviewed by Tim Hatcher.
- https://bugs.webkit.org/show_bug.cgi?id=19180 speed up SunSpider by optimizing immediate number cases
Add immediate number cases for the &, |, and operators.
Makes standalone SunSpider 1.010x faster.
- VM/Machine.cpp: (KJS::Machine::privateExecute): Add areBothImmediateNumbers special cases for the &, |, and operators.
- kjs/JSImmediate.h: (KJS::JSImmediate::xorImmediateNumbers): Added. (KJS::JSImmediate::orImmediateNumbers): Added.
- 3:31 AM Changeset in webkit [34148] by
-
- 2 edits in trunk/WebCore
2008-05-27 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Simon.
Fix linking error (missing gdi32 and user32 libraries).
- WebCore.pro:
- 2:49 AM Changeset in webkit [34147] by
-
- 2 edits in trunk/WebKit/qt
2008-05-27 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Simon.
Fix web inspector does not returns its state properly after its window is minimized.
As hinted by Holger, InspectorClientView::hideEvent is not needed.
This fixes bug https://bugs.webkit.org/show_bug.cgi?id=18967
- 2:02 AM Changeset in webkit [34146] by
-
- 2 edits in trunk/WebCore
2008-05-27 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Simon.
Update the WebKit.qrc so that Web Inspector is functional again.
- page/inspector/WebKit.qrc:
May 26, 2008:
- 10:04 PM Changeset in webkit [34145] by
-
- 2 edits in trunk/JavaScriptCore
2008-05-26 Stephanie Lewis <Stephanie Lewis>
Windows build fix.
- kjs/testkjs.cpp:
- 7:48 PM Changeset in webkit [34144] by
-
- 3 edits in trunk/WebCore
2008-05-26 Alp Toker <alp@nuanti.com>
Reviewed by Anders.
http://bugs.webkit.org/show_bug.cgi?id=16495
[GTK] Accessibility support with ATK/AT-SPI
Implement basic action, text and editable text accessibility.
Provide utility functions to simplify const string return and casting
and add some more stubs.
It's now possible to navigate and manipulate forms and text using
assistive technologies.
- page/gtk/AccessibilityObjectWrapperAtk.cpp: (returnString): (core):
- platform/gtk/LocalizedStringsGtk.cpp: (WebCore::AXButtonActionVerb): (WebCore::AXRadioButtonActionVerb): (WebCore::AXTextFieldActionVerb): (WebCore::AXCheckedCheckBoxActionVerb): (WebCore::AXUncheckedCheckBoxActionVerb): (WebCore::AXLinkActionVerb): (WebCore::imageTitle):
- 7:10 PM Changeset in webkit [34143] by
-
- 14 edits in trunk
2008-05-26 Maciej Stachowiak <mjs@apple.com>
Reviewed by Anders.
- make addStaticGlobals protected instead of private so subclasses can use it
- JavaScriptCore.exp:
- kjs/JSGlobalObject.h:
WebCore:
2008-05-25 Maciej Stachowiak <mjs@apple.com>
Reviewed by Anders.
- bind the window's "document" and "window" properties to static slots 1.7% speedup on Acid3 test 26
Only the "document" part matters for Acid3, but since I was doing
this anyway, "window" also seemed like a good one to optimize.
- bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::JSDOMWindowBase): Allocate variable slots for document and window; but just put null in the document slot for now. (WebCore::JSDOMWindowBase::updateDocument): Fill in the document slot. (WebCore::JSDOMWindowBase::~JSDOMWindowBase): Make our shell stop tracking us.
- bindings/js/JSDOMWindowBase.h:
- bindings/js/JSDOMWindowShell.cpp: (WebCore::JSDOMWindowShell::JSDOMWindowShell): Allocate HashSet for our still-not-dead inner windows. (WebCore::JSDOMWindowShell::updateDocument): Update all our inner windows ever (to make sure the update to the document property shows up everywhere).
- bindings/js/JSDOMWindowShell.h: (WebCore::JSDOMWindowShell::setWindow): Update our hash. (WebCore::JSDOMWindowShell::clearFormerWindow): Ditto.
- bindings/js/JSDocumentCustom.cpp: (WebCore::toJS): Don't set self as a property map property of the window, this is no longer necessary.
- bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::initScript): Update document for the newly created window.
- bindings/js/kjs_proxy.h:
- page/Frame.cpp: (WebCore::Frame::setDocument): If the document is not null, update our window.
LayoutTests:
2008-05-26 Maciej Stachowiak <mjs@apple.com>
Reviewed by Anders.
- update test result for document/window being allocated to var slots
- http/tests/security/cross-frame-access-put-expected.txt:
- 4:49 PM Changeset in webkit [34142] by
-
- 13 edits in trunk/LayoutTests
2008-05-26 James Ren <jamesjren@gmail.com>
Reviewed by Sam Weinig, landed by Collin Jackson.
Modified some http/security layout tests to allow them to run in Firefox.
- http/tests/security/aboutBlank/xss-DENIED-set-opener.html:
- http/tests/security/frameNavigation/xss-ALLOWED-targeted-subframe-navigation-change.html:
- http/tests/security/resources/localhost-accesssor.html: Added a workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=434912
- http/tests/security/resources/cross-frame-access.js: Changed shouldBe to also gracefully handle exceptions
- http/tests/security/resources/foreign-domain-iframe-for-selection-test.html: Added feature detection for setBaseAndExtent and selectAllChildren
- http/tests/security/cross-frame-access-enumeration-expected.txt:
- http/tests/security/cross-frame-access-enumeration.html: Fixed typo (missing '.html')
- http/tests/security/cross-frame-access-call-expected.txt:
- http/tests/security/cross-frame-access-call.html:
- http/tests/security/cross-frame-access-first-time.html:
- http/tests/security/cross-frame-access-put.html:
- http/tests/security/cross-frame-access-selection.html: Caught exceptions that Firefox throws, to allow the test to run to completion.
- 2:13 PM Changeset in webkit [34141] by
-
- 7 edits1 add in trunk/WebCore
2008-05-26 Anders Carlsson <andersca@apple.com>
Reviewed by Sam.
This patch does two things:
- It adds a toJSNewlyCreated function for creating JS wrappers for nodes where we know that the node doesn't have a wrapper. This avoids a hash lookup.
- It adds toJSNewlyCreated methods for JSElement and JSText.
All in all this is a 4.3% speedup on Acid 3 test 26.
- WebCore.vcproj/WebCore.vcproj:
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/JSElementCustom.cpp: (WebCore::toJSNewlyCreated):
- bindings/js/JSNodeCustom.cpp: (WebCore::createWrapper): (WebCore::toJSNewlyCreated): (WebCore::toJS):
- bindings/js/JSTextCustom.cpp: Added. (WebCore::toJSNewlyCreated):
- bindings/scripts/CodeGeneratorJS.pm:
- dom/Document.idl:
- 1:53 PM Changeset in webkit [34140] by
-
- 1 edit in trunk/WebCore/ChangeLog
Fixed date of ChangeLog entry.
- 1:41 PM Changeset in webkit [34139] by
-
- 7 edits in trunk/WebCore
2008-05-26 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
Inline the getOwnPropertySlot for JSNode, JSEventTargetNode, JSElement,
and JSDocument for a 1-2% speedup on Acide 3 test 26.
- bindings/js/JSEventTargetNode.cpp:
- bindings/js/JSEventTargetNode.h: (WebCore::JSEventTargetNode::getOwnPropertySlot): (WebCore::JSEventTargetNode::getValueProperty): (WebCore::JSEventTargetNode::put): (WebCore::JSEventTargetNode::putValueProperty):
- bindings/scripts/CodeGeneratorJS.pm:
- dom/Document.idl:
- dom/Element.idl:
- dom/Node.idl:
- 1:07 PM Changeset in webkit [34138] by
-
- 16 edits in trunk/WebCore
2008-05-25 Darin Adler <Darin Adler>
Reviewed by Maciej.
Removed code that would only useful if if there was any way to create an Entity
node or if we populated EntityReference nodes. It's likely that we'll remove
these node types entirely in some future version of WebKit, depending in part
on what happens with these in HTML 5.
1.8% speedup of Acid3 test 26.
The only read-only nodes we ever create are EntityReference nodes.
These are only created by explicit calls to the Document.createEntityReference
function. Since the created nodes are read-only, there can be no children of
these nodes, so no other types of nodes can be read-only despite the rule that
makes descendants of Entity and EntityReference nodes read-only.
- bindings/objc/DOM.mm: Removed unneeded include.
- dom/Attr.cpp: (WebCore::Attr::setValue): Removed unnecessary isReadOnlyNode check. (WebCore::Attr::setNodeValue): Ditto.
- dom/CharacterData.cpp: (WebCore::CharacterData::setData): Removed unnecessary isReadOnlyNode check. (WebCore::CharacterData::substringData): Don't initialize the ec variable before calling checkCharDataOperation, since that function already does it. (WebCore::CharacterData::appendData): Removed unnecessary isReadOnlyNode check. (WebCore::CharacterData::insertData): Don't initialize ec. (WebCore::CharacterData::deleteData): Ditto. (WebCore::CharacterData::replaceData): Ditto. (WebCore::CharacterData::setNodeValue): Removed now-misleading comment. (WebCore::CharacterData::checkCharDataOperation): Removed unnecessary isReadOnlyNode check.
- dom/CharacterData.h: Made checkCharDataOperation private and non-virtual since it's never used or defined in any other class.
- dom/Element.cpp: (WebCore::Element::setAttribute): Removed unneeded isReadOnlyNode check.
- dom/Entity.cpp: Removed the entire contents of this file.
- dom/Entity.h: Replaced the class with a stub -- just enough to keep the public bindings (JavaScript and Objective-C compiling), but the class is abstract and can't be instantianted.
- dom/EntityReference.cpp: Removed unused constructor. (WebCore::EntityReference::cloneNode): Removed unneeded code and comments to clone nonexistent child nodes.
- dom/EntityReference.h: Removed unused constructor and unnecessary override of childTypeAllowed, since no children are allowed at all.
- dom/NamedAttrMap.cpp: (WebCore::NamedAttrMap::setNamedItem): Removed unneeded isReadOnlyNode check. (WebCore::NamedAttrMap::removeNamedItem): Ditto.
- dom/NamedAttrMap.h: Removed isReadOnlyNode function.
- dom/Node.cpp: Removed the old isReadOnlyNode function. It made lots of virtual nodeType function calls.
- dom/Node.h: (WebCore::Node::isReadOnlyNode): Replaced the old virtual isReadOnlyNode function with a new simple non-virtual one.
- dom/ProcessingInstruction.cpp: (WebCore::ProcessingInstruction::setData): Removed unneeded isReadOnlyNode check.
- dom/Text.cpp: (WebCore::Text::splitText): Removed unneeded isReadOnlyNode check. (WebCore::Text::replaceWholeText): Removed unnecessary isReadOnlyNode assertion. There is no reason for this function to go out of its way to mention the read-only node issue when none of the other DOM mutation functions do.
- 12:38 PM Changeset in webkit [34137] by
-
- 2 edits in trunk/WebCore
2008-05-26 Adam Barth <abarth@webkit.org>
Reviewed by Sam.
Cleanup SecurityOrigin::canAccess. Removed comment referring to an
old version of the code. Removed some useless code.
- platform/SecurityOrigin.cpp: (WebCore::SecurityOrigin::canAccess):
- 11:57 AM Changeset in webkit [34136] by
-
- 1 edit in trunk/JavaScriptCore/ChangeLog
ChangeLog fixup: 'prevent subtle errors' is a little more reassuring than 'lead to subtle errors'
- 11:50 AM Changeset in webkit [34135] by
-
- 2 edits in trunk/JavaScriptCore
2008-05-26 Geoffrey Garen <ggaren@apple.com>
Reviewed by Darin Adler.
Fixed <rdar://problem/5960859> After an eval of a non-string or a syntax
error, all profile stack frames are incorrect
SunSpider reports a .3% speedup, possibly because eval of a string is a
little more efficient now.
- VM/Machine.cpp: (KJS::callEval): Make sure to call didExecute when returning early. I simplified this function to remove one early return, making the job of adding special code to early returns easier.
(KJS::Machine::execute): Use the new function ExecState when notifying
the profiler. (This doesn't change behavior now, but it might lead to
subtle errors in the future.)
- 11:43 AM Changeset in webkit [34134] by
-
- 3 edits in trunk/LayoutTests
2008-05-26 Anders Carlsson <andersca@apple.com>
Reviewed by Sam.
Add a name to the source frame.
- fast/frames/viewsource-empty-attribute-value-expected.txt:
- fast/frames/viewsource-empty-attribute-value.html:
- 5:45 AM Changeset in webkit [34133] by
-
- 2 edits in trunk/WebCore
2008-05-26 Gwenole Beauchesne <gbeauchesne@splitted-desktop.org>
Reviewed by Alp Toker.
- platform/gtk/LocalizedStringsGtk.cpp: (WebCore::contextMenuItemTagSelectAll): Fix GTK+ version check.
- 5:29 AM Changeset in webkit [34132] by
-
- 4 edits in trunk
2008-05-23 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon.
Fixed toLower and toUpper implementations to allow being called
with a null result pointer and resultLength, to determine the
number of characters needed for the case conversion.
LayoutTests:
008-05-23 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon.
Added a comment to the skipping of fast/css/case-transform.html that
mentions the reason of failure being a Qt bug.
- 4:39 AM Changeset in webkit [34131] by
-
- 2 edits in trunk/LayoutTests
2008-05-26 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon
Update QtWebkit layout-tests in accordance with bug 18976
The test fast/xsl/xslt-text.xml is on our skipped list due to
missing XSLT support in Qt.
May 25, 2008:
- 7:57 PM ApplicationsGtk edited by
- Update an entry (diff)
- 7:29 PM Changeset in webkit [34130] by
-
- 4 edits in trunk/WebKit/mac
<rdar://problem/5840884> _recursive_resumeNullEventsForAllNetscapePlugins and _pauseNullEvents not defined
Follow-up for r33052. _recursive_resumeNullEventsForAllNetscapePlugins and _recursive_pauseNullEventsForAllNetscapePlugins
need to be declared in WebFramePrivate.h rather than WebFrameInternal.h so they can be used from outside of WebKit.
Reviewed by Darin Adler.
- WebView/WebFrame.mm:
(-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]):
(-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]):
- WebView/WebFrameInternal.h:
- WebView/WebFramePrivate.h:
- 4:55 PM Changeset in webkit [34129] by
-
- 5 edits in trunk/WebCore
<rdar://problem/3582905> elements on separate pages need to be distinct
- 4:23 PM Changeset in webkit [34128] by
-
- 4 edits in trunk/WebCore
2008-05-25 Maciej Stachowiak <mjs@apple.com>
Reviewed by Darin.
- don't repaint nodes that are removed before layout 4.3% speedup on Acid3 test 26
Mitz points out the new flag can also be used to optimize other
cases of needless repaint such as
<https://bugs.webkit.org/show_bug.cgi?id=15129>.
- rendering/RenderContainer.cpp: (WebCore::RenderContainer::removeChildNode): If the child has never had a layout, don't bother to repaint it, since there's nothing to dirty.
- rendering/RenderObject.cpp: (WebCore::RenderObject::RenderObject): Initialize m_everHadLayout to false. (WebCore::RenderObject::setNeedsLayout): Set m_everHadLayout to true if we are being marked as not needing layout.
- rendering/RenderObject.h:
- 1:13 PM Changeset in webkit [34127] by
-
- 3 edits4 adds in trunk
WebCore:
Reviewed by Darin Adler.
- fix https://bugs.webkit.org/show_bug.cgi?id=19086 <rdar://problem/5962254> REGRESSION (r28519-r28535): Caret doesn't paint past the right edge of a block
Test: fast/repaint/caret-outside-block.html
- editing/SelectionController.cpp: (WebCore::repaintRectForCaret): Restored this function which was removed in r28523, but changed it to inflate only the width. (WebCore::SelectionController::caretRepaintRect): Changed back to use repaintRectForCaret(). (WebCore::SelectionController::recomputeCaretRect): Ditto.
LayoutTests:
Reviewed by Darin Adler.
- pixel test for https://bugs.webkit.org/show_bug.cgi?id=19086 <rdar://problem/5962254> REGRESSION (r28519-r28535): Caret doesn't paint past the right edge of a block
- fast/repaint/caret-outside-block.html: Added.
- platform/mac/fast/repaint/caret-outside-block-expected.checksum: Added.
- platform/mac/fast/repaint/caret-outside-block-expected.png: Added.
- platform/mac/fast/repaint/caret-outside-block-expected.txt: Added.
- 7:36 AM Changeset in webkit [34126] by
-
- 2 edits in trunk/WebCore
2008-05-25 Marco Barisione <marco.barisione@collabora.co.uk>
Reviewed by Alp Toker.
http://bugs.webkit.org/show_bug.cgi?id=18940
[CURL] Allow \n as line terminator for headers
The line terminator for message-header fields should be CRLF. However,
it is recommended to recognise as a line terminator also a single LF.
- platform/network/curl/ResourceHandleManager.cpp: (WebCore::headerCallback): Allow headers to be terminated by "\n" and not just by "\r\n".
- 7:14 AM Changeset in webkit [34125] by
-
- 2 edits in trunk/WebKit/gtk
2008-05-25 Alp Toker <alp@nuanti.com>
Reviewed by Niko.
Drop WebView focus when the widget is focused out.
- webkit/webkitwebview.cpp:
- 4:30 AM Changeset in webkit [34124] by
-
- 2 edits in trunk/LayoutTests
Reviewed by Alexey.
Fix the test.
- 4:15 AM Changeset in webkit [34123] by
-
- 4 edits in trunk
2008-05-25 Jan Michael Alonzo <jmalonzo@webkit.org>
Reviewed by Alp Toker.
http://bugs.webkit.org/show_bug.cgi?id=19142
[Gtk] Remove build options --svg-experimental and --cross-document-messaging
- configure.ac
- WebCore/GNUmakefile.am:
- 3:41 AM Changeset in webkit [34122] by
-
- 12 edits in trunk/LayoutTests
RS=Oliver
Fix SVG test results for tiger buildbot.
- 2:55 AM Changeset in webkit [34121] by
-
- 2 edits in trunk/WebKit/gtk
2008-05-25 Sriram Neelakandan <sriram.neelakandan@gmail.com>
Reviewed by Alp Toker.
http://bugs.webkit.org/show_bug.cgi?id=18935
[Gtk] Plugin Load crashes with NP_FULL mode
Fix crash due to uninitialized variable.
- WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::FrameLoaderClient):
- 12:46 AM Changeset in webkit [34120] by
-
- 12 edits in trunk/LayoutTests
Fix leopard results following changes to SVG path dumping.
RS=Alexey
- 12:35 AM Changeset in webkit [34119] by
-
- 2 edits in trunk/JavaScriptCore
Fixing a typo in the previous commit made as a last minute change.
- kjs/regexp_object.cpp:
- 12:15 AM Changeset in webkit [34118] by
-
- 4 edits in trunk/JavaScriptCore
Reviewed by Darin.
Changed regular expression matching result array to be lazily filled, because many callers
only care about it being non-null.
2% improvement on Acid3 test 26.
- kjs/array_instance.cpp: Added a void* member to ArrayStorage for ArrayInstance subclasses to use.
- kjs/array_instance.h: (KJS::ArrayInstance::lazyCreationData): (KJS::ArrayInstance::setLazyCreationData): Added methods to access it from subclasses.
- kjs/regexp_object.cpp: (KJS::RegExpMatchesArray::RegExpMatchesArray): (KJS::RegExpMatchesArray::getOwnPropertySlot): (KJS::RegExpMatchesArray::put): (KJS::RegExpMatchesArray::deleteProperty): (KJS::RegExpMatchesArray::getPropertyNames): (KJS::RegExpMatchesArray::fillArrayInstanceIfNeeded): (KJS::RegExpMatchesArray::~RegExpMatchesArray): (KJS::RegExpObjectImp::arrayOfMatches): RegExpMatchesArray is a subclass of ArrayInstance that isn't filled until accessed for the first time.
- 12:11 AM Changeset in webkit [34117] by
-
- 595 edits in trunk
Reviewed by Eric.
https://bugs.webkit.org/show_bug.cgi?id=18927
Unify path data debug output
Implement unified path data output for Mac svg tests.
May 24, 2008:
- 10:25 PM Changeset in webkit [34116] by
-
- 2 edits in trunk/WebKitTools
2008-05-24 Andreia Gaita <shana@isninja.com>
Reviewed by Alp Toker.
cygwin-downloader.py fixes.
Remove two non-working mirrors. Add a check for missing dependency
packages to avoid bailing out on an inconsistent Cygwin package list.
- CygwinDownloader/cygwin-downloader.py:
- 9:47 PM Changeset in webkit [34115] by
-
- 2 edits in trunk/WebCore
Fixes a huge leak with the Inspector where it was protecting
a large object that was not being unprotected.
<rdar://problem/5961999> Inspector protects a large JavaScript
object and never unprotects it (large leak)
Reviewed by Darin Adler.
- page/InspectorController.cpp:
(WebCore::InspectorController::inspectedPageDestroyed): Call close()
and removed a call to stopDebugging() and moved it to close().
(WebCore::InspectorController::close): Add stopDebugging() and
stopUserInitiatedProfiling(). Removed an ASSERT and added an
if statement before calling JSValueUnprotect. We don't always have
a m_scriptContext and m_scriptObject.
- 9:24 PM Changeset in webkit [34114] by
-
- 1 edit in trunk/JavaScriptCore/docs
Ignore generated bytecode.html file.
- 9:19 PM Changeset in webkit [34113] by
-
- 2 edits in trunk
2008-05-24 Alp Toker <alp@nuanti.com>
GTK+/Win32 build fixes. Link against Windows ICU without using
icu-config since it's not available on that platform.
Link against Ws2_32 when the curl http backend is chosen since we
use select() directly.
- configure.ac:
- 8:45 PM Changeset in webkit [34112] by
-
- 2 edits in trunk/WebCore
2008-05-24 Alp Toker <alp@nuanti.com>
Win32/gcc3 build fix in Pango font backend. UChar needs to be
explicitly cast to gunichar2.
- platform/graphics/gtk/FontGtk.cpp: (WebCore::utf16_to_utf8):
- 6:58 PM Changeset in webkit [34111] by
-
- 2 edits in trunk/JavaScriptCore
2008-05-24 Alp Toker <alp@nuanti.com>
Win32/gcc build fix. Remove MSVC assumption.
- wtf/TCSpinLock.h: (TCMalloc_SlowLock):
- 6:51 PM Changeset in webkit [34110] by
-
- 2 edits in trunk/WebKit/gtk
2008-05-24 Alp Toker <alp@nuanti.com>
https://bugs.webkit.org/show_bug.cgi?id=18825
webkitgtk fails to build from source: "Database Tracker" has not been declared
GTK+ fix for building without database support.
exceededDatabaseQuota() still needs to be present, just a no-op.
- WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::exceededDatabaseQuota):
- 6:01 PM Changeset in webkit [34109] by
-
- 3 edits in trunk/WebCore
Fixes a crash where a new Inspector would get an old
JSInspectedObjectWrapper for a user agent CSSStyleDeclaration.
Since these style objects shared between pages, the wrapper cache
would have a wrapper for the object still. But the wrapper was
for a previous global object and with a disconnected frame. This
fixes the wrapper cache so wrappers are remembered per global object
and the object they are wrapping.
<rdar://problem/5958567> repro crash in WebCore::Frame::keepAlive()
opening inspector window after closing it
Reviewed by Darin Adler.
- bindings/js/JSInspectedObjectWrapper.cpp:
(WebCore::wrappers): Return a GlobalObjectWrapperMap reference.
(WebCore::JSInspectedObjectWrapper::wrap): Find the WrapperMap
by the dynamicGlobalObject then find the wrapper for unwrappedObject.
(WebCore::JSInspectedObjectWrapper::JSInspectedObjectWrapper): Changes
how the wrapper is added to the wrapper cache.
(WebCore::JSInspectedObjectWrapper::~JSInspectedObjectWrapper): Changes
how the wrapper is removed from the wrapper cache.
- bindings/js/JSQuarantinedObjectWrapper.h:
(WebCore::JSQuarantinedObjectWrapper:unwrappedGlobalObject): Added.
- 2:12 PM Changeset in webkit [34108] by
-
- 8 edits2 adds in trunk/WebCore
Reviewed by Maciej.
Optimize Node::textContent() to avoid O(n2) string appending behavior.
1.6% speedup at Acid3 test 26.
- WebCore.xcodeproj/project.pbxproj:
- GNUmakefile.am:
- WebCore.pro:
- WebCoreSources.bkl:
- WebCore.vcproj/WebCore.vcproj:
- platform/text/StringBuilder.cpp: Added. (WebCore::StringBuilder::append): (WebCore::StringBuilder::toString):
- platform/text/StringBuilder.h: Added. (WebCore::StringBuilder::StringBuilder): (WebCore::StringBuilder::isNull): Added a simple class to efficiently build a string by appending. Potentially, it can be extended to be more like java.lang.StringBuilder, but we don't need that much flexibility now.
- dom/Node.cpp: (WebCore::Node::appendTextContent): (WebCore::Node::textContent):
- dom/Node.h: Changed to use StringBuilder.
- 6:26 AM Changeset in webkit [34107] by
-
- 8 edits4 deletes in trunk/WebCore
2008-05-24 Julien Chaffraix <jchaffraix@webkit.org>
Reviewed by Eric.
Bug 9191: JS*ElementWrapperFactory should be autogenerated
https://bugs.webkit.org/show_bug.cgi?id=9191
This is a first pass for generation of JS*ElementWrapperFactory, in the long term we should move the make_names.pl
intelligence to the *.in files.
- Add a new parameter to make_names.pl --wrapperFactory which works like --wrapper but generates the JS*ElementWrapperFactory files.
- Removed JS*ElementWrapperFactory files in WebCore/bindings/js, replaced by the generated ones.
- Updated the build systems to account for the previous changes.
- DerivedSources.make:
- GNUmakefile.am:
- WebCore.pro:
- WebCore.vcproj/WebCore.vcproj:
- WebCore.xcodeproj/project.pbxproj:
- WebCoreSources.bkl:
- bindings/js/JSHTMLElementWrapperFactory.cpp: Removed.
- bindings/js/JSHTMLElementWrapperFactory.h: Removed.
- bindings/js/JSSVGElementWrapperFactory.cpp: Removed.
- bindings/js/JSSVGElementWrapperFactory.h: Removed.
- dom/make_names.pl:
- 5:48 AM Changeset in webkit [34106] by
-
- 1 edit in trunk/JavaScriptCore/ChangeLog
Fixed ChangeLog.
- 5:43 AM Changeset in webkit [34105] by
-
- 5 edits in trunk
Rubber-stamped, tweaked and landed by Alexey.
Build fix for gcc 4.3. Added missing standard includes.
May 23, 2008:
- 11:34 PM Changeset in webkit [34104] by
-
- 2 edits in trunk/WebCore
Fixes a bug where a timer would keep firing after the Inspector
was closed. It turns out this timer wasn't needed anymore now
that we can add an event listener to the inspected page and have
it get called in the Inspector's context.
https://bugs.webkit.org/show_bug.cgi?id=18577
Reviewed by Mark Rowe.
- page/inspector/ElementsPanel.js:
- 9:18 PM Changeset in webkit [34103] by
-
- 3 edits2 copies in tags/Safari-6526.8
Merge r34097.
- 8:52 PM Changeset in webkit [34102] by
-
- 3 edits in trunk/WebCore
2008-05-23 Anthony Ricaud <rik24d@gmail.com>
Changes the largerResourcesButton tooltip to toggle.
Reviewed by Tim Hatcher.
- WebCore/English.lproj/localizedStrings.js: New string and clean an double string "Dock to main window."
- WebCore/page/inspector/ResourcesPanel.js: Toggle the tooltip and change the default tooltip
- 7:47 PM Changeset in webkit [34101] by
-
- 4 edits in trunk
Versioning.
- 7:44 PM Changeset in webkit [34100] by
-
- 1 copy in tags/Safari-6526.8
New tag.
- 6:33 PM Changeset in webkit [34099] by
-
- 6 edits in trunk/WebKitTools
2008-05-24 Jan Michael Alonzo <jmalonzo@webkit.org>
Reviewed by Darin Adler.
Remove useQmake usage. QMake build doesn't support Gtk port
anymore.
Also fix 2 occurences of "Web Kit". Should be WebKit.
- Scripts/build-webkit:
- Scripts/run-javascriptcore-tests:
- Scripts/run-launcher:
- Scripts/run-webkit-tests:
- Scripts/webkitdirs.pm:
- 5:56 PM Changeset in webkit [34098] by
-
- 2 edits in trunk/LayoutTests/editing/execCommand
Check Paste, instead of checking Copy twice.
- 5:29 PM Changeset in webkit [34097] by
-
- 3 edits2 adds in trunk
WebCore:
2008-05-23 Justin Garcia <justin.garcia@apple.com>
Reviewed by Darin.
<rdar://problem/5939887> REGRESSION: With no selection, copy does not fire oncopy handler (affects CIFilterBrowser widget)
Execute cut, copy and paste if they are invoked explicitly, via execCommand or -[WebView copy:], even
if they are disabled. This will fire oncopy, oncut and onpaste, but won't perform any other work, like
writing to the pasteboard during cut/copy or deleting the selection during cut/paste. This matches FF3,
which actually goes further and fires oncopy on any Command-C.
- editing/EditorCommand.cpp: (WebCore::CommandEntry::): (WebCore::Editor::Command::execute):
LayoutTests:
2008-05-23 Justin Garcia <justin.garcia@apple.com>
Reviewed by Darin.
<rdar://problem/5939887> REGRESSION: With no selection, copy does not fire oncopy handler (affects CIFilterBrowser widget)
- editing/execCommand/5939887-expected.txt: Added.
- editing/execCommand/5939887.html: Added.
- 4:51 PM Changeset in webkit [34096] by
-
- 4 edits1 add in trunk/WebCore
Adds a percentage toggle button the profile view status bar that
changes the time columns between absolute and percents.
https://bugs.webkit.org/show_bug.cgi?id=19224
Reviewed by Kevin McCullough.
- English.lproj/localizedStrings.js: New strings.
- page/inspector/Images/percentButtons.png: Added.
- page/inspector/ProfileView.js: Make the button and add it to the
status bar. Make clicking toggle the showAsPercent* properties.
- page/inspector/inspector.css: New styles.
- 4:44 PM Changeset in webkit [34095] by
-
- 5 edits in trunk/JavaScriptCore
2008-05-23 Anders Carlsson <andersca@apple.com>
Reviewed by Geoff.
<rdar://problem/5959886> REGRESSION: Assertion failure in JSImmediate::toString when loading GMail (19217)
Change List to store a JSValue* pointer + an offset instead of a JSValue pointer to protect against the case where
a register file changes while a list object points to its buffer.
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- kjs/JSActivation.cpp: (KJS::JSActivation::createArgumentsObject):
- kjs/list.cpp: (KJS::List::getSlice):
- kjs/list.h: (KJS::List::List): (KJS::List::at): (KJS::List::append): (KJS::List::begin): (KJS::List::end): (KJS::List::buffer):
- 4:41 PM Changeset in webkit [34094] by
-
- 3 edits in trunk/WebKitSite
2008-05-23 William Siegrist <wsiegrist@apple.com>
Reviewed by Mark Rowe
Rename duplicated "notice" id to "terms".
- css/main.css:
- nav.inc:
- 4:37 PM Changeset in webkit [34093] by
-
- 3 edits in trunk/LayoutTests
2008-05-23 Sam Weinig <sam@webkit.org>
Reviewed by Mark Rowe.
LayoutTests that send an OPTIONS request don't work on Tiger or Window due
to a bug in Apache 1.3
- platform/mac-tiger/Skipped:
- platform/win/Skipped:
- 4:07 PM Changeset in webkit [34092] by
-
- 3 edits in trunk/JavaScriptCore
2008-05-23 Kevin McCullough <kmccullough@apple.com>
Reviewed by Sam.
<rdar://problem/5960012> JSProfiler: Stack overflow if recursion is
too deep.
-Use a simple depth limit to restrict too deep of recursion.
- profiler/Profile.cpp: (KJS::Profile::willExecute): (KJS::Profile::didExecute):
- profiler/Profile.h:
- 2:30 PM Changeset in webkit [34091] by
-
- 1 edit in trunk/JavaScriptCore/ChangeLog
Removed terrible lie from ChangeLog.
- 2:28 PM Changeset in webkit [34090] by
-
- 5 edits in trunk/JavaScriptCore
2008-05-23 Geoffrey Garen <ggaren@apple.com>
Rolling back in r34085, with performance resolved.
Apparently, passing the eval function to callEval gave GCC a hernia.
Reviewed by Darin Adler, Kevin McCullough, and Oliver Hunt.
Fixed <rdar://problem/5959447> Crashes and incorrect reporting in the
JavaScript profiler
- VM/Machine.cpp: (KJS::callEval): Made this profiler hooks slightly faster by passing in the eval function.
(KJS::Machine::unwindCallFrame): Fixed incorrect reporting / a crash
when unwinding from inside eval and/or program code: detect the
difference, and do the right thing. Also, be sure to notify the profiler
*before* deref'ing the scope chain, since the profiler uses the scope chain.
(KJS::Machine::execute): Fixed incorrect reporting / crash when calling
a JS function re-entrently: Machine::execute(FunctionBodyNode*...)
should not invoke the didExecute hook, because op_ret already does that.
Also, use the new function's ExecState when calling out to the profiler.
(Not important now, but could have become a subtle bug later.)
(KJS::Machine::privateExecute): Fixed a hard to reproduce crash when
profiling JS functions: notify the profiler *before* deref'ing the scope
chain, since the profiler uses the scope chain.
- kjs/object.cpp: (KJS::JSObject::call): Removed these hooks, because they are now unnecessary.
- profiler/Profile.cpp: Added a comment to explain a subtlety that only Kevin and I understood previously. (Now, the whole world can understand!)
- profiler/Profiler.cpp: (KJS::shouldExcludeFunction): Don't exclude .call and .apply. That was a hack to fix bugs that no longer exist.
Finally, sped things up a little bit by changing the "Is the profiler
running?" check into an ASSERT, since we only call into the profiler
when it's running:
(KJS::Profiler::willExecute):
(KJS::Profiler::didExecute):
- 1:49 PM Changeset in webkit [34089] by
-
- 3 edits2 adds in trunk
2008-05-23 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
- fixed <rdar://problem/5957662> REGRESSION(r33943-r33980): Can't send email , attach file or save as draft from hotmail.com
SunSpider reports no change.
This is a reworking of r34073, which I rolled out because it caused
lots of crashes.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::CodeGenerator): Use removeDirect to nix old properties whose names collide with new functions. (Don't use putWithAttributes because that tries to write to the register file, which hasn't grown to fit this program yet.)
LayoutTests:
2008-05-23 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- test case <rdar://problem/5957662> REGRESSION(r33943-r33980): Can't send email , attach file or save as draft from hotmail.com
- fast/js/function-redefinition-expected.txt: Added.
- fast/js/function-redefinition.html: Added.
- 12:42 PM Changeset in webkit [34088] by
-
- 6 edits in trunk/JavaScriptCore
2008-05-23 Darin Adler <Darin Adler>
Reviewed by Mark Rowe.
As allocateNumber is used via jsNumberCell outside of JavaScriptCore,
we need to provide a non-inlined version of it to avoid creating a
weak external symbol.
- JavaScriptCore.exp:
- kjs/AllInOneFile.cpp:
- kjs/collector.cpp: (KJS::Collector::allocate): (KJS::Collector::allocateNumber):
- kjs/collector.h: (KJS::Collector::allocate): (KJS::Collector::inlineAllocateNumber):
- kjs/value.h: (KJS::NumberImp::operator new):
- 12:34 PM Changeset in webkit [34087] by
-
- 3 edits2 deletes in trunk
2008-05-23 Geoffrey Garen <ggaren@apple.com>
Rolled out r34073 because it caused lots of layout test crashes.
LayoutTests:
2008-05-23 Geoffrey Garen <ggaren@apple.com>
Rolled out r34073 because it caused lots of layout test crashes.
- 12:12 PM Changeset in webkit [34086] by
-
- 5 edits in trunk/JavaScriptCore
2008-05-23 Geoffrey Garen <ggaren@apple.com>
Rolled out r34085 because it measured as a 7.6% performance regression.
- 10:50 AM Changeset in webkit [34085] by
-
- 5 edits in trunk/JavaScriptCore
2008-05-23 Geoffrey Garen <ggaren@apple.com>
Reviewed by Darin Adler, Kevin McCullough, and Oliver Hunt.
Fixed <rdar://problem/5959447> Crashes and incorrect reporting in the
JavaScript profiler
- VM/Machine.cpp: (KJS::callEval): Made this profiler hooks slightly faster by passing in the eval function.
(KJS::Machine::unwindCallFrame): Fixed incorrect reporting / a crash
when unwinding from inside eval and/or program code: detect the
difference, and do the right thing. Also, be sure to notify the profiler
*before* deref'ing the scope chain, since the profiler uses the scope chain.
(KJS::Machine::execute): Fixed incorrect reporting / crash when calling
a JS function re-entrently: Machine::execute(FunctionBodyNode*...)
should not invoke the didExecute hook, because op_ret already does that.
Also, use the new function's ExecState when calling out to the profiler.
(Not important now, but could have become a subtle bug later.)
(KJS::Machine::privateExecute): Fixed a hard to reproduce crash when
profiling JS functions: notify the profiler *before* deref'ing the scope
chain, since the profiler uses the scope chain.
- kjs/object.cpp: (KJS::JSObject::call): Removed these hooks, because they are now unnecessary.
- profiler/Profile.cpp: Added a comment to explain a subtlety that only Kevin and I understood previously. (Now, the whole world can understand!)
- profiler/Profiler.cpp: (KJS::shouldExcludeFunction): Don't exclude .call and .apply. That was a hack to fix bugs that no longer exist.
Finally, sped things up a little bit by changing the "Is the profiler
running?" check into an ASSERT, since we only call into the profiler
when it's running:
(KJS::Profiler::willExecute):
(KJS::Profiler::didExecute):
- 10:48 AM Changeset in webkit [34084] by
-
- 4 edits in trunk
2008-05-23 Alp Toker <alp@nuanti.com>
GTK+ fixes for building without database support.
- 10:41 AM Changeset in webkit [34083] by
-
- 2 edits in trunk/WebCore
Fixes a bug where excluding nodes from the profile could
show an empty parent node.
<rdar://problem/5959573> Excluding nodes from the profile could show
an empty parent node
Reviewed by Kevin McCullough.
- page/inspector/ProfileView.js: Only say we have children if
all of our children nodes are visible.
- 10:19 AM Changeset in webkit [34082] by
-
- 2 edits in trunk/WebCore
2008-05-23 Anders Carlsson <andersca@apple.com>
Reviewed by Adam.
Add IconFetcher to project.
- WebCore.vcproj/WebCore.vcproj:
- 10:15 AM Changeset in webkit [34081] by
-
- 2 edits in trunk/WebCore
Fixes a bug where the Web Insepctor would jump back to
Elements each time it is opened instead of staying at the
last selected panel.
<rdar://problem/5959475> Inspector jumps to the Elements panel
each time it is opened, instead of staying at the previous panel
Reviewed by Adam Roben.
- page/InspectorController.cpp:
(WebCore::InspectorController::setWindowVisible): Reset
m_showAfterVisible to CurrentPanel, so the next time setWindowVisible
is called it will use CurrentPanel unless showPanel was called again.
- 10:03 AM Changeset in webkit [34080] by
-
- 2 edits in trunk/JavaScriptCore
Windows build fix
- JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Add the profiler directory to the include path.
- 9:54 AM Changeset in webkit [34079] by
-
- 2 edits in trunk/WebCore
<rdar://problem/5933759> REGRESSION: Frames don't appear as AX children of the top level web area
- 9:38 AM Changeset in webkit [34078] by
-
- 6 edits3 adds in trunk/WebKit/win
2008-05-22 Anders Carlsson <andersca@apple.com>
Reviewed by Adam.
Add IWebIconFetcher interface and implementation.
- Interfaces/IWebFramePrivate.idl:
- Interfaces/IWebIconFetcher.idl: Added.
- Interfaces/WebKit.idl:
- WebFrame.cpp:
- WebFrame.h:
- WebIconFetcher.cpp: Added.
- WebIconFetcher.h: Added.
- WebKit.vcproj/WebKit.vcproj:
- 8:23 AM Changeset in webkit [34077] by
-
- 2 edits in trunk/WebKit/qt
2008-05-21 Siraj Razick <siraj.razick@collabora.co.uk>
Reviewed by Simon.
Add <param name="classid"/> support for application/x-qt-object plugins
- 7:24 AM Changeset in webkit [34076] by
-
- 3 edits in trunk/WebCore
2008-05-23 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Simon.
For Qt port, support painting to native Windows HDC.
- platform/graphics/GraphicsContext.h:
- platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::getWindowsContext): (WebCore::GraphicsContext::releaseWindowsContext):
- 7:23 AM Changeset in webkit [34075] by
-
- 4 edits in trunk/JavaScriptCore
SQUIRRELFISH: JavaScript error messages are missing informative text
Reviewed by Anders
Partial fix.
Tidy up error messages, makes a couple of them provide slightly more info.
Inexplicably leads to a 1% SunSpider Progression.
- 4:37 AM Changeset in webkit [34074] by
-
- 2 edits in trunk/JavaScriptCore
Fix call stack reported by profiler when entering event handlers.
Reviewed by Tim H
JSObject::call was arbitrarily notifying the profiler when it was
called, even if it was JS code, which notifies the profile on entry
in any case.
- 3:43 AM Changeset in webkit [34073] by
-
- 3 edits2 adds in trunk
2008-05-23 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- fixed <rdar://problem/5957662> REGRESSION(r33943-r33980): Can't send email , attach file or save as draft from hotmail.com
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::CodeGenerator): Delete any existing properties before creating the function (this should really be done at execution time not codegen time).
LayoutTests:
2008-05-23 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- test case <rdar://problem/5957662> REGRESSION(r33943-r33980): Can't send email , attach file or save as draft from hotmail.com
- fast/js/function-redefinition-expected.txt: Added.
- fast/js/function-redefinition.html: Added.
- 3:12 AM Changeset in webkit [34072] by
-
- 5 edits in trunk/WebCore
Fixes a bug where the Inspector could have 0ms timers firing
even after it is closed.
https://bugs.webkit.org/show_bug.cgi?id=18577
Reviewed by Oliver Hunt.
- page/inspector/DatabasesPanel.js: Removes setTimeouts that call
the same function with a 0ms delay. These we not doing any good anyway,
so they weren't needed and just caused problems.
- page/inspector/ElementsPanel.js: Ditto.
- page/inspector/ProfilesPanel.js: Ditto.
- page/inspector/ResourcesPanel.js: Ditto.
- 2:54 AM Changeset in webkit [34071] by
-
- 2 edits in trunk/JavaScriptCore
+2008-05-16 Alp Toker <alp@nuanti.com>
Build fix for gcc 3. Default constructor required in ExecState,
used by OldInterpreterExecState.
- kjs/ExecState.h: (KJS::ExecState::ExecState):
- 2:41 AM Changeset in webkit [34070] by
-
- 4 edits in trunk/WebCore
Make the Inspector correctly populate the profiles when
closed and re-opened.
Reviewed by Adam Roben.
- page/InspectorController.cpp:
(WebCore::InspectorController::populateScriptObjects): Call populateInterface
in inspector.js.
- page/inspector/ProfilesPanel.js:
(WebInspector.ProfilesPanel.prototype.populateInterface): If visible,
call _populateProfiles. Else just set this._shouldPopulateProfiles to true.
(WebInspector.ProfilesPanel.prototype.reset): Don't call _populateProfiles.
Just set this._shouldPopulateProfiles to true.
(WebInspector.ProfilesPanel.prototype._populateProfiles): Delete
this._shouldPopulateProfiles.
- page/inspector/inspector.js:
(WebInspector.populateInterface): Added. Call populateInterface on all the
panels if they implement it.
- 2:38 AM Changeset in webkit [34069] by
-
- 5 edits in trunk
Fix <rdar://problem/5954997> global-recursion-on-full-stack.html crashes under guardmalloc.
Growing the register file with uncheckedGrow from within Machine::execute is not safe as the
register file may be too close to its maximum size to grow successfully. By using grow,
checking the result and throwing a stack overflow error we can avoid crashing.
Reviewed by Oliver Hunt.
- VM/Machine.cpp:
(KJS::Machine::execute):
- VM/RegisterFile.h: Remove the now-unused uncheckedGrow.
- 2:32 AM Changeset in webkit [34068] by
-
- 6 edits in trunk/WebCore
2008-05-23 Kevin McCullough <kmccullough@apple.com>
RS = Adam.
Editorial changes
- manual-tests/inspector/profiler-test-apply.html:
- manual-tests/inspector/profiler-test-document-dot-write.html:
- manual-tests/inspector/profiler-test-execution-context-and-eval-on-same-line.html:
- manual-tests/inspector/profiler-test-one-execution-context.html:
- manual-tests/inspector/profiler-test-two-execution-contexts.html:
- 2:07 AM Changeset in webkit [34067] by
-
- 4 edits in trunk/JavaScriptCore
Remove JAVASCRIPT_PROFILER define
RS=Kevin McCullough
- 2:01 AM Changeset in webkit [34066] by
-
- 2 edits in trunk/WebCore
Fixes the bug where the profile was not added when finished.
<rdar://problem/5958851> Stop Profiling from the Develop menu does
not add the Profile to the Inspector
Reviewed by Adam Roben.
- page/InspectorController.cpp:
(WebCore::InspectorController::stopUserInitiatedProfiling): Call
addProfile with the result of stopProfiling.
- 1:56 AM Changeset in webkit [34065] by
-
- 5 edits in trunk/JavaScriptCore
<rdar://problem/5951561> Turn on JavaScript Profiler
Reviewed by Kevin McCullough
Flipped the switch on the profiler, rearranged how we
signal the the profiler is active so that calls aren't
needed in the general case.
Also fixed the entry point for Machine::execute(FunctionBodyNode..)
to correctly indicate function exit.
Results in a 0.7-1.0% regression in SunSpider :-(
- 1:35 AM Changeset in webkit [34064] by
-
- 2 edits in trunk/WebCore
Tweak the Web Insector toolbar look to be smaller when attached to
the inspected page.
Reviewed by Adam Roben.
- page/inspector/inspector.css:
- 1:03 AM Changeset in webkit [34063] by
-
- 2 edits in trunk/WebKit/mac
Fix attaching and detaching the Web Inspector. This change removes
the clunky animation that never looked right and was causing issues
where the inspected WebView would get into a no useable state.
<rdar://problem/5958812> Attaching and Detaching the Web Inspector
can cause the inspected WebVIew to be unusable
Reviewed by Adam Roben.
- WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController close]): Removes animation code.
Sets the frame directly and does a displayIfNeeded to prevent
showing the Inspector in the page and in the Inspector window.
(-[WebInspectorWindowController showWindow:]): Removes animation code.
Sets the frame directly.
(-[WebInspectorWindowController attach]): Simplified.
(-[WebInspectorWindowController detach]): Ditto.
- 12:58 AM Changeset in webkit [34062] by
-
- 4 edits in trunk
Fix the Qt build by adding profiler/ to the include path and providing
an empty stub for AXObjectCache::handleAriaRoleChanged to build without
accessibility.
- 12:05 AM Changeset in webkit [34061] by
-
- 3 edits in trunk/WebCore
2008-05-23 Alice Liu <alice.liu@apple.com>
Reviewed by Mark Rowe.
Remove call to function whose body was commented out. Returning the
children for a menu button by the normal calculation works just as well.
- page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::addChildren):
- page/AccessibilityRenderObject.h:
May 22, 2008:
- 11:57 PM Changeset in webkit [34060] by
-
- 4 edits in trunk/JavaScriptCore
2008-05-22 Kevin McCullough <kmccullough@apple.com>
Reviewed by Adam.
Fix a bug in the profiler where time in the current function is given to
(idle).
- profiler/Profile.cpp: (KJS::Profile::didExecute): Set the start time and then call didExecute to calculate the time spent in this function.
- profiler/ProfileNode.cpp: Remove confusing calculations that are no longer necessary. (KJS::ProfileNode::insertNode):
- profiler/ProfileNode.h: Expose access to the start time to allow the simpler time calculations above. (KJS::ProfileNode::startTime): (KJS::ProfileNode::setStartTime):
- 11:57 PM Changeset in webkit [34059] by
-
- 3 edits in trunk/WebCore
Fixes the bug where resource would show up multiple times in the
Inspector. This happened when a resource was used multiple times or
when the preloader was scanning ahead to fetch resources.
<rdar://problem/5689373> Cached resources re-appear in Web Inspector
for each access (18223)
Reviewed by Adam Roben.
- page/InspectorController.cpp:
(WebCore::InspectorController::addResource): Add the URL to m_knownResources.
(WebCore::InspectorController::removeResource): Remove the URL from m_knownResources
(WebCore::InspectorController::didLoadResourceFromMemoryCache): If the URL
is in m_knownResources, then early return.
- page/InspectorController.h: Added m_knownResources.
- 11:44 PM Changeset in webkit [34058] by
-
- 8 edits in trunk/WebCore
2008-05-22 Alice Liu <alice.liu@apple.com>
Reviewed by Adele, Dan Bernstein.
Fixed <rdar://problem/5943104> Need to implement ARIA role="menu" and related roles
<rdar://problem/5943132> Need to implement ARIA role="menuitem"
<rdar://problem/5943173> Need to implement ARIA role="menubar"
These changes added a handler for determining the ARIA role when the
attribute changes. Before we were querying for the attribute over and
over every time we queried for the role.
- dom/Element.cpp: (WebCore::Element::attributeChanged):
- page/AXObjectCache.cpp: (WebCore::AXObjectCache::handleAriaRoleChanged):
- page/AXObjectCache.h:
The rest of these changes implement menu, menuitem, and menubar. the last 2 of those
have to, for now, be represented as a Group and MenuButton instead, because AppKit
won't recognize menubar and menubaritems within apps.
- page/AccessibilityObject.h: (WebCore::AccessibilityObject::isMenuRelated): (WebCore::AccessibilityObject::isMenu): (WebCore::AccessibilityObject::isMenuBar): (WebCore::AccessibilityObject::isMenuButton): (WebCore::AccessibilityObject::isMenuItem):
- page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::AccessibilityRenderObject): (WebCore::AccessibilityRenderObject::parentObject): (WebCore::AccessibilityRenderObject::isMenuRelated): (WebCore::AccessibilityRenderObject::isMenu): (WebCore::AccessibilityRenderObject::isMenuBar): (WebCore::AccessibilityRenderObject::isMenuButton): (WebCore::AccessibilityRenderObject::isMenuItem): (WebCore::siblingWithAriaRole): (WebCore::AccessibilityRenderObject::menuElementForMenuButton): (WebCore::AccessibilityRenderObject::menuForMenuButton): (WebCore::AccessibilityRenderObject::menuItemElementForMenu): (WebCore::AccessibilityRenderObject::menuButtonForMenu): (WebCore::AccessibilityRenderObject::title): (WebCore::AccessibilityRenderObject::accessibilityShouldUseUniqueId): (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): (WebCore::RoleEntry::): (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute): (WebCore::AccessibilityRenderObject::setAriaRole): (WebCore::AccessibilityRenderObject::ariaRoleAttribute): (WebCore::AccessibilityRenderObject::addChildren): (WebCore::AccessibilityRenderObject::ariaMenuButtonChildren):
- page/AccessibilityRenderObject.h:
- page/mac/AccessibilityObjectWrapper.mm: (-[AccessibilityObjectWrapper accessibilityActionNames]): (-[AccessibilityObjectWrapper accessibilityAttributeNames]): (-[AccessibilityObjectWrapper roleDescription]): (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
- 11:43 PM Changeset in webkit [34057] by
-
- 2 edits in trunk/WebCore
Make top-level resources show their full URLs again instead of just "/"
Reviewed by Tim Hatcher.
- page/inspector/Resource.js: (WebInspector.Resource.prototype.displayName): If the title has gotten down to just "/", which will happen for, e.g., http://webkit.org/, just show the entire URL.
- 11:12 PM Changeset in webkit [34056] by
-
- 7 edits in trunk/WebCore
Shorten URLs shown in the Web Inspector to the file name. This makes
finding files in the Console or the Scripts panel easier.
Reviewed by Adam Roben.
- page/inspector/Console.js:
(WebInspector.ConsoleMessage.prototype.get shortURL): Removed dead code.
(WebInspector.ConsoleMessage.prototype.toMessageElement): Call WebInspector.displayNameForURL
for the URL before making the link element.
- page/inspector/ProfileView.js:
(WebInspector.ProfileDataGridNode.prototype.createCell): Use WebInspector.displayNameForURL.
- page/inspector/Resource.js:
(WebInspector.Resource.prototype.get displayName): Use trimURL to
trim the URL with the main resource's domain.
- page/inspector/ScriptsPanel.js:
(WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): Use WebInspector.displayNameForURL.
- page/inspector/StylesSidebarPane.js:
(WebInspector.StylePropertiesSection): Ditto.
- page/inspector/inspector.js:
(WebInspector.displayNameForURL): Added.
(WebInspector.resourceForURL): Check for a direct match in resourceURLMap first.
- 11:09 PM Changeset in webkit [34055] by
-
- 4 edits1 add in trunk/WebCore
Fix Bug 19204: Inspector should highlight source lines when following links to them
Reviewed by Tim Hatcher.
Test: manual-tests/inspector/highlight-source-line.html
- manual-tests/inspector/highlight-source-line.html: Added.
- page/inspector/ResourcesPanel.js: (WebInspector.ResourcesPanel.prototype.showResource): Call highlightLine on the view if that function exists.
- page/inspector/SourceFrame.js: (WebInspector.SourceFrame.prototype.highlightLine): Added. Adds the webkit-highlighted-line class to the relevant line, then removes it after a short delay. (WebInspector.SourceFrame.prototype._loaded): Added styles for the highlighted line(s).
- page/inspector/SourceView.js: (WebInspector.SourceView.prototype.highlightLine): Added. Calls through to the SourceFrame.
- 11:09 PM Changeset in webkit [34054] by
-
- 2 edits in trunk/JavaScriptCore
Show "(Function object)" instead of "(JSInpectorCallbackWrapper object)" in profiles
Reviewed by Kevin McCullough.
- profiler/Profiler.cpp: (KJS::createCallIdentifier): Use JSObject::className instead of getting the class name from the ClassInfo directly. JSObject subclasses can override className to provide a custom class name, and it seems like we should honor that.
- 11:08 PM Changeset in webkit [34053] by
-
- 20 edits in trunk/WebCore
Reviewed by Eric.
https://bugs.webkit.org/show_bug.cgi?id=12053
SVGPathSeg*(Abs|Rel) classses should be combined to reduce code size
Reduce code size through shared base classes.
- 10:49 PM Changeset in webkit [34052] by
-
- 3 edits in trunk/WebCore
2008-05-22 Alp Toker <alp@nuanti.com>
GTK+/DirectFB build fix attempt.
- plugins/PluginDatabase.cpp: (WebCore::PluginDatabase::isPreferredPluginDirectory):
- plugins/gtk/PluginDatabaseGtk.cpp: (WebCore::PluginDatabase::isPreferredPluginDirectory):
- 10:15 PM Changeset in webkit [34051] by
-
- 9 edits4 adds in trunk
Adds Focus, Exclude and Restore buttons to the Profile view
Status bar. Also adds a Record button to create new profiles.
<rdar://problem/5950867> JSProfiler: Allow the profiler to "Focus" a profile node.
<rdar://problem/5951529> JSProfiler: Allow the profiler to "Exclude" a profile node.
Reviewed by Adam Roben.
- English.lproj/localizedStrings.js: Added new strings.
- page/JavaScriptProfile.cpp:
(WebCore::restoreAll): Call Profile::restoreAll.
(WebCore::ProfileClass): Added restoreAll to the static functions.
- page/inspector/Images/excludeButtons.png: Added.
- page/inspector/Images/focusButtons.png: Added.
- page/inspector/Images/recordButtons.png: Added.
- page/inspector/Images/reloadButtons.png: Added.
- page/inspector/ProfileView.js:
(WebInspector.ProfileView): Create the buttons elements.
(WebInspector.ProfileView.prototype.get statusBarItems): Return the three
status bar buttons.
(WebInspector.ProfileView.prototype.refresh): Only create ProfileDataGridNodes
for ProfileNodes that are visible.
(WebInspector.ProfileView.prototype.refreshShowAsPercents): Just call
refresh on the children, now that they have access to the ProfileView's properties.
(WebInspector.ProfileView.prototype._focusClicked): Call focus
on the profile, refresh the ProfileView and show the reset button.
(WebInspector.ProfileView.prototype._excludeClicked): Call exclude
on the profile, refresh the ProfileView and show the reset button.
(WebInspector.ProfileView.prototype._resetClicked): Call restoreAll
on the profile, refresh the ProfileView and hide the reset button.
(WebInspector.ProfileView.prototype._dataGridNodeSelected): Enable the
focus and exclude buttons.
(WebInspector.ProfileView.prototype._dataGridNodeDeselected): Disable the
focus and exclude buttons.
(WebInspector.ProfileDataGridNode): Take a ProfileView, and remove the
showPercentAs* arguments.
- page/inspector/ProfilesPanel.js: Add a record status bar button and
th ability to have per-view status bar buttons.
- page/inspector/inspector.css: New styles.
- 10:10 PM Changeset in webkit [34050] by
-
- 2 edits in trunk/WebCore
<rdar://problem/5956612> ibtool crashes during build
SCDynamicStoreCreate will return null if it cannot create a dynamic store object. We need
to check for failure rather than continuing with a null store as this results in us
passing a null CFRunLoopSourceRef to CFRunLoopAddSource, which promptly crashes.
Reviewed by Tim Hatcher.
- platform/network/mac/NetworkStateNotifierMac.cpp:
(WebCore::NetworkStateNotifier::NetworkStateNotifier): Null check SCDynamicStoreCreate and
SCDynamicStoreCreateRunLoopSource as it is possible for them to fail.
- 9:39 PM Changeset in webkit [34049] by
-
- 2 edits in trunk/JavaScriptCore
2008-05-22 Alp Toker <alp@nuanti.com>
GTK+ build fix. Add JavaScriptCore/profiler to include path.
- GNUmakefile.am:
- 9:32 PM Changeset in webkit [34048] by
-
- 2 edits in trunk/JavaScriptCore
Implement sub-millisecond profiling on Windows
Reviewed by Kevin McCullough.
- profiler/ProfileNode.cpp: (KJS::getCount): Added. On Windows, we use QueryPerformanceCounter. On other platforms, we use getCurrentUTCTimeWithMicroseconds. (KJS::ProfileNode::endAndRecordCall): Use getCount instead of getCurrentUTCTimeWithMicroseconds. (KJS::ProfileNode::startTimer): Ditto.
- 9:32 PM Changeset in webkit [34047] by
-
- 3 edits1 add in trunk
Fix a profiler assertion when calling a NodeList as a function
Fix a profiler assertion when calling a NodeList as a function
Reviewed by Kevin McCullough.
- profiler/Profiler.cpp: (KJS::createCallIdentifier): Don't assert when a non-function object is called as a function. Instead, build up a CallIdentifier using the object's class name.
WebCore:
Add a test for calling a NodeList as a function while profiling
Reviewed by Kevin McCullough.
- manual-tests/inspector/profiler-test-call-nodelist-as-function.html: Added.
- 8:49 PM Changeset in webkit [34046] by
-
- 1 edit6 adds in trunk/WebCore
2008-05-22 Kevin McCullough <kmccullough@apple.com>
Rubber stamped by Adam.
-Added new profiler tests.
- manual-tests/inspector/profiler-test-calling-the-function-that-started-the-profiler-from-another-scope.html: Added.
- manual-tests/inspector/profiler-test-constructor.html: Added.
- manual-tests/inspector/profiler-test-document-dot-write.html: Added.
- manual-tests/inspector/profiler-test-simple-no-level-change.html: Added.
- manual-tests/inspector/profiler-test-throw-exception-from-eval.html: Added.
- manual-tests/inspector/profiler-test-window-dot-eval.html: Added.
- 8:46 PM Changeset in webkit [34045] by
-
- 4 edits in trunk/WebCore
2008-05-22 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/5951529> JSProfiler: Allow the profiler to "Exclude" a
profile node.
-Expose the 'exclude' function to the WebInspector.
-Also fix a bug with 'focus' and expose whether or not a node is visible
- page/JavaScriptProfile.cpp: Renamed profileClass to have a capital P. (WebCore::getTitleCallback): (WebCore::getHeadCallback): (WebCore::focus): Now correctly compares against a ProfileNodeClass instead of ProfileClass. (WebCore::exclude): Expose 'exclude' function to the WebInspector. (WebCore::ProfileClass): (WebCore::toJS):
- page/JavaScriptProfileNode.cpp: Declare the ProfileNodeClass in the header so that ProfileClass can use it. (WebCore::getVisible): Expose a node's visiblity to the WebInspector. (WebCore::ProfileNodeClass):
- page/JavaScriptProfileNode.h:
- 7:39 PM Changeset in webkit [34044] by
-
- 4 edits in trunk/WebKit/win
Add functions to IWebInspector to start/stop profiling/debugging
<rdar://5956403>
Reviewed by Jon Honeycutt.
- Interfaces/IWebInspector.idl:
- WebInspector.cpp: (WebInspector::isDebuggingJavaScript): (WebInspector::toggleDebuggingJavaScript): (WebInspector::isProfilingJavaScript): (WebInspector::toggleProfilingJavaScript):
- WebInspector.h:
- 6:03 PM Changeset in webkit [34043] by
-
- 6 edits in trunk/JavaScriptCore
2008-05-22 Kevin McCullough <kmccullough@apple.com>
Reviewed by Darin.
<rdar://problem/5951529> JSProfiler: Allow the profiler to "Exclude" a
profile node.
-Implement 'exclude'; where the excluded node attributes its time to its
parent's self time.
- JavaScriptCore.exp: Export the exclude function.
- profiler/Profile.h: (KJS::Profile::exclude):
- profiler/ProfileNode.cpp: (KJS::ProfileNode::setTreeVisible): New function that allows a change in visiblitiy to be propogated to all the children of a node. (KJS::ProfileNode::exclude): If the node matches the callIdentifier then set the visiblity of this node and all of its children to false and attribute it's total time to it's caller's self time.
- profiler/ProfileNode.h:
- 5:45 PM Changeset in webkit [34042] by
-
- 2 edits in trunk/JavaScriptCore
Fix access to static global variables in Windows release builds.
Reviewed by Oliver Hunt.
- kjs/JSGlobalObject.h: Don't store a reference to an Identifier
in GlobalPropertyInfo as the Identifier is likely to be a temporary
and therefore may be destroyed before the GlobalPropertyInfo.
- 5:41 PM Changeset in webkit [34041] by
-
- 7 edits7 adds in trunk
WebCore:
2008-05-22 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
<rdar://problem/5838772> Support cross-site XMLHttpRequest
- Implement support for cross-site non-GET requests using the HTTP header Access-control mechanism.
Tests: http/tests/xmlhttprequest/access-control-basic-allow-async.html
http/tests/xmlhttprequest/access-control-basic-not-get-allow-async.html
http/tests/xmlhttprequest/access-control-basic-not-get-allow.html
- xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::XMLHttpRequest): (WebCore::XMLHttpRequest::send): Don't continue send if inside the method check preflight (only happens for async).
(WebCore::XMLHttpRequest::crossSiteAccessRequest):
Add support for non-GET requests, starting off a method check preflight.
(WebCore::XMLHttpRequest::handleAsynchronousMethodCheckResult):
Handler for finishing up after an asynchronous method check has completed.
(WebCore::XMLHttpRequest::didFinishLoading):
(WebCore::XMLHttpRequest::didFinishLoadingMethodCheck):
(WebCore::XMLHttpRequest::didReceiveResponse):
(WebCore::XMLHttpRequest::didReceiveResponseMethodCheck):
(WebCore::XMLHttpRequest::didReceiveData):
Do a limited set of access control when in the method check preflight.
- xml/XMLHttpRequest.h:
LayoutTests:
2008-05-22 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
<rdar://problem/5838772> Support cross-site XMLHttpRequest
- Add more tests for cross-domain XHR.
- http/tests/xmlhttprequest/access-control-basic-allow-access-control-origin-header.html:
- http/tests/xmlhttprequest/access-control-basic-allow-async-expected.txt: Added.
- http/tests/xmlhttprequest/access-control-basic-allow-async.html: Added.
- http/tests/xmlhttprequest/access-control-basic-denied.html:
- http/tests/xmlhttprequest/access-control-basic-exclude.html:
- http/tests/xmlhttprequest/access-control-basic-not-get-allow-async-expected.txt: Added.
- http/tests/xmlhttprequest/access-control-basic-not-get-allow-async.html: Added.
- http/tests/xmlhttprequest/access-control-basic-not-get-allow-expected.txt: Added.
- http/tests/xmlhttprequest/access-control-basic-not-get-allow.html: Added.
- http/tests/xmlhttprequest/resources/access-control-basic-non-get-allow.cgi: Added.
- 4:30 PM Changeset in webkit [34040] by
-
- 2 edits in trunk/WebCore
Make sure we don't call findTreeElement with the same representedObject
again, to prevent infinite recursion. Added many comments to this
code so it can be understood later.
https://bugs.webkit.org/show_bug.cgi?id=19164
Reviewed by Adam Roben.
- page/inspector/treeoutline.js:
- 3:48 PM Changeset in webkit [34039] by
-
- 3 edits in trunk/WebCore
Re-word the "Attach Debugger" overlay to never say "Attach". The new
wording is "Start Debugging". This makes the overlay consistent with
other wording used for starting the debugger. Also fixes the tooltips
for the Pause on Exceptions button.
Reviewed by Adam Roben and Dan Bernstein.
- English.lproj/localizedStrings.js: Adds new strings.
- page/inspector/ScriptsPanel.js: Changes the wording. Flips the
tooltips for the Pause on Exceptions buttons so the tooltip says
what will happen when the button is pressed.
- 3:48 PM Changeset in webkit [34038] by
-
- 3 edits in trunk/WebCore
Remove some non-functional elements from the Scripts panel
so they don't confuse users why they aren't working.
Reviewed by Adam Roben.
- page/inspector/ScriptsPanel.js: Removes the back/forward buttons
and the function menu.
- page/inspector/inspector.css: Make the files menu wider since there
is more room now.
- 3:22 PM Changeset in webkit [34037] by
-
- 2 edits in trunk/JavaScriptCore
2008-05-22 Kevin McCullough <kmccullough@apple.com>
Build fix.
- VM/Machine.cpp: (KJS::callEval):
- 3:09 PM Changeset in webkit [34036] by
-
- 8 edits in trunk/JavaScriptCore
2008-05-22 Kevin McCullough <kmccullough@apple.com>
Reviewed by Sam.
<rdar://problem/5951561> Turn on JavaScript Profiler
Get basic JS profiling working.
Even with this patch the profiler will not be compiled in because we do
not know the extend, if any, of the performance regression it would cause
when it is not in use. However with these changes, if the profiler were
on, it would not crash and show good profiling data.
- VM/Machine.cpp: Instrument the calls sites that are needed for profiling. (KJS::callEval): (KJS::Machine::unwindCallFrame): (KJS::Machine::execute): (KJS::Machine::privateExecute):
- kjs/function.cpp: Ditto. (KJS::globalFuncEval):
- kjs/interpreter.cpp: Ditto. (KJS::Interpreter::evaluate):
- profiler/Profile.cpp: (KJS::Profile::willExecute): (KJS::Profile::didExecute): Because we do not get a good context when startProfiling is called it is possible that m_currentNode will be at the top of the known stack when a didExecute() is called. What we then do is create a new node that represents the function being exited and insert it between the head and the currently known children, since they should be children of this new node.
- profiler/ProfileNode.cpp: (KJS::ProfileNode::ProfileNode): (KJS::ProfileNode::willExecute): Rename the add function for consistency. (KJS::ProfileNode::addChild): Appends the child to this node but also sets the parent pointer of the children to this node. (KJS::ProfileNode::insertNode): Insert a node between this node and its children. Also set the time for the new node since it is now exiting and we don't really know when it started. (KJS::ProfileNode::stopProfiling): (KJS::ProfileNode::startTimer):
- profiler/ProfileNode.h: (KJS::CallIdentifier::toString): Added for debugging. (KJS::ProfileNode::setParent): (KJS::ProfileNode::setSelfTime): Fixed an old bug where we set the visibleTotalTime not the visibleSelfTime. (KJS::ProfileNode::children): (KJS::ProfileNode::toString): Added for debugging.
- profiler/Profiler.cpp: remove unecessary calls. (KJS::Profiler::startProfiling):
- 3:05 PM Changeset in webkit [34035] by
-
- 5 edits4 copies in trunk/WebCore
Roll out 34034, it broke the build.
- 2:17 PM Changeset in webkit [34034] by
-
- 5 edits4 deletes in trunk/WebCore
2008-05-21 Julien Chaffraix <jchaffraix@webkit.org>
Reviewed by Eric.
Bug 9191: JS*ElementWrapperFactory should be autogenerated
https://bugs.webkit.org/show_bug.cgi?id=9191
- Add a new parameter to make_names.pl --wrapperFactory which works like --wrapper but generates the JS*ElementWrapperFactories.
- Added the new parameter to the different build systems.
- Removed JS*ElementWrapperFactories in WebCore/bindings/js, replaced by the generated ones.
- DerivedSources.make:
- GNUmakefile.am:
- WebCore.pro:
- bindings/js/JSHTMLElementWrapperFactory.cpp: Removed.
- bindings/js/JSHTMLElementWrapperFactory.h: Removed.
- bindings/js/JSSVGElementWrapperFactory.cpp: Removed.
- bindings/js/JSSVGElementWrapperFactory.h: Removed.
- dom/make_names.pl:
- 1:39 PM Changeset in webkit [34033] by
-
- 5 edits in trunk/WebKit/win
2008-05-22 Steve Falkenburg <sfalken@apple.com>
Build fix.
- Interfaces/IWebInspector.idl:
- Interfaces/WebKit.idl:
- WebInspector.cpp: (WebInspector::unused1):
- WebInspector.h:
- 12:55 PM Changeset in webkit [34032] by
-
- 4 edits in trunk/JavaScriptCore
2008-05-22 Sam Weinig <sam@webkit.org>
Reviewed by Oliver Hunt.
Rename register arguments for op_call, op_call_eval, op_end, and op_construct
to document what they are for.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitCall): (KJS::CodeGenerator::emitCallEval): (KJS::CodeGenerator::emitEnd): (KJS::CodeGenerator::emitConstruct):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- 12:51 PM Changeset in webkit [34031] by
-
- 2 edits in trunk/WebKit/mac
Reviewed by Darin Adler.
- fix broken documentation of webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:
- WebView/WebUIDelegate.h: Fixed method name in HeaderDoc for -webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:
- 12:36 PM Changeset in webkit [34030] by
-
- 2 edits in trunk/JavaScriptCore
Bug 19116: SquirrelFish shouldn't regress on variable lookups
<https://bugs.webkit.org/show_bug.cgi?id=19116>
Reviewed by Darin.
Last of the multiscope look up optimisations. This is a wash overall on SunSpider
but is a factor of 5-10 improvement in multiscope read/write/modify (eg. ++, --, +=,
... applied to any non-local var).
- 12:03 PM Changeset in webkit [34029] by
-
- 5 edits in trunk/LayoutTests
Rubber-stamped by Darin.
Fix tests failing on Tiger.
- fast/loader/data-url-encoding-html.html:
- fast/loader/data-url-encoding-html-expected.txt:
- fast/loader/data-url-encoding-svg.html:
- fast/loader/data-url-encoding-svg-expected.txt: Changed these tests to always use an explicit charset - otherwise, they were failing on Leopard because of a CFNetwork bug, and on Tiger because of WebKit bug 19193. Also, changed them to test that decoding was performed correctly, not just that document.charset matched expectations.
- 11:40 AM Changeset in webkit [34028] by
-
- 4 edits in trunk/JavaScriptCore
<rdar://problem/5954233> Add method to release free memory from FastMalloc
Patch suggested by Mark Rowe. Rubber-stamped by Maciej.
- JavaScriptCore.exp: Export _releaseFastMallocFreeMemory.
- wtf/FastMalloc.cpp: (WTF::TCMallocStats::): Added releaseFastMallocFreeMemory() for both system malloc and FastMalloc code paths.
- wtf/FastMalloc.h: Define releaseFastMallocFreeMemory().
- 11:37 AM Changeset in webkit [34027] by
-
- 18 edits in trunk
<rdar://problem/5956403> Update the Develop menu to match the new Inspector items
- 11:27 AM Changeset in webkit [34026] by
-
- 7 edits in trunk
WebCore:
2008-05-22 Josh Aas <joshmoz@gmail.com>
Reviewed by Anders.
<rdar://problem/5956429>
https://bugs.webkit.org/show_bug.cgi?id=19192
remove NPNVpluginEventModel, fix example plugin
Remove NPNVpluginEventModel enum variable.
- bridge/npapi.h:
WebKit/mac:
2008-05-22 Josh Aas <joshmoz@gmail.com>
Reviewed by Anders.
<rdar://problem/5956429>
https://bugs.webkit.org/show_bug.cgi?id=19192
remove NPNVpluginEventModel, fix example plugin
- Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView getVariable:value:]):
WebKitExamplePlugins:
2008-05-22 Josh Aas <joshmoz@gmail.com>
Reviewed by Anders.
Use correct enum.
- NetscapeCocoaPlugin/main.m: (NPP_New):
- NetscapeInputMethodPlugin/main.m: (NPP_New):
- 11:26 AM Changeset in webkit [34025] by
-
- 5 edits3 adds in trunk/WebKit
..:
2008-05-21 Anders Carlsson <andersca@apple.com>
Reviewed by Maciej.
Add WebIconFetcher files.
- WebKit.xcodeproj/project.pbxproj:
../mac:
2008-05-21 Anders Carlsson <andersca@apple.com>
Reviewed by Maciej.
Add WebIconFetcher.
- Misc/WebIconFetcher.h: Added.
- Misc/WebIconFetcher.mm: Added. (WebIconFetcherClient::WebIconFetcherClient): (WebIconFetcherClient::finishedFetchingIcon): (WebIconFetcherClient::setFetcher): (-[WebIconFetcher init]): (-[WebIconFetcher dealloc]): (-[WebIconFetcher finalize]): (-[WebIconFetcher cancel]): (-[WebIconFetcher _initWithIconFetcher:client:]): (+[WebIconFetcher _fetchApplicationIconForFrame:target:selector:]):
- Misc/WebIconFetcherInternal.h: Added.
- WebView/WebFrame.mm: (-[WebFrame fetchApplicationIcon:selector:]):
- WebView/WebFramePrivate.h:
- 2:53 AM Changeset in webkit [34024] by
-
- 2 edits in trunk/JavaScriptCore
Roll out r34020 as it causes recursion tests to fail.
RS=Maciej
- 2:36 AM Changeset in webkit [34023] by
-
- 8 edits2 adds in trunk
2008-05-22 Stephanie Lewis <Stephanie Lewis>
Reviewed by Dan.
Fix <rdar://problem/5952405>. The unbeforeunload count cannot be cleared when it is dispatched because it is possible to be called again. Clear it after the unload event is dispatched.
Test: fast/events/onunload-clears-onbeforeunload.html
- loader/FrameLoader.cpp: (WebCore::FrameLoader::stopLoading):
- page/Frame.cpp: (WebCore::Frame::shouldClose):
implement the beforeUnload UI delegate so that DRT will dispatch beforeunload events.
- DumpRenderTree/mac/UIDelegate.mm: (-[UIDelegate webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:]):
- DumpRenderTree/win/UIDelegate.cpp: (SearchableWebViewHost::runBeforeUnloadConfirmPanelWithMessage):
add test to test for beforeunload event handlers being removed after they have been fired.
- fast/events/onunload-clears-onbeforeunload-expected.txt: Added.
- fast/events/onunload-clears-onbeforeunload.html: Added.
- 2:34 AM Changeset in webkit [34022] by
-
- 2 edits in trunk/JavaScriptCore
Don't leak the SymbolTable when compiling eval code.
Reviewed by Mark
- 2:07 AM Changeset in webkit [34021] by
-
- 8 edits in trunk
2008-05-22 Simon Hausmann <Simon Hausmann>
Reviewed by Oliver.
Qt build fixes.
- 1:37 AM Changeset in webkit [34020] by
-
- 2 edits in trunk/JavaScriptCore
2008-05-22 Geoffrey Garen <ggaren@apple.com>
Reviewed by Adam Roben.
Removed the old recursion guard mechanism, since squirrelfish has its
own mechanism. Also removed some old JS call tracing code, since we
have other ways to do that, too.
SunSpider reports no change.
- kjs/object.cpp: (KJS::JSObject::call):
- 1:19 AM Changeset in webkit [34019] by
-
- 2 edits in trunk/WebCore
Massively speed up date-format-tofte with the debugger attached
On a debug Windows build (I know, hardly a good testcase) this patch
makes this test run 57.25x as fast.
Reviewed by Mark Rowe.
- page/inspector/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype.reset): Clear the _scriptsForURLsInFilesSelect object. (WebInspector.ScriptsPanel.prototype._showScriptOrResource): Instead of looping over all the options in the select to find the option we want, get the script object from _scriptsForURLsInFilesSelect and get the option element from the script object. (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): Use _scriptsForURLsInFilesSelect to cache the script objects. Store the option element for each script on the script object so we can quickly retrieve it later.
- 1:18 AM Changeset in webkit [34018] by
-
- 2 edits in trunk/WebCore
Remove some dead code from ScriptsPanel.js
Reviewed by Mark Rowe.
- page/inspector/ScriptsPanel.js:
- 1:17 AM Changeset in webkit [34017] by
-
- 3 edits2 adds in trunk
2008-05-22 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- fixed <rdar://problem/5954979> crash on celtic kane JS benchmark
- kjs/nodes.cpp: (KJS::WithNode::emitCode): (KJS::TryNode::emitCode):
LayoutTests:
2008-05-22 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- test case for <rdar://problem/5954979> crash on celtic kane JS benchmark
- fast/js/try-catch-crash-expected.txt: Added.
- fast/js/try-catch-crash.html: Added.
- 12:27 AM Changeset in webkit [34016] by
-
- 4 edits in tags/Safari-6526.7
Versioning.
- 12:21 AM Changeset in webkit [34015] by
-
- 2 edits in tags/Safari-6526.7.1/WebKit/mac
Merge r33971.
- 12:20 AM Changeset in webkit [34014] by
-
- 1 copy in tags/Safari-6526.7.1
New tag.
May 21, 2008:
- 11:21 PM Changeset in webkit [34013] by
-
- 7 edits in trunk/JavaScriptCore
2008-05-21 Kevin McCullough <kmccullough@apple.com>
Reviewed by Maciej and Geoff.
<rdar://problem/5951561> Turn on JavaScript Profiler
-As part of the effort to turn on the profiler it would be helpful if it
did not need ExecStates to represent the stack location of the currently
executing statement.
-We now create each node as necessary with a reference to the current
node and each node knows its parent so that the tree can be made without
the entire stack.
- profiler/Profile.cpp: (KJS::Profile::Profile): The current node starts at the head. (KJS::Profile::stopProfiling): The current node is cleared when profiling stops. (KJS::Profile::willExecute): The current node either adds a new child or starts and returns a reference to an already existing child if the call ID that is requested already exists. (KJS::Profile::didExecute): The current node finishes and returns its parent.
- profiler/Profile.h: Use a single callIdentifier instead of a vector since we no longer use the whole stack.
- profiler/ProfileNode.cpp: Now profile nodes keep a reference to their parent. (KJS::ProfileNode::ProfileNode): Initialize the parent. (KJS::ProfileNode::didExecute): Record the time and return the parent. (KJS::ProfileNode::addOrStartChild): If the given callIdentifier is already a child, start it and return it, otherwise create a new one and return that. (KJS::ProfileNode::stopProfiling): Same logic, just use the new function.
- profiler/ProfileNode.h: Utilize the parent. (KJS::ProfileNode::create): (KJS::ProfileNode::parent):
- profiler/Profiler.cpp: (KJS::Profiler::startProfiling): Here is the only place where the ExecState is used to figure out where in the stack the profiler is currently profiling. (KJS::dispatchFunctionToProfiles): Only send one CallIdentifier instead of a vector of them. (KJS::Profiler::willExecute): Ditto. (KJS::Profiler::didExecute): Ditto. (KJS::createCallIdentifier): Create only one CallIdentifier. (KJS::createCallIdentifierFromFunctionImp): Ditto.
- profiler/Profiler.h:
- 10:59 PM Changeset in webkit [34012] by
-
- 3 edits in trunk/WebCore
Fix Bug 19178: Inspector should support sorting resources by latency
I replaced "Sort by Time" with the following sorting options:
- Sort by Start Time
- Sort by Response Time
- Sort by End Time
- Sort by Duration
- Sort by Latency
You can no longer sort by Size when looking at the Time graph, and you
can't use any of the time-based sorting functions when looking at the
Size graph.
Reviewed by Tim Hatcher.
- page/inspector/Resource.js: (WebInspector.Resource.prototype.get duration): Added. (WebInspector.Resource.prototype.get latency): Added. (WebInspector.Resource.CompareByStartTime): Added. (WebInspector.Resource.CompareByResponseReceivedTime): Added. (WebInspector.Resource.CompareByEndTime): Added. (WebInspector.Resource.CompareByDuration): Added. (WebInspector.Resource.CompareByLatency): Added.
- page/inspector/ResourcesPanel.js:
(WebInspector.ResourcesPanel):
- Each graph sidebar item now holds a list of sorting options
- Graph sidebar items no longer have a calculator property. This is stored on the sorting options instead, to allow each kind of sorting to have a different calculator.
- The sortingSelectElement starts out empty, and is populated in _graphSelected
- The sortingFunction starts out uninitialized and is set as a side-effect of _graphSelected.
(WebInspector.ResourcesPanel.prototype.set calculator): Don't do
anything if the calculator hasn't changed.
(WebInspector.ResourcesPanel.prototype.closeVisibleResource): Use the
_lastSelectedGraphTreeElement property instead of getting the graph
element from the calculator.
(WebInspector.ResourcesPanel.prototype._graphSelected):
- Store the tree element in the _lastSelectedGraphTreeElement property
- Popuplate sortingSelectElement with the sortingOptions and select the option that was last selected
(WebInspector.ResourcesPanel.prototype._changeSortingFunction): Set
our calculator from the sorting option.
(WebInspector.ResourceTimeCalculator): Renamed from
ResourceTransferTimeCalculator. Now takes a parameter to specify
whether the bars should all start at zero.
(WebInspector.ResourceTimeCalculator.prototype.computeBarGraphPercentages):
Take this.startAtZero into account.
(WebInspector.ResourceTimeCalculator.prototype.updateBoundries):
Abstracted the lower/upper bounds of a resource into methods.
(WebInspector.ResourceTimeCalculator.prototype._lowerBound): Added.
(WebInspector.ResourceTimeCalculator.prototype._upperBound): Added.
(WebInspector.ResourceTransferTimeCalculator): Added. This is now a
subclass of ResourceTimeCalculator
(WebInspector.ResourceTransferDurationCalculator): Added.
(WebInspector.ResourceSidebarTreeElement.CompareByAscendingStartTime): Added.
(WebInspector.ResourceSidebarTreeElement.CompareByAscendingResponseReceivedTime): Added.
(WebInspector.ResourceSidebarTreeElement.CompareByAscendingEndTime): Added.
(WebInspector.ResourceSidebarTreeElement.CompareByDescendingDuration): Added.
(WebInspector.ResourceSidebarTreeElement.CompareByDescendingLatency): Added.
(WebInspector.ResourceSidebarTreeElement.CompareByDescendingSize):
Changed to call CompareBySize.
- 10:59 PM Changeset in webkit [34011] by
-
- 2 edits1 add in trunk/WebCore
Fix Bug 19173: Tool tips for Inspector debugger status bar buttons are wrong/missing
Reviewed by Tim Hatcher.
- manual-tests/inspector/debugger-status-bar-buttons-state.html: Added.
- page/inspector/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype._toggleDebugging): Call _clearInterface (which updates the buttons' tool tips) after attaching/detaching the debugger so that the buttons will reflect the new state. (WebInspector.ScriptsPanel.prototype._updatePauseOnExceptionsButton): Set the title of the pauseOnExceptionsButton, not the debuggingButton.
- 10:58 PM Changeset in webkit [34010] by
-
- 8 edits in trunk
Fix Bug 19153: Inspector should support console.debug
WebCore:
Fix Bug 19153: Inspector should support console.debug
<https://bugs.webkit.org/show_bug.cgi?id=19153>
<rdar://problem/5950856>
Reviewed by Tim Hatcher.
Test: manual-tests/inspector/console-log-formatting.html
- bindings/js/JSConsoleCustom.cpp: (WebCore::JSConsole::debug): Added.
- manual-tests/inspector/console-log-formatting.html: Changed to test console.debug as well.
- page/Console.cpp: (WebCore::Console::debug): Added. Just calls through to log().
- page/Console.h:
- page/Console.idl: Added debug() declaration.
LayoutTests:
Update window-properties results for new console functions
Reviewed by Tim Hatcher.
- fast/dom/Window/window-properties-expected.txt:
- 10:19 PM Changeset in webkit [34009] by
-
- 2 edits in trunk/JavaScriptCore
2008-05-21 Darin Adler <Darin Adler>
Reviewed by Maciej.
- https://bugs.webkit.org/show_bug.cgi?id=19180 speed up the < operator for the case when both values are integers
Makes standalone SunSpider 1.022x faster.
- VM/Machine.cpp: (KJS::jsLess): Add a special case for when both are numbers that fit in a JSImmediate.
- 10:18 PM Changeset in webkit [34008] by
-
- 3 adds in trunk/LayoutTests/fast/frames
Check in files I forgot to last time.
- 10:02 PM Changeset in webkit [34007] by
-
- 6 edits in trunk
2008-05-21 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver and Sam.
- fixed <rdar://problem/5815631> REGRESSION (r31239): Multiscope optimisation of function calls results in incorrect this value (breaks tvtv.de)
Track global this value in the scope chain so we can retrieve it
efficiently but it follows lexical scope properly.
- kjs/ExecState.h: (KJS::ExecState::globalThisValue):
- kjs/JSGlobalObject.h: (KJS::JSGlobalObject::JSGlobalObjectData::JSGlobalObjectData):
- kjs/function_object.cpp: (KJS::FunctionObjectImp::construct):
- kjs/scope_chain.h: (KJS::ScopeChainNode::ScopeChainNode): (KJS::ScopeChainNode::globalThisObject): (KJS::ScopeChainNode::push): (KJS::ScopeChain::ScopeChain):
LayoutTests:
2008-05-21 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver and Sam.
- tests for <rdar://problem/5815631> REGRESSION (r31239): Multiscope optimisation of function calls results in incorrect this value (breaks tvtv.de)
- fast/frames/cross-site-this-expected.txt: Added.
- fast/frames/cross-site-this.html: Added.
- fast/frames/resources/cross-site-this-helper.html: Added.
- 9:57 PM Changeset in webkit [34006] by
-
- 10 edits in trunk
WebKit/win:
2008-05-21 Adele Peterson <adele@apple.com>
Reviewed by Adam.
WebKit part of for <rdar://problem/5787733> fast/dom/HTMLDocument/hasFocus.html fails on Windows
- WebCoreSupport/WebChromeClient.cpp: (WebChromeClient::focus): Call updateActiveState directly. Normally this would happen on a timer, but JS might need to know this earlier, so we'll update here. (WebChromeClient::unfocus): ditto.
- WebView.cpp: (WebView::updateActiveStateSoon): Added comment about why we use a timer for this.
WebKitTools:
2008-05-21 Adele Peterson <adele@apple.com>
Reviewed by Adam.
DumpRenderTree support for <rdar://problem/5787733> fast/dom/HTMLDocument/hasFocus.html fails on Windows
- DumpRenderTree/win/UIDelegate.cpp: (UIDelegate::webViewFocus): Added. (UIDelegate::webViewUnfocus): Added.
- DumpRenderTree/win/UIDelegate.h:
LayoutTests:
2008-05-21 Adele Peterson <adele@apple.com>
Reviewed by Adam.
Enhanced and enabled test for <rdar://problem/5787733> fast/dom/HTMLDocument/hasFocus.html fails on Windows
- fast/dom/HTMLDocument/hasFocus-expected.txt:
- fast/dom/HTMLDocument/hasFocus.html:
- platform/win/Skipped:
- 9:56 PM Changeset in webkit [34005] by
-
- 2 edits in trunk/WebCore
2008-05-21 Kevin McCullough <kmccullough@apple.com>
Reviewed by Adam.
<rdar://problem/5950867> JSProfiler: Allow the profiler to "Focus" a
profile node.
- Expose the Profile's 'focus' ability to WebCore and the WebInspector.
- page/JavaScriptProfile.cpp: (WebCore::focus): (WebCore::profileClass):
- 9:52 PM Changeset in webkit [34004] by
-
- 2 edits in trunk/JavaScriptCore
2008-05-21 Kevin McCullough <kmccullough@apple.com>
Sadness :(
- kjs/config.h:
- 9:51 PM Changeset in webkit [34003] by
-
- 7 edits in trunk/JavaScriptCore
2008-05-21 Kevin McCullough <kmccullough@apple.com>
Reviewed by Maciej.
<rdar://problem/5950867> JSProfiler: Allow the profiler to "Focus" a
profile node.
- This patch updatest the times of the visible nodes correctly, but to do so, some of the design of the ProfileNode changed.
- JavaScriptCore.exp: export focus' symbol.
- profiler/Profile.cpp: ProfileNodes now take a reference to the head of the profile tree to get up-to-date accurate total profile time. (KJS::Profile::Profile): Pass 0 for the head node. (KJS::Profile::stopProfiling): stopProfiling no longer needs the time passed into it, since it can get it from the head and it does not need to be told it is the head because it can figure it out on it's own. (KJS::Profile::willExecute): Set the head node for each created node.
- profiler/Profile.h: (KJS::Profile::focus): Instead of taking a CallIdentifier that the caller would have to create, now focus() takes a ProfileNode that they should already have a reference to and focus() can extract the CallIdentifier from it.
- profiler/ProfileNode.cpp: Create actual and visible versions fo the total and self times for focus and exclude. Also add a head node reference so that nodes can get information from their head. (KJS::ProfileNode::ProfileNode): (KJS::ProfileNode::stopProfiling): Rename the total and self time variables and set the visual ones to the actual ones, so that without any changes to the visual versions of these variables, their times will match the actual times. (KJS::ProfileNode::focus): Now focus() has a bool to force it's children to be visible if this node is visible. If this node does not match the CallIdentifier being focused then the visibleTotalTime is only updated if one or more of it's children is the CallIdentifier being focused. (KJS::ProfileNode::restoreAll): Restores all variables with respect to the visible data in the ProfileNode. (KJS::ProfileNode::endAndRecordCall): Name change. (KJS::ProfileNode::debugPrintData): Dump the new variables. (KJS::ProfileNode::debugPrintDataSampleStyle): Name change.
- profiler/ProfileNode.h: Use the new variables and reference to the head node. (KJS::ProfileNode::create): (KJS::ProfileNode::totalTime): (KJS::ProfileNode::setTotalTime): (KJS::ProfileNode::selfTime): (KJS::ProfileNode::setSelfTime): (KJS::ProfileNode::totalPercent): (KJS::ProfileNode::selfPercent): (KJS::ProfileNode::setVisible):
- 9:50 PM Changeset in webkit [34002] by
-
- 1 edit3 moves in trunk/LayoutTests
2008-05-21 Sam Weinig <sam@webkit.org>
Review by Mark Rowe.
Change test so that its result are not different all the time.
- http/tests/xmlhttprequest/access-control-basic-allow-access-control-origin-header-expected.txt: Copied from http/tests/xmlhttprequest/access-control-basic-allow-headers-expected.txt.
- http/tests/xmlhttprequest/access-control-basic-allow-access-control-origin-header.html: Copied from http/tests/xmlhttprequest/access-control-basic-allow-headers.html.
- http/tests/xmlhttprequest/access-control-basic-allow-headers-expected.txt: Removed.
- http/tests/xmlhttprequest/access-control-basic-allow-headers.html: Removed.
- http/tests/xmlhttprequest/resources/access-control-basic-allow-access-control-origin-header.cgi: Copied from http/tests/xmlhttprequest/resources/access-control-basic-allow-headers.cgi.
- http/tests/xmlhttprequest/resources/access-control-basic-allow-headers.cgi: Removed.
- 9:33 PM Changeset in webkit [34001] by
-
- 2 edits in trunk/LayoutTests
2008-05-21 Brady Eidson <beidson@apple.com>
Rubberstamped by Adam
<rdar://problem/5787763> - Hang in Storage tests on windows
Since the hang was originally noticed and investigated, no one has revisited it.
Adam and I just spent some time trying to reproduce and were unable.
Lets give the bots another go, shall we?
- platform/win/Skipped:
- 9:16 PM Changeset in webkit [34000] by
-
- 2 edits in tags/Safari-6526.7/WebKit/mac
Merge r33968.
- 9:14 PM Changeset in webkit [33999] by
-
- 4 edits in trunk
Versioning.
- 9:13 PM Changeset in webkit [33998] by
-
- 1 copy in tags/Safari-6526.7
New tag.
- 9:02 PM Changeset in webkit [33997] by
-
- 2 edits in trunk/WebKitTools
Set the pass_through flag on Getopt so that extra arguments can be passed through to Safari,
rather than trigger an unknown argument message. This allows run-webkit-tests to display results
once more.
Rubber-stamped by Stephanie Lewis.
- Scripts/run-safari:
- 8:52 PM Changeset in webkit [33996] by
-
- 2 edits in trunk/JavaScriptCore
Yet more windows builds fixes
- 8:46 PM Changeset in webkit [33995] by
-
- 2 edits in trunk/WebCore
Remove the rest of the debug code inside DEBUG_DEBUGGER_CALLBACKS
since the parts the remain aren't useful.
- page/JavaScriptDebugServer.cpp:
(WebCore::JavaScriptDebugServer::sourceParsed):
- 8:44 PM Changeset in webkit [33994] by
-
- 2 edits in trunk/JavaScriptCore
2008-05-21 Alp Toker <alp@nuanti.com>
GTK+/UNIX testkjs build fix. Include signal.h.
- kjs/testkjs.cpp:
- 8:41 PM Changeset in webkit [33993] by
-
- 2 edits in trunk/WebCore
2008-05-21 Beth Dakin <Beth Dakin>
Reviewed by Anders.
Fix for <rdar://problem/5848161> REGRESSION (r31438?): Crash
beneath ResourceHandle::setDefersLoading while running fast/loader/
simultaneous-reloads-assert.html (null CFURLConnection)
- platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandle::setDefersLoading): Added simple null- check.
- 8:34 PM Changeset in webkit [33992] by
-
- 2 edits in trunk/JavaScriptCore
Yet more windows build fixes
- 8:31 PM Changeset in webkit [33991] by
-
- 9 edits in trunk/WebCore
Adds the Request and Response headers to the Resource view.
<rdar://problem/5940782> REGRESSION: Resource Request and Response
headers aren't shown (18451)
Reviewed by Adam Roben.
- English.lproj/localizedStrings.js: Added new strings.
- css/view-source.css: Add comments to make sure a couple of
style rules stay in sync with inspector.css.
- page/inspector/Resource.js:
(WebInspector.Resource.prototype.set url): Dispatch an event when
this property changes.
(WebInspector.Resource.prototype.set requestHeaders): Ditto.
(WebInspector.Resource.prototype.set responseHeaders): Ditto.
- page/inspector/ResourceView.js:
(WebInspector.ResourceView): Add new elements for the headers
and a headers TreeOutline. Add event listeners for resource
property changes. Calls the three new refresh functions.
(WebInspector.ResourceView.prototype.set headersVisible): Implemented.
Toggles the headers-visible class name.
(WebInspector.ResourceView.prototype._refreshURL): Update the URL
tree element.
(WebInspector.ResourceView.prototype._refreshRequestHeaders): Call _refreshHeaders.
(WebInspector.ResourceView.prototype._refreshResponseHeaders): Ditto.
(WebInspector.ResourceView.prototype._refreshHeaders): Remove the previous
headers fromm the tree element. Loop throuh the headers and create new
tree elements and append them.
- page/inspector/ResourcesPanel.js:
(WebInspector.ResourcesPanel.prototype._updateSidebarWidth): Call resize
on the visible view if it is implemented.
- page/inspector/SourceFrame.js:
(WebInspector.SourceFrame.prototype.get autoSizeToFitContentHeight):
(WebInspector.SourceFrame.prototype.set autoSizeToFitContentHeight):
(WebInspector.SourceFrame.prototype.sizeToFitContentHeight):
(WebInspector.SourceFrame.prototype._loaded):
(WebInspector.SourceFrame.prototype._windowResized):
- page/inspector/SourceView.js:
(WebInspector.SourceView): Move the SourceFrame creation so it is
available when headersVisible is set. Add a gutter element to fill
the vertical space no covered by the SourceFrame now.
(WebInspector.SourceView.prototype.set headersVisible): Set the
SourceFrame.autoSizeToFitContentHeight when this property changes.
(WebInspector.SourceView.prototype.resize): Call SourceFrame.sizeToFitContentHeight
when autoSizeToFitContentHeight is true. This happens when resizing the
Resources sidebar.
- page/inspector/inspector.css: Add a copy of webkit-line-gutter-backdrop
and a comment to keep in sync with view-source.css. Adds other styles
for the headers area of resource-view.
- 8:23 PM Changeset in webkit [33990] by
-
- 12 edits12 adds in trunk
WebCore:
2008-05-21 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
<rdar://problem/5838772> Support cross-site XMLHttpRequest
- Implement support for cross-site GET requests using the HTTP header Access-control mechanism.
Tests: http/tests/xmlhttprequest/access-control-basic-allow-headers.html
http/tests/xmlhttprequest/access-control-basic-allow.html
http/tests/xmlhttprequest/access-control-basic-denied.html
http/tests/xmlhttprequest/access-control-basic-exclude.html
- xml/AccessControlList.cpp: (WebCore::AccessControlList::checkOrigin): Implement the list check algorithm.
- xml/AccessControlList.h:
- xml/AccessItem.cpp: (WebCore::AccessItem::AccessItem): (WebCore::AccessItem::matches):
- xml/AccessItem.h: Temporarily use a SecurityOrigin as the bases of AccessItem matching. Using the isSameSchemeHostPort test of the SecurityOrigin allows for a legal subset of the AccessItem match algorithm to be used, until the complete parsing of the wildcards and optional pieces is complete.
- xml/AccessItemRule.cpp: (WebCore::matchesAny): (WebCore::AccessItemRule::allowListMatchesAny): (WebCore::AccessItemRule::excludeListMatchesAny):
- xml/AccessItemRule.h: More of the implementation of the list check algorithm. Check if any of the items in the rule match the control origin.
- xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::XMLHttpRequest): (WebCore::XMLHttpRequest::open): Don't throw a SECURITY_ERR for cross-domain requests anymore. (WebCore::XMLHttpRequest::send): Use different paths for same origin and cross-domain requests. (WebCore::XMLHttpRequest::crossSiteAccessRequest): Temporarily only support the GET method for cross-domain requests. (WebCore::XMLHttpRequest::loadRequestSynchronously): (WebCore::XMLHttpRequest::processSyncLoadResults): This can now throw an exception if a cross-domain request is denied by the access control (WebCore::XMLHttpRequest::didFinishLoading): Add support for cross-domain GET request. ASSERT temporarily that the method is GET, since we should have bailed out much earlier for non-GET methods. (WebCore::XMLHttpRequest::willSendRequest): (WebCore::XMLHttpRequest::didReceiveResponse): Do the HTTP header access-control check as soon as the headers arrive.
- xml/XMLHttpRequest.h:
LayoutTests:
2008-05-21 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
<rdar://problem/5838772> Support cross-site XMLHttpRequest
- Add tests for basic cross-domain XHR.
- http/tests/xmlhttprequest/access-control-basic-allow-expected.txt: Added.
- http/tests/xmlhttprequest/access-control-basic-allow-headers-expected.txt: Added.
- http/tests/xmlhttprequest/access-control-basic-allow-headers.html: Added.
- http/tests/xmlhttprequest/access-control-basic-allow.html: Added.
- http/tests/xmlhttprequest/access-control-basic-denied-expected.txt: Added.
- http/tests/xmlhttprequest/access-control-basic-denied.html: Added.
- http/tests/xmlhttprequest/access-control-basic-exclude-expected.txt: Added.
- http/tests/xmlhttprequest/access-control-basic-exclude.html: Added.
- http/tests/xmlhttprequest/exceptions-expected.txt:
- http/tests/xmlhttprequest/exceptions.html:
- http/tests/xmlhttprequest/resources/access-control-basic-allow-headers.cgi: Added.
- http/tests/xmlhttprequest/resources/access-control-basic-allow.cgi: Added.
- http/tests/xmlhttprequest/resources/access-control-basic-denied.cgi: Added.
- http/tests/xmlhttprequest/resources/access-control-basic-exclude.cgi: Added.
- 8:20 PM Changeset in webkit [33989] by
-
- 2 edits in trunk/JavaScriptCore
2008-05-21 Alp Toker <alp@nuanti.com>
GTK+ build fix. Add DebuggerCallFrame.cpp and take AllInOneFile.cpp
changes into account.
- GNUmakefile.am:
- 7:51 PM Changeset in webkit [33988] by
-
- 2 edits in trunk/JavaScriptCore
Fix windows build
- 7:36 PM Changeset in webkit [33987] by
-
- 3 edits in trunk/WebKitTools
2008-05-21 Stephanie Lewis <Stephanie Lewis>
Reviewed by Maciej.
arch doesn't take arguments on tiger. expand DRT timeout for guardMalloc.
- Scripts/run-webkit-tests:
- Scripts/webkitdirs.pm:
- 7:19 PM Changeset in webkit [33986] by
-
- 5 edits in trunk/WebKitTools
Improve the behavior of run-webkit-tests with 64-bit WebKit by automatically inferring whether to run 64-bit.
If --64-bit is not passed to run-webkit-tests, attempt to guess whether we should run 64-bit.
This decision is made based on the 64-bitness of the built WebKit framework if it exists, and
can be manually overridden by passing --64-bit or --no-64-bit. This removes the need to always
pass an argument to run-webkit-tests after having built with "make x86_64".
Reviewed by Stephanie Lewis.
- Scripts/gdb-safari:
- Scripts/run-safari:
- Scripts/run-webkit-tests:
- Scripts/webkitdirs.pm: Split the setting of the 64-bit flag, the determination of the
preferred architecture, and exporting of the environment variables for 'arch' out into
separate subroutines.
- 7:19 PM Changeset in webkit [33985] by
-
- 2 edits in trunk/WebKitTools
Fix "make x86_64" by adding x86_64 target to WebKitTools Makefile.
- 7:06 PM Changeset in webkit [33984] by
-
- 2 edits in trunk/JavaScriptCore
2008-05-21 Alp Toker <alp@nuanti.com>
GTK+ port build fixes following squirrelfish merge r33979.
- GNUmakefile.am:
- 7:03 PM Changeset in webkit [33983] by
-
- 2 edits in trunk/JavaScriptCore
2008-05-21 Maciej Stachowiak <mjs@apple.com>
Reviewed by Darin.
- save a hash lookup wne writing to global properties 0.3% speedup on SunSpider, 7% on bitops-bitwise-and
- VM/Machine.cpp: (KJS::resolveBase): Check for being a the end of the scope chain before hash lookup.
- 6:31 PM Changeset in webkit [33982] by
-
- 4 edits in trunk
2008-05-21 Alp Toker <alp@nuanti.com>
Rubber-stamped by Maciej.
Replace non-standard #pragma marks with comments to avoid compiler
warnings.
- 6:23 PM Changeset in webkit [33981] by
-
- 1 move in branches/old/squirrelfish
Move aside the squirrelfish branch now that it has been merged.
- 6:21 PM Changeset in webkit [33980] by
-
- 6 edits in trunk
2008-05-21 Geoffrey Garen <ggaren@apple.com>
Reviewed by Mark Rowe.
Fix layout test failure in fast/dom/getter-on-window-object2 introduced in r33961.
- JavaScriptCore.exp:
- kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::defineGetter): (KJS::JSGlobalObject::defineSetter):
- kjs/JSGlobalObject.h:
- 6:20 PM Changeset in webkit [33979] by
-
- 485 edits2 moves123 adds8 deletes in trunk
Merge squirrelfish branch into trunk.
- 4:18 PM Changeset in webkit [33978] by
-
- 4 edits2 adds in trunk/WebCore
2008-05-21 Anders Carlsson <andersca@apple.com>
Reviewed by Mitz.
Add IconFetcher implementation.
- WebCore.base.exp:
- WebCore.xcodeproj/project.pbxproj:
- html/HTMLLinkElement.h: (WebCore::HTMLLinkElement::isIcon):
- loader/icon/IconFetcher.cpp: Added. (WebCore::IconLinkEntry::): (WebCore::IconLinkEntry::IconLinkEntry): (WebCore::IconLinkEntry::type): (WebCore::IconLinkEntry::url): (WebCore::IconLinkEntry::buffer): (WebCore::parseIconLink): (WebCore::IconFetcher::create): (WebCore::IconFetcher::IconFetcher): (WebCore::IconFetcher::~IconFetcher): (WebCore::IconFetcher::cancel): (WebCore::IconFetcher::createIcon): (WebCore::IconFetcher::loadEntry): (WebCore::IconFetcher::loadFailed): (WebCore::IconFetcher::didReceiveResponse): (WebCore::IconFetcher::didReceiveData): (WebCore::IconFetcher::didFinishLoading): (WebCore::IconFetcher::didFail):
- loader/icon/IconFetcher.h: Added. (WebCore::IconFetcherClient::~IconFetcherClient):
- 2:50 PM Changeset in webkit [33977] by
-
- 2 edits in trunk/WebCore
Reviewed by Dave Hyatt.
- fix https://bugs.webkit.org/show_bug.cgi?id=18352 <rdar://problem/5854517> crash loading malicious font
- platform/graphics/mac/SimpleFontDataMac.mm: (WebCore::SimpleFontData::platformInit): In the case of a custom font, there is no NSFont to base the fallback font on, so get a font based on fallback family name alone.
- 2:09 PM Changeset in webkit [33976] by
-
- 4 edits in trunk/WebCore
Adds the files and line numbers to the Profile call tree.
<rdar://problem/5952924> Inspector needs to show file and line number
in the Profile call tree
Reviewed by Geoff Garen.
- page/JavaScriptProfileNode.cpp:
(WebCore::getFunctionName): Fixes a JSStringRef leak.
(WebCore::getURL): Call ProfileNode::url.
(WebCore::getLineNumber): Call ProfileNode::lineNumber.
(WebCore::ProfileNodeClass): Add the url and lineNumber properties.
- page/inspector/ProfileView.js:
(WebInspector.ProfileDataGridNode.prototype.createCell): Overload the
DataGridNode.createCell and add the file and lineNumber to the
cell if the column is the function column.
- page/inspector/inspector.css: New styles for the file and line.
- 1:56 PM Changeset in webkit [33975] by
-
- 16 edits in branches/squirrelfish
2008-05-21 Geoffrey Garen <ggaren@apple.com>
Reviewed by Tim Hatcher.
Merged with trunk WebCore's new debugger.
- kjs/DebuggerCallFrame.cpp: (KJS::DebuggerCallFrame::evaluate): Changed this function to separate the exception value from the return value. The WebKit debugger treats them as one, but the WebCore debugger doesn't.
- kjs/DebuggerCallFrame.h: (KJS::DebuggerCallFrame::dynamicGlobalObject): Added a new accessor for the dynamic global object, since the debugger doesn't want the lexical global object.
WebCore:
2008-05-21 Geoffrey Garen <ggaren@apple.com>
Reviewed by Tim Hatcher.
Merged with trunk WebCore's new debugger.
- page/InspectorController.cpp: (WebCore::currentCallFrame): Updated to use the DebuggerCallFrame API. (WebCore::InspectorController::pauseInDebugger): Updated for name change explained below. (WebCore::InspectorController::resumeDebugger): ditto (WebCore::InspectorController::didParseSource): Fixed a bug that would produce garbled text in some cases: Don't treat JS source as null- terminated UTF8; it's UTF16.
- page/JavaScriptCallFrame.cpp:
- page/JavaScriptCallFrame.h: Changed this class to do all of its processing through a JavaScriptCore DebuggerCallFrame. We have to copy the DebuggerCallFrame because it's a temporary. (WebCore::JavaScriptCallFrame::update): Added an API for updating a call frame during execution: this is how we handle "with" and "eval".
- page/JavaScriptDebugServer.cpp: Separated "m_paused" from "m_doneProcessingDebuggerEvents", because they have different semantics: "m_paused" is the flag the debug server uses to indicate that new debugger callbacks should be ignored, because they come from the debugger's own JS code; "m_doneProcessingDebuggerEvents" is the flag the debugger UI uses to indicate that it's done processing events, and would like execution to continue. When these flags were one, the debugger would erroneously process callbacks that ocurred while unwinding from its own JS code.
(WebCore::toPage): Removed some unnecessary NULL checking. Added some
missing NULL checking.
(WebCore::JavaScriptDebugServer::pauseIfNeeded): Changed pause tracking
to track a JavaScriptCallFrame instead of an ExecState, since ExecState
is no longer a unique identifier for a call frame.
I removed the updateCurrentCallFrame scheme, and replaced it with
individual tracking inside these callbacks:
(WebCore::JavaScriptDebugServer::callEvent):
(WebCore::JavaScriptDebugServer::atStatement):
(WebCore::JavaScriptDebugServer::returnEvent):
(WebCore::JavaScriptDebugServer::exception):
The updateCurrentCallFrame scheme was just too incompatible with the
squirrelfish execution model. Everything still works as before, except
for eval, which no longer shows up as an independent call frame. We'll
need to augment our debugger callbacks to bring back support for that.
- page/inspector/ScopeChainSidebarPane.js: Updated to use the activation class's new name.
WebKit/mac:
2008-05-21 Geoffrey Garen <ggaren@apple.com>
Reviewed by Tim Hatcher.
Updated for API changes from merging with trunk WebCore's new debugger.
- WebView/WebScriptDebugDelegate.mm: (-[WebScriptCallFrame evaluateWebScript:]): Explicitly check for an exception return, since the DebuggerCallFrame no longer automatically substitutes the exception for the return value.
- WebView/WebScriptDebugger.mm: Use the dynamic global object, not the lexical global object, since the debugger attaches based on dynamic global object.
- 12:25 PM Changeset in webkit [33974] by
-
- 2 edits in trunk/WebKitTools
2008-05-21 Darin Adler <Darin Adler>
- Scripts/make-js-test-wrappers: Added another exception.
- 12:16 PM Changeset in webkit [33973] by
-
- 3 edits in trunk/JavaScriptCore
2008-05-21 Darin Adler <Darin Adler>
- try to fix the Windows build
- profiler/Profiler.cpp: (KJS::Profiler::stopProfiling): Use ptrdiff_t instead of the less-common but incredibly similar ssize_t type.
- wtf/AVLTree.h: (KJS::AVLTree::search): Added a typename for a dependent name that's a type.
- 12:15 PM Changeset in webkit [33972] by
-
- 4 edits3 adds in trunk
2008-05-21 Darin Adler <Darin Adler>
Reviewed by Anders.
- fix <rdar://problem/5952721> bug in JavaScript arguments object property lookup
Test: fast/js/arguments-bad-index.html
- kjs/function.cpp: (KJS::IndexToNameMap::IndexToNameMap): Use unsigned instead of int. (KJS::IndexToNameMap::isMapped): Use unsigned instead of int, and also use the strict version of the numeric conversion function, since we don't want to allow trailing junk. (KJS::IndexToNameMap::unMap): Ditto. (KJS::IndexToNameMap::operator[]): Ditto.
- kjs/function.h: Changed IndexToNameMap::size type from int to unsigned.
LayoutTests:
2008-05-21 Darin Adler <Darin Adler>
Reviewed by Anders.
- test for <rdar://problem/5952721> bug in JavaScript arguments object property lookup
- fast/js/arguments-bad-index-expected.txt: Added.
- fast/js/arguments-bad-index.html: Added.
- fast/js/resources/arguments-bad-index.js: Added.
- 11:34 AM Changeset in webkit [33971] by
-
- 2 edits in trunk/WebKit/mac
2008-05-21 Darin Adler <Darin Adler>
- fix build
- WebView/WebViewPrivate.h: Remove declaration of closeWithFastTeardown. We can add it back later if we want, but if we do, we should probably make some refinements like checking _private->closed and applicationIsTerminating.
- 11:16 AM Changeset in webkit [33970] by
-
- 13 edits in trunk/WebCore
Restores logging of console calls to the STDOUT
when Interpreter::shouldPrintExceptions() is true.
<rdar://problem/5636442> REGRESSION: Console.log no longer logs to
the system console or terminal
<rdar://problem/5146079> JavaScript exception logging should print
accurate file and line info when called from WebScriptObject
Reviewed by Adam Roben.
- bindings/js/JSCustomSQLStatementCallback.cpp:
(WebCore::JSCustomSQLStatementCallback::handleEvent): Remove existing
printf and check for Interpreter::shouldPrintExceptions() since there is
a call to Console::addMessage.
- bindings/js/JSCustomSQLStatementErrorCallback.cpp:
(WebCore::JSCustomSQLStatementErrorCallback::handleEvent): Ditto.
- bindings/js/JSCustomSQLTransactionCallback.cpp:
(WebCore::JSCustomSQLTransactionCallback::handleEvent): Ditto.
- bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
(WebCore::JSCustomSQLTransactionErrorCallback::handleEvent): Ditto.
- bindings/js/JSCustomVoidCallback.cpp:
(WebCore::JSCustomVoidCallback::handleEvent): Ditto.
- bindings/js/JSCustomXPathNSResolver.cpp:
(WebCore::JSCustomXPathNSResolver::lookupNamespaceURI): Ditto.
- bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::printErrorMessage): Ditto.
- bindings/js/ScheduledAction.cpp:
(WebCore::ScheduledAction::execute): Ditto.
- bindings/js/kjs_events.cpp:
(WebCore::JSAbstractEventListener::handleEvent): Ditto.
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::shouldAllowNavigation): Ditto.
- bindings/objc/WebScriptObject.mm:
(WebCore::addExceptionToConsole): Added helper static function that
calls Console::addMessage.
(-[WebScriptObject callWebScriptMethod:withArguments:]): Call addExceptionToConsole.
(-[WebScriptObject evaluateWebScript:]): Ditto.
(-[WebScriptObject setValue:forKey:]): Ditto.
(-[WebScriptObject valueForKey:]): Ditto.
(-[WebScriptObject removeWebScriptKey:]): Ditto.
(-[WebScriptObject webScriptValueAtIndex:]): Ditto.
(-[WebScriptObject setWebScriptValueAtIndex:value:]): Ditto.
- page/Console.cpp:
(WebCore::Console::addMessage): Print the level, message,
URL and line number to STDOUT.
(WebCore::printToStandardOut): Helper static function that
takes a prefix string, ExecState, an argument List and URL.
Prints the prefix and loops through the arguments calling
toString on each and printing the string. Finally printing
the URL and new line.
(WebCore::Console::error): Call printToStandardOut.
(WebCore::Console::info): Ditto.
(WebCore::Console::log): Ditto.
(WebCore::Console::assertCondition): Ditto.
(WebCore::Console::warn): Ditto.
- 11:16 AM Changeset in webkit [33969] by
-
- 15 edits in trunk
Changes to the ownership of Profiles and allows multiple Profiles at a time
Change the Profiler to allow multiple profiles to be running at
the same time. This can happen when you have nested console.profile()
calls. This required two changes. First, the Profiler needed to keep a
Vector of current profiles, instead of one. Second, a Profile needs
to keep track of the global ExecState it started in and the page group
identifier it is tracking.
The stopProfiling call now takes the same arguments as startProfiling.
This makes sure the correct profile is stopped. Passing a null UString
as the title will stop the last profile for the matching ExecState.
<rdar://problem/5951559> Multiple pages profiling can interfere with each other
Reviewed by Kevin McCullough.
- JavaScriptCore.exp: Added new exports. Removed old symbols.
- profiler/Profile.cpp: (KJS::Profile::Profile): New constructor arguments for the originatingGlobalExec and pageGroupIdentifier. (KJS::Profile::stopProfiling): Set the m_originatingGlobalExec to null.
- profiler/Profile.h: (KJS::Profile::create): Additional arguments. (KJS::Profile::originatingGlobalExec): Return m_originatingGlobalExec. (KJS::Profile::pageGroupIdentifier): Return m_pageGroupIdentifier.
- profiler/Profiler.cpp: (KJS::Profiler::findProfile): Added. Finds a Profile that matches the ExecState and title. (KJS::Profiler::startProfiling): Return early if there is already a Profile with the ExecState and title. If not, create a new profile and append it to m_currentProfiles. (KJS::Profiler::stopProfiling): Loops through m_currentProfiles and find the one matching the ExecState and title. If one is found call stopProfiling and return the Profile after removing it from m_currentProfiles. (KJS::dispatchFunctionToProfiles): Helper inline function to loop through m_currentProfiles and call a Profile function. (KJS::Profiler::willExecute): Call dispatchFunctionToProfiles. (KJS::Profiler::didExecute): Ditto.
- profiler/Profiler.h:
WebCore:
Changes to work with the new Profiler API. The Profile is now
stored by the InspectorController when Console.profileEnd is called.
This solves three issues with the previous design. First, we don't
keep profiles around unless the Inspector is enabled. Second, we
only show Profiles initiated by the Page in it's Inspector, not every
Profile for the whole process. Third, we now show Profiles in the
Inspector when they are created.
<rdar://problem/5951562> New profiles aren't added to the Inspector
as they finish
Reviewed by Kevin McCullough.
- bindings/js/JSConsoleCustom.cpp: (WebCore::JSConsole::profileEnd): Added. Calls impl()->profileEnd() and passes the ExecState and arguments.
- page/Console.cpp: (WebCore::Console::profile): (WebCore::Console::profileEnd): Accept the optional title argument and pass it to Profilier::stopProfiling along with the ExecState. Calls InspectorController::addProfile with the result Profile.
- page/Console.h:
- page/Console.idl: Made profileEnd Custom so we can get the ExecState.
- page/InspectorController.cpp: (WebCore::profiles): Renamed from allProfiles. Uses the controller's profiles vector. (WebCore::InspectorController::addProfile): Appends to m_profiles. Calls addScriptProfile if the window is visible. (WebCore::InspectorController::windowScriptObjectAvailable): Renamed allProfiles to profiles. (WebCore::InspectorController::addScriptProfile): Calls addProfile on the JavaScript side. (WebCore::InspectorController::didCommitLoad): Clears m_profiles.
- page/InspectorController.h:
- page/inspector/ProfilesPanel.js: Populates the profiles sidebar the first time the panel is shown after a rest.
- page/inspector/inspector.js: Added addProfile, calls ProfilesPanel's addProfile function.
- 10:53 AM Changeset in webkit [33968] by
-
- 2 edits in trunk/WebKit/mac
2008-05-21 Darin Adler <Darin Adler>
Reviewed by Anders and Kevin Decker.
- fix <rdar://problem/5951130> REGRESSION: crash on quit after reopening windows from previous session
- WebView/WebView.mm: (-[WebViewPrivate dealloc]): Fix assertions to not complain when fast teardown is used. (-[WebView _closePluginDatabases]): Factored out some common code from both versions of close. (-[WebView _closeWithFastTeardown]): Added an underscore to this method's name, since it's internal. Streamlined the code a bit. Added a line of code to set _private->closed (this is the bug fix). (-[WebView _close]): Changed for new method name and to use _closePluginDatabases.
- 10:17 AM Changeset in webkit [33967] by
-
- 7 edits10 adds in trunk
Reviewed by Darin.
<rdar://problem/5908520> REGRESSION (3.1.1-r33033): Crash in WebKit when opening or
refreshing page on people.com
The problem was that STL algorithms do not work with non-conformant comparators, and the
site used sort(function() { return 0.5 - Math.random(); } to randomly shuffle an array.
https://bugs.webkit.org/show_bug.cgi?id=18687
REGRESSION(r32220): ecma/Array/15.4.4.5-3.js test now fails in GMT(BST)
Besides relying on sort stability, this test was just broken, and kept failing with the
new stable sort.
Tests: fast/js/sort-randomly.html
fast/js/sort-stability.html
fast/js/comparefn-sort-stability.html
- kjs/avl_tree.h: Added an AVL tree implementation.
- JavaScriptCore.xcodeproj/project.pbxproj:
- wtf/AVLTree.h: Added. Added an AVL tree implementation.
- kjs/array_instance.cpp: (KJS::ArrayInstance::increaseVectorLength): (KJS::ArrayInstance::sort): (KJS::AVLTreeAbstractorForArrayCompare::get_less): (KJS::AVLTreeAbstractorForArrayCompare::set_less): (KJS::AVLTreeAbstractorForArrayCompare::get_greater): (KJS::AVLTreeAbstractorForArrayCompare::set_greater): (KJS::AVLTreeAbstractorForArrayCompare::get_balance_factor): (KJS::AVLTreeAbstractorForArrayCompare::set_balance_factor): (KJS::AVLTreeAbstractorForArrayCompare::compare_key_key): (KJS::AVLTreeAbstractorForArrayCompare::compare_key_node): (KJS::AVLTreeAbstractorForArrayCompare::compare_node_node): (KJS::AVLTreeAbstractorForArrayCompare::null): (KJS::ArrayInstance::compactForSorting):
- kjs/array_instance.h: increaseVectorLength() now returns a bool to indicate whether it was successful.
- wtf/Vector.h: (WTF::Vector::Vector): (WTF::::operator=): (WTF::::fill): Make these methods fail instead instead of crash when allocation fails, matching resize() and reserveCapacity(), which already had this behavior. Callers need to check for null buffer after making any Vector call that can try to allocate.
- tests/mozilla/ecma/Array/15.4.4.5-3.js: Fixed the test to use a consistent sort function, as suggested in comments to a Mozilla bug filed about it (I'll keep tracking the bug to see what the final resolution is).
- 10:00 AM Changeset in webkit [33966] by
-
- 3 edits3 adds in trunk
Reviewed by Darin.
https://bugs.webkit.org/show_bug.cgi?id=19169
<rdar://5952342> REGRESSION: nakarte.ru searches don't work
Test: http/tests/xmlhttprequest/encode-request-url.html
- platform/KURL.cpp: (WebCore::KURL::init): Don't allow UTF-8 encoded data to be implicitly converted to String, as it will be encoded again by parse().
- 9:59 AM Changeset in webkit [33965] by
-
- 4 edits in trunk/JavaScriptCore
2008-05-20 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/5950867> JSProfiler: Allow the profiler to "Focus" a
profile node.
- Implements focus by adding the idea of a profileNode being visible and adding the ability to reset all of the visible flags.
- profiler/Profile.h: (KJS::Profile::focus):
- profiler/ProfileNode.cpp: (KJS::ProfileNode::ProfileNode): Initialize the visible flag. (KJS::ProfileNode::setTreeVisible): Set the visibility of this node and all of its descendents. (KJS::ProfileNode::focus): Determine if this node should be visible when focusing, if the functionName matches this node's function name or if any of this node's children are visible. (KJS::ProfileNode::restoreAll): Restore all nodes' visible flag. (KJS::ProfileNode::debugPrintData):
- profiler/ProfileNode.h: (KJS::ProfileNode::visible): (KJS::ProfileNode::setVisible):
- 7:38 AM Changeset in webkit [33964] by
-
- 2 edits in trunk/WebCore
2008-05-21 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Simon.
For the Qt port, fix building with Qt for Embedded Linux.
- 7:35 AM Changeset in webkit [33963] by
-
- 3 edits in trunk/WebCore
2008-05-21 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Simon.
For the Qt port, allow building without NPAPI plugin support.
- WebCore.pro:
- plugins/PluginView.h:
- 5:51 AM Changeset in webkit [33962] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
Bug 19116: SquirrelFish shouldn't regress on variable lookups
<https://bugs.webkit.org/show_bug.cgi?id=19116>
Reviewed by Maciej
Optimise cross scope assignment, 0.4% progression in sunspider.
- 5:31 AM Changeset in webkit [33961] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-05-21 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- check property map before symbol table in JSGlobalObject::getOwnPropertySlot 0.5% speedup on SunSpider
- kjs/JSGlobalObject.h: (KJS::JSGlobalObject::getOwnPropertySlot): Check property map before symbol table because symbol table access is likely to have been optimized.
- 5:16 AM Changeset in webkit [33960] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
Bug 19116: SquirrelFish shouldn't regress on variable lookups
<https://bugs.webkit.org/show_bug.cgi?id=19116>
Reviewed by Maciej
Optimise multiscope lookup of statically resolvable function calls.
SunSpider reports a 1.5% improvement, including 37% on
controlflow-recursive for some reason :D
- 3:31 AM Changeset in webkit [33959] by
-
- 10 edits in branches/squirrelfish
2008-05-21 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- give JSGlobalObject a special version of getOwnPropertySlot that tells you if the slot is directly writable (WebCore change using this is a 2.6% speedup on in-browser SunSpider).
- JavaScriptCore.exp:
- kjs/JSGlobalObject.h: (KJS::JSGlobalObject::getOwnPropertySlot):
- kjs/JSVariableObject.h: (KJS::JSVariableObject::symbolTableGet):
- kjs/object.h: (KJS::JSObject::getDirectLocation): (KJS::JSObject::getOwnPropertySlotForWrite):
- kjs/property_map.cpp: (KJS::PropertyMap::getLocation):
- kjs/property_map.h:
- kjs/property_slot.h: (KJS::PropertySlot::putValue):
WebCore:
2008-05-21 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- write directly to the slot we used to check for override properties, when possible 2.6% speedup on in-browser SunSpider
- bindings/js/JSDOMWindowCustom.h: (WebCore::JSDOMWindow::customPut):
- 1:47 AM Changeset in webkit [33958] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
Bug 19116: SquirrelFish shouldn't regress on variable lookups
<https://bugs.webkit.org/show_bug.cgi?id=19116>
Reviewed by Maciej
This restores multiscope optimisation to simple resolve, producing
a 2.6% progression in SunSpider. Have verified that none of the
sites broken by the multiscope optimisation in trunk were effected
by this change.
May 20, 2008:
- 10:47 PM Changeset in webkit [33957] by
-
- 4 edits2 moves in trunk/WebKit/wx
Reviewed by Darin Adler.
Rename wxWebFrame -> wxWebBrowserShell in preparation to introduce a WebFrame counterpart in wx port. (Frame typically means 'top level window' in wx terms.)
https://bugs.webkit.org/show_bug.cgi?id=19041
- 10:01 PM Changeset in webkit [33956] by
-
- 4 edits in branches/squirrelfish/WebCore
2008-05-20 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- inline JSDOMWindow security checks 0.9% speedup to SunSpider in-browser
- bindings/js/JSDOMWindowBase.cpp:
- bindings/js/JSDOMWindowCustom.h: (WebCore::JSDOMWindowBasePrivate::JSDOMWindowBasePrivate): (WebCore::JSDOMWindowBase::allowsAccessFrom): (WebCore::JSDOMWindowBase::allowsAccessFromNoErrorMessage): (WebCore::JSDOMWindowBase::allowsAccessFromPrivate):
- bindings/js/kjs_binding.cpp:
- 9:14 PM Changeset in webkit [33955] by
-
- 1 edit31 adds in trunk/WebCore
2008-05-20 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
Added all of my personal manual tests for the profiler.
- manual-tests/inspector/profiler-test-anonymous-event-handler.html: Added.
- manual-tests/inspector/profiler-test-anonymous-function-called-from-different-contexts.html: Added.
- manual-tests/inspector/profiler-test-anonymous-function-calls-built-in-functions.html: Added.
- manual-tests/inspector/profiler-test-anonymous-function-calls-eval.html: Added.
- manual-tests/inspector/profiler-test-apply.html: Added.
- manual-tests/inspector/profiler-test-built-in-function-calls-anonymous.html: Added.
- manual-tests/inspector/profiler-test-built-in-function-calls-user-defined-function.html: Added.
- manual-tests/inspector/profiler-test-call.html: Added.
- manual-tests/inspector/profiler-test-dead-time.html: Added.
- manual-tests/inspector/profiler-test-event-handler.html: Added.
- manual-tests/inspector/profiler-test-execution-context-and-eval-on-same-line.html: Added.
- manual-tests/inspector/profiler-test-inline-event-handler.html: Added.
- manual-tests/inspector/profiler-test-many-calls-in-the-same-scope.html: Added.
- manual-tests/inspector/profiler-test-multiple-and-different-scoped-anonymous-function-calls.html: Added.
- manual-tests/inspector/profiler-test-multiple-and-different-scoped-function-calls.html: Added.
- manual-tests/inspector/profiler-test-multiple-frames.html: Added.
- manual-tests/inspector/profiler-test-multiple-windows.html: Added.
- manual-tests/inspector/profiler-test-nested-anonymous-functon.html: Added.
- manual-tests/inspector/profiler-test-nested-start-and-stop-profiler.html: Added.
- manual-tests/inspector/profiler-test-no-execution-context.html: Added.
- manual-tests/inspector/profiler-test-one-execution-context.html: Added.
- manual-tests/inspector/profiler-test-profile-calls-in-included-file.html: Added.
- manual-tests/inspector/profiler-test-profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting.html: Added.
- manual-tests/inspector/profiler-test-profiling-from-a-nested-location.html: Added.
- manual-tests/inspector/profiler-test-start-and-stop-profiler-multiple-times.html: Added.
- manual-tests/inspector/profiler-test-two-execution-contexts.html: Added.
- manual-tests/inspector/profiler-test-user-defined-function-calls-built-in-functions.html: Added.
- manual-tests/inspector/resources: Added.
- manual-tests/inspector/resources/other-frame.html: Added.
- manual-tests/inspector/resources/other-window.html: Added.
- manual-tests/inspector/resources/profiler-test-JS-resources.js: Added.
- 8:06 PM Changeset in webkit [33954] by
-
- 2 edits in branches/squirrelfish/WebCore
2008-05-20 Maciej Stachowiak <mjs@apple.com>
Reviewed by Adam.
- use ALWAYS_INLINE on customGetOwnPropertySlot since it wasn't inlining 2% speedup to SunSpider in-browser
- bindings/js/JSDOMWindowCustom.h: (WebCore::JSDOMWindow::customGetOwnPropertySlot):
- 7:50 PM Changeset in webkit [33953] by
-
- 11 edits7 adds in branches/squirrelfish/WebCore
2008-05-20 Maciej Stachowiak <mjs@apple.com>
Reviewed by Adam.
- inline JSDOMWindow's customPut and customGetOwnPropertySlot methods 1.2% speedup to SunSpider in-browser
The approach here is to make the code generator include a
JS{classname}Custom.h header in the autogenerated implementation,
which we can use to provide inline versions.
- bindings/js/JSCSSStyleDeclarationCustom.cpp:
- bindings/js/JSCSSStyleDeclarationCustom.h: Added.
- bindings/js/JSDOMWindowCustom.cpp:
- bindings/js/JSDOMWindowCustom.h: (WebCore::asJSDOMWindow): (WebCore::JSDOMWindow::customGetOwnPropertySlot): (WebCore::JSDOMWindow::customPut):
- bindings/js/JSHTMLAppletElementCustom.cpp:
- bindings/js/JSHTMLAppletElementCustom.h: Added.
- bindings/js/JSHTMLEmbedElementCustom.cpp:
- bindings/js/JSHTMLEmbedElementCustom.h: Added.
- bindings/js/JSHTMLObjectElementCustom.cpp:
- bindings/js/JSHTMLObjectElementCustom.h: Added.
- bindings/js/JSHistoryCustom.cpp:
- bindings/js/JSHistoryCustom.h: Added.
- bindings/js/JSLocationCustom.cpp:
- bindings/js/JSLocationCustom.h: Added.
- bindings/js/JSStorageCustom.cpp:
- bindings/js/JSStorageCustom.h: Added.
- bindings/scripts/CodeGeneratorJS.pm:
- 6:48 PM Changeset in webkit [33952] by
-
- 3 edits in trunk/JavaScriptCore
Fixes a couple performance issues with the profiler. Also fixes
a regression where some nodes wouldn't be added to the tree.
Reviewed by Kevin McCullough.
- profiler/ProfileNode.cpp:
(KJS::ProfileNode::addChild): Compare callIdentifier instead
of functionName.
- profiler/ProfileNode.h:
(CallIdentifier.operator==): Compare the CallIdentifiers in
an order that fails sooner for non-matches.
(CallIdentifier.callIdentifier): Return the CallIdentifier by
reference to prevent making a new copy each time.
- 5:51 PM Changeset in webkit [33951] by
-
- 2 edits in trunk
2008-05-20 Jan Michael Alonzo <jmalonzo@webkit.org>
Reviewed by Alp Toker.
Fix for previous autotools change.
- configure.ac:
- 5:33 PM Changeset in webkit [33950] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
Fixerate the windows build.
Reviewed by NOBODY (Build fix)
- 5:23 PM Changeset in webkit [33949] by
-
- 2 edits in trunk/WebCore
Use KJS::List::getSlice instead of reimplementing it
Rubberstamped and suggested by Sam Weinig.
- bindings/js/JSConsoleCustom.cpp: (WebCore::JSConsole::assertCondition):
- 4:38 PM Changeset in webkit [33948] by
-
- 3 edits in trunk/WebCore
2008-05-20 Kevin Calhoun <kcalhoun@apple.com>
Reviewed by Darin.
Fix <rdar://problem/5929010> Adopt new QTKit methods for <video> implementation
If the class QTVideoRendererWebKitOnly is present use it to render video,
otherwise fall back to existing use of QTMovieView/QTMovieContentView.
- platform/graphics/mac/MediaPlayerPrivateQTKit.h:
- platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate): (WebCore::MediaPlayerPrivate::createQTMovie): (WebCore::QTVideoRendererClass): (WebCore::MediaPlayerPrivate::detachQTMovieView): (WebCore::MediaPlayerPrivate::createQTVideoRenderer): (WebCore::MediaPlayerPrivate::destroyQTVideoRenderer): (WebCore::MediaPlayerPrivate::setUpVideoRendering): (WebCore::MediaPlayerPrivate::tearDownVideoRendering): (WebCore::MediaPlayerPrivate::load): (WebCore::MediaPlayerPrivate::cancelLoad): (WebCore::MediaPlayerPrivate::setVisible): (WebCore::MediaPlayerPrivate::paint): (-[WebCoreMovieObserver newImageAvailable:]):
- 4:32 PM Changeset in webkit [33947] by
-
- 8 edits in trunk/JavaScriptCore
2008-05-20 Kevin McCullough <kmccullough@apple.com>
Reviewed by Darin.
<rdar://problem/5950796> JSProfiler: dump functions are in the code
Removed dump and logging functions from the Release version of the code
and renamed them to be obviously for debugging only.
- JavaScriptCore.exp:
- profiler/Profile.cpp: (KJS::Profile::debugPrintData): (KJS::Profile::debugPrintDataSampleStyle):
- profiler/Profile.h:
- profiler/ProfileNode.cpp: (KJS::ProfileNode::debugPrintData): (KJS::ProfileNode::debugPrintDataSampleStyle):
- profiler/ProfileNode.h:
- profiler/Profiler.cpp:
- profiler/Profiler.h:
- 4:05 PM Changeset in webkit [33946] by
-
- 6 edits1 add in trunk/WebCore
Fix Bug 19134: Inspector should support console.assert
Reviewed by Tim Hatcher.
Test: manual-tests/inspector/console-assert.html
- bindings/js/JSConsoleCustom.cpp: (WebCore::JSConsole::assertCondition): Added.
- bindings/scripts/CodeGeneratorJS.pm: Added parsing of the ImplementationFunction extended attribute, which allows you to override the name of the C++ function used to implement this method.
- manual-tests/inspector/console-assert.html: Added.
- page/Console.cpp: (WebCore::Console::assertCondition): Added.
- page/Console.h:
- page/Console.idl: Added assert().
- 4:05 PM Changeset in webkit [33945] by
-
- 4 edits in trunk/JavaScriptCore
2008-05-20 Kevin McCullough <kmccullough@apple.com>
Reviewed by Adam.
<rdar://problem/5950538> JSProfiler: Keep track of non-JS execution time
We now have an extra node that represents the excess non-JS time.
- Also changed "SCRIPT" and "anonymous function" to be more consistent with the debugger.
- profiler/ProfileNode.cpp: (KJS::ProfileNode::stopProfiling): If this ProfileNode is the head node create a new child that has the excess execution time. (KJS::ProfileNode::calculatePercentages): Moved calculation of the percentages into a function since it's called from multiple places.
- profiler/ProfileNode.h: Add the newly needed functions used above. (KJS::ProfileNode::setTotalTime): (KJS::ProfileNode::setSelfTime): (KJS::ProfileNode::setNumberOfCalls):
- profiler/Profiler.cpp: renamed "SCRIPT" and "anonymous function" to be consistent with the debugger and use constants that can be localized more easily. (KJS::getCallIdentifiers): (KJS::getCallIdentifierFromFunctionImp):
- 2:38 PM Changeset in webkit [33944] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
Bug 19110: SquirrelFish: Google Maps - no maps
<https://bugs.webkit.org/show_bug.cgi?id=19110>
Reviewed by Geoff
Correct a comedy of errors present in my original patch to "fix"
exceptions occurring midway through pre and post increment. This
solution is cleaner than the original, doesn't need the additional
opcodes, and as an added benefit does not break Google Maps.
Sunspider reports a 0.4% progression.
- 2:29 PM Changeset in webkit [33943] by
-
- 4 edits in trunk/JavaScriptCore
2008-05-20 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/5770054> JavaScript profiler (10928)
Removed only profiler-internal use of currentProfile since that concept
is changing.
- profiler/Profile.h: Now stopProfiling takes a time and bool as arguments. The time is used to calculate %s from and the bool tells if this node is the head node and should be the one calculating the time. (KJS::Profile::stopProfiling):
- profiler/ProfileNode.cpp: Ditto. (KJS::ProfileNode::stopProfiling):
- profiler/ProfileNode.h: Ditto.
- 2:02 PM Changeset in webkit [33942] by
-
- 2 edits in trunk/JavaScriptCore
2008-05-20 Kevin McCullough <kmccullough@apple.com>
Accidentally turned on the profiler.
- kjs/config.h:
- 1:59 PM Changeset in webkit [33941] by
-
- 9 edits in trunk/JavaScriptCore
2008-05-20 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/5770054> JavaScript profiler (10928)
Split function name into 3 parts so that the Web Inspector can link it to
the resource location from whence it came.
- kjs/ustring.cpp: Implemented operator> for UStrings (KJS::operator>):
- kjs/ustring.h:
- profiler/Profile.cpp: (KJS::Profile::Profile): Initialize all 3 values. (KJS::Profile::willExecute): Use CallIdentifier struct. (KJS::Profile::didExecute): Ditto.
- profiler/Profile.h: Ditto and remove unused function.
- profiler/ProfileNode.cpp: (KJS::ProfileNode::ProfileNode): Use CallIdentifier struct. (KJS::ProfileNode::willExecute): Ditto and fix an issue where we restarted the m_startTime even though it was already started. (KJS::ProfileNode::didExecute): Ditto. (KJS::ProfileNode::findChild): Ditto. (KJS::functionNameDescendingComparator): Ditto and use new comparator. (KJS::functionNameAscendingComparator): Ditto. (KJS::ProfileNode::printDataInspectorStyle): Use CallIdentifier struct. (KJS::ProfileNode::printDataSampleStyle): Ditto.
- profiler/ProfileNode.h: (KJS::CallIdentifier::CallIdentifier): Describe the CallIdentifier struct (KJS::CallIdentifier::operator== ): (KJS::ProfileNode::create): Use the CallIdentifier struct. (KJS::ProfileNode::callIdentifier): (KJS::ProfileNode::functionName): Now only return the function name, not the url and line number too. (KJS::ProfileNode::url): (KJS::ProfileNode::lineNumber):
- profiler/Profiler.cpp: Use the CallIdentifier struct. (KJS::Profiler::startProfiling): (KJS::Profiler::willExecute): (KJS::Profiler::didExecute): (KJS::getCallIdentifiers): (KJS::getCallIdentifierFromFunctionImp):
- 1:51 PM Changeset in webkit [33940] by
-
- 2 edits in trunk/WebCore
2008-05-20 Alice Liu <alice.liu@apple.com>
Reviewed by Brady.
fix <rdar://problem/5908580> 10A58: Dictionary Panel hangs in WebCore::Cache::pruneDeadResources()
- loader/Cache.cpp: (WebCore::Cache::requestUserCSSStyleSheet): Add a call to resourceAccessed() to more closely mirror what is done in requestResource() (WebCore::Cache::insertInLRUList): Assert that any resource in the LRU list has been accessed. This is early detection of a potential hang later when pruning resources, and also agrees with the early return in removeFromLRUList().
- 12:15 PM Changeset in webkit [33939] by
-
- 6 edits3 adds in trunk
WebCore:
Reviewed by Darin Adler.
- fix https://bugs.webkit.org/show_bug.cgi?id=17655 <rdar://problem/5778077> REGRESSION (3.1.1-TOT): Reproducible crash calling querySelector on viewless Document
Test: fast/dom/SelectorAPI/viewless-document.html
- css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::CSSStyleSelector): Updated to initialize the selector checker. (WebCore::CSSStyleSelector::init): Removed initialization of m_collectRulesOnly, which is now part of the selector checker. (WebCore::CSSStyleSelector::matchRules): Updated for renames and data moved into the selector checker. (WebCore::CSSStyleSelector::matchRulesForList): Ditto. (WebCore::CSSStyleSelector::initForStyleResolve): Added a PseudoId argument, which is used to initialize a data member of the selector checker. Updated for renames. Removed initialization of m_isXMLDoc because this bit is now initialized only once in the selector checker's constructor. (WebCore::CSSStyleSelector::SelectorChecker::SelectorChecker): Added. (WebCore::CSSStyleSelector::SelectorChecker::checkPseudoState): Changed into a SelectorChecker method. (WebCore::CSSStyleSelector::SelectorChecker::checkSelector): Added. Used by querySelector() and querySelectorAll(). (WebCore::CSSStyleSelector::canShareStyleWithElement): Updated for data moved into the selector checker. (WebCore::CSSStyleSelector::matchUARules): Ditto. (WebCore::CSSStyleSelector::styleForElement): (WebCore::CSSStyleSelector::pseudoStyleForElement): Ditto. Also removed code that set the parentStyle variable after the last place it is accessed, and changed to ensure that m_style is set early in this function. (WebCore::CSSStyleSelector::adjustRenderStyle): Updated for data moved into the selector checker. (WebCore::CSSStyleSelector::styleRulesForElement): Ditto. (WebCore::CSSStyleSelector::checkSelector): Ditto. Also changed to pass the element's style and the parent style to the selector checker, as well as the dynamic pseudo variable and the selector attributes vector. (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Added arguments for the style of the base element and its parent. When the elementStyle argument is 0, the style is fetched from the element and its parent as needed. Also changed to take a reference to the dynamic pseudo ID and a pointer to the vector of attributes affecting the match. (WebCore::CSSStyleSelector::applyProperty): Updated for data moved into the selector checker. (WebCore::CSSStyleSelector::checkForGenericFamilyChange): Ditto. (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize): Ditto. (WebCore::CSSStyleSelector::fontSizeForKeyword): Ditto. (WebCore::CSSStyleSelector::getColorFromPrimitiveValue): Ditto. (WebCore::CSSStyleSelector::SelectorChecker::allVisitedStateChanged): Changed into a SelectorChecker method. (WebCore::CSSStyleSelector::SelectorChecker::visitedStateChanged): Ditto.
- css/CSSStyleSelector.h: Added a SelectorChecker class and moved data and methods used in checking selectors into it. (WebCore::CSSStyleSelector::allVisitedStateChanged): Changed to call the SelectorChecker method. (WebCore::CSSStyleSelector::visitedStateChanged): Ditto.
- dom/Node.cpp: (WebCore::Node::querySelector): Changed to use a SelectorChecker instead of the document's style selector.
- dom/SelectorNodeList.cpp: (WebCore::SelectorNodeList::SelectorNodeList): Ditto.
LayoutTests:
Reviewed by Darin Adler.
- test for https://bugs.webkit.org/show_bug.cgi?id=17655 <rdar://problem/5778077> REGRESSION (3.1.1-TOT): Reproducible crash calling querySelector on viewless Document
- fast/dom/SelectorAPI/resources/viewless-document.js: Added.
- fast/dom/SelectorAPI/viewless-document-expected.txt: Added.
- fast/dom/SelectorAPI/viewless-document.html: Added.
- 12:04 PM Changeset in webkit [33938] by
-
- 8 edits1 add in trunk/WebCore
Implements the Profiles panel and Profile view.
Reviewed by Kevin McCullough.
- English.lproj/localizedStrings.js: Added new strings.
- page/inspector/Images/profileIcon.png: Added.
- page/inspector/Images/profilesIcon.png: Changed. New icon design
that fits in with the other toolbar icons.
- page/inspector/ProfileView.js:
(WebInspector.ProfileView): Remove custom table elements
and create a DataGrid. Sorts the profile by descending total time,
since the profiles aren't sorted by default.
(WebInspector.ProfileView.prototype.refresh): Clears the DataGrid
and recreates all the nodes. The selection is preserved.
(WebInspector.ProfileView.prototype.refreshShowAsPercents): Traverse
all the children and change showTotalTimeAsPercent and showSelfTimeAsPercent
to match the ProfileView values. Then call refresh on the child.
(WebInspector.ProfileView.prototype._sortData): Determine the sort
function to call on the head profile node. Call it and then call
refresh to rebuild the DataGrid.
(WebInspector.ProfileView.prototype._mouseDownInDataGrid): Return early
if the event is not a double-click. When it is a double-click, determine
the column that was targeted and if it was total or self toggle the
show as percent property. Call refreshShowAsPercents.
(WebInspector.ProfileDataGridNode):
(WebInspector.ProfileDataGridNode.prototype.get data):
(WebInspector.ProfileDataGridNode.prototype.expand):
(WebInspector.ProfileDataGridNode.prototype.collapse):
(WebInspector.ProfileDataGridNode.prototype._populate):
- page/inspector/ProfilesPanel.js:
(WebInspector.ProfilesPanel):
(WebInspector.ProfilesPanel.prototype.show): Populate the sidebar
with all profiles. This is a workaround until the Inspector
is told about new profiles.
(WebInspector.ProfilesPanel.prototype.reset): Clear the sidebar and
profile views.
(WebInspector.ProfilesPanel.prototype.handleKeyEvent): Pass the key
event to the sidebar.
(WebInspector.ProfilesPanel.prototype.addProfile): Create a
ProfileSidebarTreeElement object and add it to the sidebar.
(WebInspector.ProfilesPanel.prototype.showProfile): Create a ProfileView
and show it.
(WebInspector.ProfilesPanel.prototype.closeVisibleView): Hide the
visible view.
(WebInspector.ProfilesPanel.prototype._startSidebarDragging): Call
WebInspector.elementDragStart.
(WebInspector.ProfilesPanel.prototype._sidebarDragging): Call _updateSidebarWidth.
(WebInspector.ProfilesPanel.prototype._endSidebarDragging):
Call WebInspector.elementDragEnd.
(WebInspector.ProfilesPanel.prototype._updateSidebarWidth): Update the
sidebar width based on the passed in value.
(WebInspector.ProfileSidebarTreeElement): Subclass WebInspector.SidebarTreeElement.
(WebInspector.ProfileSidebarTreeElement.prototype.onselect): Call ProfilesPanel.showProfile.
(WebInspector.ProfileSidebarTreeElement.prototype.get mainTitle): Return profile.title.
(WebInspector.ProfileSidebarTreeElement.prototype.set mainTitle): Do nothing.
(WebInspector.ProfileSidebarTreeElement.prototype.get subtitle): Ditto.
(WebInspector.ProfileSidebarTreeElement.prototype.set subtitle): Ditto.
- page/inspector/inspector.css: New styles for the profile sidebar
item and profile data grid columns.
- page/inspector/inspector.js:
- page/inspector/utilities.js:
(Number.secondsToString): Added a higherResolution argument
that returns fractional milliseconds.
- 11:39 AM Changeset in webkit [33937] by
-
- 4 edits in trunk/WebCore
<rdar://problem/5060458> Elements without AXActions should not return kAXErrorFailure
<rdar://problem/3438014> Might need accessibility solution for context menus in web pages
- 10:12 AM Changeset in webkit [33936] by
-
- 2 edits in trunk/WebCore
Expose the ProfileNode functionName sorting functions on
JavaScriptProfileNode.
Reviewed by Kevin McCullough.
- page/JavaScriptProfileNode.cpp:
(WebCore::sortFunctionNameDescending): Call ProfileNode.
(WebCore::sortFunctionNameAscending): Ditto.
(WebCore::ProfileNodeClass): Add static functions.
- 10:12 AM Changeset in webkit [33935] by
-
- 5 edits in trunk/JavaScriptCore
Rename sortFileName{Ascending,Descending} to
sortFunctionName{Ascending,Descending}.
Reviewed by Kevin McCullough.
- JavaScriptCore.exp:
- kjs/config.h:
- profiler/Profile.h:
- profiler/ProfileNode.cpp:
(KJS::functionNameDescendingComparator):
(KJS::ProfileNode::sortFunctionNameDescending):
(KJS::functionNameAscendingComparator):
(KJS::ProfileNode::sortFunctionNameAscending):
- profiler/ProfileNode.h:
- 9:41 AM Changeset in webkit [33934] by
-
- 12 edits in trunk/WebCore
2008-05-20 Darin Adler <Darin Adler>
Reviewed by Mitz.
- a first small step of CSS DOM refactoring -- the eventual goal is to reduce StyleBase and possibly eliminate it, since it has multiple purposes and unneccessarily ties many classes together
- css/CSSCursorImageValue.cpp: (WebCore::isSVGCursorIdentifier): Mark static so it has internal linkage. (WebCore::resourceReferencedByCursorElement): Ditto. (WebCore::CSSCursorImageValue::CSSCursorImageValue): Removed unused style argument. (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed): Removed code to check if X and Y changed before changing them -- there's no reason to do that. Removed code that depended on the internals of CSSImageValue. The new code uses only protected functions rather than going right at the fields and uing internal knowledge of the base class.
- css/CSSCursorImageValue.h: Added a create function, made constructor private, removed unused style argument.
- css/CSSImageValue.cpp: (WebCore::CSSImageValue::CSSImageValue): Removed unused style argument. (WebCore::CSSImageValue::cachedImageURL): Added. A protected function for use by CSSCursorImageValue that gives the URL. (WebCore::CSSImageValue::clearCachedImage): Added. A protected function for use by CSSCursorImageValue that clears the CachedImage.
- css/CSSImageValue.h: Added create functions, made constructors protected and private, removed unused style argument, made data members private, added some protected functions for use by CSSCursorImageValue.
- css/CSSImportRule.cpp: (WebCore::CSSImportRule::setCSSStyleSheet): Changed to call checkLoaded on the parent. This is part of preparation to move the checkLoaded function from StyleBase to StyleSheet. (WebCore::CSSImportRule::insertedIntoParent): Changed code to check the URL of the style sheet to use the href function of the style sheet rather than the baseURL function. This eliminates an O(n2) algorithm here and reduces the use of baseURL, part of preparation to move it from StyleBase to CSSStyleSheet.
- css/CSSMutableStyleDeclaration.cpp: (WebCore::CSSMutableStyleDeclaration::setImageProperty): Changed to use create function instead of a direct call to new for the CSSImageValue classes.
- css/CSSParser.cpp: (WebCore::CSSParser::parseValue): Ditto. (WebCore::CSSParser::parseContent): Ditto. (WebCore::CSSParser::parseFillImage): Ditto. (WebCore::CSSParser::parseBorderImage): Ditto.
- css/CSSStyleSelector.cpp: Removed unneeded include of CSSImageValue.h.
- rendering/style/RenderStyle.h: Removed unneeded include of CSSCursorImageValue.h, which was causing us to rebuild the world way too often.
- xml/XSLImportRule.cpp: (WebCore::XSLImportRule::setXSLStyleSheet): See change to CSSImportRule above. (WebCore::XSLImportRule::loadSheet): Ditto.
- 8:55 AM Changeset in webkit [33933] by
-
- 2 edits in trunk/WebCore
2008-05-20 Kevin McCullough <kmccullough@apple.com>
Rubber stamped by Adam.
-Minor fix. Should not use a reference since the original may disappear.
- page/Console.cpp: (WebCore::Console::profile):
- 8:40 AM Changeset in webkit [33932] by
-
- 4 edits in trunk
wx build fixes for PluginViewWx.cpp and WebKit/wx/WebView.cpp
- 6:58 AM Changeset in webkit [33931] by
-
- 2 edits in trunk/WebCore
Expose the ProfileNode sorting functions on JavaScriptProfileNode.
Reviewed by Kevin McCullough.
- page/JavaScriptProfileNode.cpp:
(WebCore::sortTotalTimeDescending): Call ProfileNode.
(WebCore::sortTotalTimeAscending): Ditto.
(WebCore::sortSelfTimeDescending): Ditto.
(WebCore::sortSelfTimeAscending): Ditto.
(WebCore::sortCallsDescending): Ditto.
(WebCore::sortCallsAscending): Ditto.
(WebCore::ProfileNodeClass): Add static static functions.
- 6:58 AM Changeset in webkit [33930] by
-
- 4 edits in trunk/JavaScriptCore
Make the profiler use higher than millisecond resolution time-stamps.
Reviewed by Kevin McCullough.
- kjs/DateMath.cpp:
(KJS::getCurrentUTCTime): Call getCurrentUTCTimeWithMicroseconds and
floor the result.
(KJS::getCurrentUTCTimeWithMicroseconds): Copied from the previous
implementation of getCurrentUTCTime without the floor call.
- kjs/DateMath.h: Addded getCurrentUTCTimeWithMicroseconds.
- profiler/ProfileNode.cpp:
(KJS::ProfileNode::ProfileNode): Use getCurrentUTCTimeWithMicroseconds.
- 6:57 AM Changeset in webkit [33929] by
-
- 2 edits in trunk/WebCore
- page/InspectorController.cpp: Change the include for
JavaScriptProfile.h to sue double quotes instead of backets.
- 6:57 AM Changeset in webkit [33928] by
-
- 3 edits in trunk/JavaScriptCore
Fixes a bug in the profiler where call and apply would show up
and double the time spent in a function. We don't want to show call
and apply at all in the profiles. This change excludes them.
Reviewed by Kevin McCullough.
- profiler/ProfileNode.cpp:
(KJS::ProfileNode::stopProfiling): Remove a second for loop and
calculate self time in the existing loop.
- profiler/Profiler.cpp:
(KJS::shouldExcludeFunction): Helper inline function that returns
true in the current function in an InternalFunctionImp and it is
has the functionName call or apply.
(KJS::Profiler::willExecute): Call shouldExcludeFunction and return
early if if returns true.
(KJS::Profiler::didExecute): Ditto.
- 6:57 AM Changeset in webkit [33927] by
-
- 10 edits3 adds1 delete in trunk/WebCore
Adds a DataGrid object that is used for multi-column data
and can contain hierarchical content with disclosure arrows.
A lot of DataGrid was copied from treeoutline.js. This change
makes the database views use the DataGrid. It will later be
used by the ProfileView.
Reviewed by Adam Roben.
- page/inspector/DataGrid.js: Added. Most copied from treeoutline.js
and modified to work with table elements.
- page/inspector/DatabaseQueryView.js:
(WebInspector.DatabaseQueryView.prototype._queryFinished):
Call DatabasesPanel.dataGridForResult and adds the inline style to
the DataGrid element.
- page/inspector/DatabaseTableView.js:
(WebInspector.DatabaseTableView.prototype._queryFinished):
Call DatabasesPanel.dataGridForResult.
- page/inspector/DatabasesPanel.js:
(WebInspector.DatabasesPanel.prototype._tableForResult): Removed.
(WebInspector.DatabasesPanel.prototype.dataGridForResult): Added.
Similar to the previous _tableForResult function, but makes a DataGrid.
- page/inspector/inspector.css: Changes to the data-grid
style rules.
- WebCore.vcproj/WebCore.vcproj: Add DataGrid.js.
- page/inspector/WebKit.qrc: Ditto.
- page/inspector/inspector.html: Ditto.
- 4:52 AM Changeset in webkit [33926] by
-
- 2 edits in trunk
2008-05-20 Jan Michael Alonzo <jmalonzo@webkit.org>
Reviewed by Alp.
http://bugs.webkit.org/show_bug.cgi?id=18483
[Gtk] Autotools should match build-webkit default flags
- configure.ac:
- 3:02 AM Changeset in webkit [33925] by
-
- 15 edits1 add in branches/squirrelfish/WebCore
2008-05-19 Maciej Stachowiak <mjs@apple.com>
Reviewed by Anders.
- inline asDOMWindow (using a new JSDOMWindowCustom.h header) since it is just a cast 1% speedup to SunSpider in-browser
- WebCore.vcproj/WebCore.vcproj:
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/JSCustomVoidCallback.cpp:
- bindings/js/JSCustomXPathNSResolver.cpp:
- bindings/js/JSDOMApplicationCacheCustom.cpp:
- bindings/js/JSDOMWindowBase.cpp:
- bindings/js/JSDOMWindowBase.h:
- bindings/js/JSDOMWindowCustom.cpp:
- bindings/js/JSDOMWindowCustom.h: Added. (WebCore::asJSDOMWindow):
- bindings/js/JSDatabaseCustom.cpp:
- bindings/js/JSDocumentCustom.cpp:
- bindings/js/JSLocationCustom.cpp:
- bindings/js/JSSQLTransactionCustom.cpp:
- bindings/js/JSXMLHttpRequestCustom.cpp:
- page/JavaScriptDebugServer.cpp:
- 2:44 AM Changeset in webkit [33924] by
-
- 2 edits in branches/squirrelfish/WebCore
2008-05-19 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- obtain current inner window of outer window in a more efficient way 1.6% speedup to SunSpider in-browser
- bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::allowsAccessFromPrivate):
- 2:35 AM Changeset in webkit [33923] by
-
- 3 edits in branches/squirrelfish/WebCore
2008-05-19 Maciej Stachowiak <mjs@apple.com>
Reviewed by Adam.
- make impl() method for JSWindow inline 0.6% speedup to SunSpider in-browser
- WebCore.base.exp: Remove now-inline symbol
- bindings/scripts/CodeGeneratorJS.pm: Make the codegen script inline impl() even for classes with a parent class.
- 12:59 AM Changeset in webkit [33922] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-05-20 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- inline JSGlobalObject::getOwnPropertySlot 1% improvement on in-browser SunSpider (a wash command-line)
- kjs/JSGlobalObject.cpp:
- kjs/JSGlobalObject.h: (KJS::JSGlobalObject::getOwnPropertySlot):
- 12:29 AM Changeset in webkit [33921] by
-
- 1 edit in trunk/WebKitTools/ChangeLog
fix changelog
May 19, 2008:
- 11:58 PM Changeset in webkit [33920] by
-
- 3 edits3 adds in branches/squirrelfish
Bug 18752: SQUIRRELFISH: exceptions are not always handled by the vm
<https://bugs.webkit.org/show_bug.cgi?id=18752>
Reviewed by Maciej
Handle exceptions thrown by toString conversion in subscript operators,
this should basically complete exception handling in SquirrelFish.
Sunspider reports no regression.
- 11:58 PM Changeset in webkit [33919] by
-
- 6 edits in branches/squirrelfish
2008-05-17 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Bug 18991: SquirrelFish: Major codegen issue in a.b=expr, a[b]=expr
<https://bugs.webkit.org/show_bug.cgi?id=18991>
Fix the last remaining blocking cases of this bug.
- kjs/grammar.y:
- kjs/nodes.cpp: (KJS::ReadModifyResolveNode::emitCode):
LayoutTests:
- fast/js/codegen-temporaries-expected.txt:
- fast/js/resources/codegen-temporaries.js:
- 11:58 PM Changeset in webkit [33918] by
-
- 21 edits1 copy3 adds in branches/squirrelfish
2008-05-17 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Behold: debugging.
SunSpider reports no change.
- JavaScriptCore.xcodeproj/project.pbxproj: Added DebuggerCallFrame.h/.cpp, and created a debugger folder.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::generate): If the debugger is attached, always generate full scope chains for its sake.
- VM/Machine.cpp: (KJS::Machine::unwindCallFrame): Notify the debugger when unwinding due to an exception, so it doesn't keep stale call frames around.
(KJS::Machine::execute): Set Callee to 0 in eval frames, so the
debugger can distinguish them from function call frames.
(KJS::Machine::debug): Simplified this function, since the debugger
doesn't actually need all the information we used to provide.
(KJS::Machine::privateExecute): Treat debugging hooks like other function
calls, so the code we hook into (the debugger UI) can be optimized.
- kjs/debugger.cpp: Nixed these default callback implementations and made the callbacks pure virtual instead, so the compiler could tell me if I made a mistake in one of the subclasses.
- kjs/debugger.h: Removed a bunch of irrelevent data from the debugger callbacks. Changed from passing an ExecState* to passing a DebuggerCallFrame*, since an ExecState* doesn't contain sufficient information anymore.
- kjs/function.cpp: (KJS::globalFuncEval): Easiest bug fix evar!
WebCore:
2008-05-17 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Updated for API changes in KJS::Debugger.
WebKit/mac:
2008-05-17 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Re-enabled previously disabled debugging functionality.
There are two major changes from how the WebKit debugger used to work:
(1) All the interesting bits are implemented down in JavaScriptCore. The
debugger just calls through to KJS::DebuggerCallFrame for everything.
(2) Instead of copyihng a pointer to an ExecState once, the debugger
copies the DebuggerCallFrame passed to it in each callback. This is
because the VM no longer maintains a fully transparent execution state
to which you can hold a pointer, and the DebuggerCallFrames it vends
are temporaries.
Also, we NULL out a WebScriptCallFrame's DebuggerCallFrame upon return
from its function. This is safer than the old method, which was to
hold a stale ExecState* and hope for the best.
- 11:58 PM Changeset in webkit [33917] by
-
- 10 edits in branches/squirrelfish
2008-05-17 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Bug 18991: SquirrelFish: Major codegen issue in a.b=expr, a[b]=expr
<https://bugs.webkit.org/show_bug.cgi?id=18991>
Ensure that the code generated for assignments uses temporaries whenever
necessary. This patch covers the vast majority of situations, but there
are still a few left.
This patch also adds some missing cases to CodeBlock::dump().
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/CodeGenerator.h: (KJS::CodeGenerator::destinationForAssignResult): (KJS::CodeGenerator::leftHandSideNeedsCopy): (KJS::CodeGenerator::emitNodeForLeftHandSide):
- kjs/NodeInfo.h:
- kjs/grammar.y:
- kjs/nodes.cpp: (KJS::AssignDotNode::emitCode): (KJS::ReadModifyDotNode::emitCode): (KJS::AssignBracketNode::emitCode): (KJS::ReadModifyBracketNode::emitCode): (KJS::ForInNode::ForInNode):
- kjs/nodes.h: (KJS::ReadModifyResolveNode::): (KJS::AssignResolveNode::): (KJS::ReadModifyBracketNode::): (KJS::AssignBracketNode::): (KJS::AssignDotNode::): (KJS::ReadModifyDotNode::):
LayoutTests:
- fast/js/codegen-temporaries-expected.txt:
- fast/js/resources/codegen-temporaries.js:
- 11:58 PM Changeset in webkit [33916] by
-
- 1 edit2 adds in branches/squirrelfish/LayoutTests
Forgot to check in the results to the activation gc tests
- 11:58 PM Changeset in webkit [33915] by
-
- 3 edits4 adds in branches/squirrelfish
Bug 19106: SquirrelFish: Activation is not marked correctly
<https://bugs.webkit.org/show_bug.cgi?id=19106>
Reviewed by Maciej
We can't rely on the symbol table for a count of the number of globals
we need to mark as that misses duplicate parameters and 'this'. Now we
use the actual local register count from the codeBlock.
- 11:57 PM Changeset in webkit [33914] by
-
- 9 edits2 adds in branches/squirrelfish
Bug 19076: SquirrelFish: RegisterFile can be corrupted if implictly reenter global scope with no declared vars
<https://bugs.webkit.org/show_bug.cgi?id=19076>
Reviewed by Geoff
Don't delay allocation of initial global RegisterFile, as we can't guarantee we will be able
to allocate the global 'this' register safely at any point after initialisation of the Global
Object.
Unfortunately this initial allocation caused a regression of 0.2-0.3%, however this patch adds
support for the static slot optimisation for the global Math object which brings it to a 0.3%
progression.
- 11:57 PM Changeset in webkit [33913] by
-
- 3 edits3 adds in branches/squirrelfish
Bug 19098: SquirrelFish: Ref'd temporaries can be clobbered
<https://bugs.webkit.org/show_bug.cgi?id=19098>
Patch from Cameron Zwarich
Reviewed by Oliver
When doing code generation for a statement list, increase the reference
count on a register that might eventually be returned, so that it doesn't
get clobbered by a request for a new temporary.
- 11:57 PM Changeset in webkit [33912] by
-
- 3 edits6 adds in branches/squirrelfish
2008-05-16 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- fixed Bug 19044: SquirrelFish: Bogus values enter evaluation when closing over scope with parameter and var with same name https://bugs.webkit.org/show_bug.cgi?id=19044
- kjs/JSActivation.cpp: (KJS::JSActivation::copyRegisters): Use numLocals from the code block rather than the size of the symbol table for the number of registers to copy, to account for duplicate parameters and vars with the same name as parameters (we still have potentially suboptimal codegen in that we allocate a local register for the var in the latter case but it is never used).
LayoutTests:
2008-05-16 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- fixed Bug 19044: SquirrelFish: Bogus values enter evaluation when closing over scope with parameter and var with same name https://bugs.webkit.org/show_bug.cgi?id=19044
- fast/js/duplicate-param-crash-expected.txt: Added.
- fast/js/duplicate-param-crash.html: Added.
- fast/js/resources/duplicate-param-crash.js: Added.
- fast/js/resources/var-shadows-arg-crash.js: Added.
- fast/js/var-shadows-arg-crash-expected.txt: Added.
- fast/js/var-shadows-arg-crash.html: Added.
- 11:57 PM Changeset in webkit [33911] by
-
- 11 edits in branches/squirrelfish/JavaScriptCore
Revert "Bug 18626: SQUIRRELFISH: support the "slow script" dialog"
This seems to cause a significant perf regression on some systems
- 11:57 PM Changeset in webkit [33910] by
-
- 11 edits in branches/squirrelfish/JavaScriptCore
Bug 18626: SQUIRRELFISH: support the "slow script" dialog
<https://bugs.webkit.org/show_bug.cgi?id=18626>
Reviewed by Maciej
Support the slow script dialog for for(;;), while, and do..while
loops.
- 11:57 PM Changeset in webkit [33909] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-05-15 Geoffrey Garen <ggaren@apple.com>
Not reviewed.
We regret to inform you that your program is crashing because you were
stupid.
- VM/Machine.cpp: (KJS::Machine::privateExecute): Math is hard.
- 11:57 PM Changeset in webkit [33908] by
-
- 10 edits in branches/squirrelfish/JavaScriptCore
2008-05-14 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
A little more debugger action: filled in op_debug. All debugger control
flow works now, but variable inspection and backtraces still don't.
SunSpider reports no change.
- VM/CodeGenerator.cpp: Changed op_debug to accept line number parameters.
- VM/Machine.cpp: (KJS::Machine::getFunctionAndArguments): Moved op_debug into a NEVER_INLINE function to avoid a stunning 10% performance regression. Also factored out a common function for retrieving the function and arguments from a call frame.
- kjs/JSActivation.cpp: (KJS::JSActivation::createArgumentsObject): Use the new factored out function mentioned above.
- kjs/Parser.cpp: (KJS::Parser::parse): Increment m_sourceId before assigning it, so the sourceId we send to the debugger matches the sourceId recorded in the node.
- kjs/nodes.cpp: Emit debugging hooks.
- 11:57 PM Changeset in webkit [33907] by
-
- 6 edits2 adds in branches/squirrelfish
Bug 19024: SQUIRRELFISH: ASSERTION FAILED: activation->isActivationObject() in Machine::unwindCallFrame
<https://bugs.webkit.org/show_bug.cgi?id=19024>
Reviewed by Maciej
This fixes a number of issues. The most important is that we now check every register
file for tainting rather than just looking for function register files as that was
insufficient. Additionally guarded against implicit re-entry into Eval code.
Also added a few additional assertions to reduce the amout of time between something
going wrong and us seeing the error.
- 11:57 PM Changeset in webkit [33906] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-05-14 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
A little more debugger action: emit opcodes for debugger hooks. Right
now, the opcode implementation is just a stub.
SunSpider reports no change.
Some example codegen for "function f() { 1; }":
[ 0] dbg DidEnterCallFrame
[ 2] dbg WillExecuteStatement
[ 4] load tr0, 1(@k0)
[ 7] load tr0, undefined(@k1)
[ 10] dbg WillLeaveCallFrame
[ 12] ret tr0
- 11:57 PM Changeset in webkit [33905] by
-
- 3 edits2 adds in branches/squirrelfish
Bug 19025: SQUIRRELFISH: malformed syntax in onload handler causes crash
<https://bugs.webkit.org/show_bug.cgi?id=19025>
Reviewed by Geoff
Simple fix -- move the use of functionBodyNode to after the null check.
- 11:57 PM Changeset in webkit [33904] by
-
- 3 edits1 copy2 adds in branches/squirrelfish/LayoutTests
Split the binops tests up a bit more
RS=Geoff
- 11:57 PM Changeset in webkit [33903] by
-
- 4 edits2 adds in branches/squirrelfish
2008-05-13 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Fixed a codegen crash with run-time parse errors.
SunSpider reports no change.
emitThrowError needs to return the temporary holding the error, not dst,
since dst may be NULL. In fact, emitThrowError shouldn't take a dst
parameter at all, since exceptions should not modify the destination
register.
LayoutTests:
2008-05-13 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Added layout test for a codegen crash with run-time parse errors.
- fast/js/exception-codegen-crash-expected.txt: Added.
- fast/js/exception-codegen-crash.html: Added.
- 11:57 PM Changeset in webkit [33902] by
-
- 3 edits1 copy1 add in branches/squirrelfish/LayoutTests
Splitting exception sequencing test as it was too long and made DRT unhappy
on non-MacPros.
RS=Geoff
- 11:57 PM Changeset in webkit [33901] by
-
- 10 edits in branches/squirrelfish
Bug 19027: SquirrelFish: Incorrect codegen for pre-increment
<https://bugs.webkit.org/show_bug.cgi?id=19027>
Reviewed by Geoff
This fixes the codegen issues for the pre-inc/decrement operators
to prevent incorrectly clobbering the destination in the event of
an exception.
- 11:57 PM Changeset in webkit [33900] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
2008-05-13 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
A little more debugger action: supply a real line number, sourceId,
and sourceURL in op_new_error.
SunSpider reports a .2% speedup. Not sure what that's about.
- VM/Machine.cpp: (KJS::Machine::privateExecute): Use the new good stuff in op_new_error.
- kjs/nodes.cpp: (KJS::RegExpNode::emitCode): Use the shared emitThrowError instead of rolling our own.
- 11:57 PM Changeset in webkit [33899] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
2008-05-13 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
A little more debugger action: implemented the exception callback.
SunSpider reports a .2% speedup. Not sure what that's about.
- VM/CodeBlock.h: A little refactoring here. Store a pointer to our owner ScopeNode so we can retrieve data from it. This allows us to stop storing copies of the data ourselves. Also, store a "this" register instead of a code type, since we were only using the code type to calculate the "this" register.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::generate): Calculate the "this" register mentioned above. Also, take care of removing "this" from the symbol table after codegen is done, since relying on the timing of a destructor for correct behavior is not so good.
- VM/Machine.cpp: (KJS::Machine::throwException): Invoke the debugger's exception callback. (KJS::Machine::privateExecute): Use the "this" register mentioned above.
- 11:57 PM Changeset in webkit [33898] by
-
- 16 edits in branches/squirrelfish/JavaScriptCore
2008-05-13 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Removed some unused exception machinery.
SunSpider reports a .3% speedup.
- API/JSCallbackObject.h:
- API/JSCallbackObjectFunctions.h:
- JavaScriptCore.exp:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- kjs/internal.cpp:
- kjs/object.cpp:
- kjs/object.h:
- kjs/value.h:
- 11:57 PM Changeset in webkit [33897] by
-
- 12 edits in branches/squirrelfish
2008-05-13 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
A little more debugger action.
- kjs/debugger.cpp:
- kjs/debugger.h: Removed debuggersPresent because it was unused. Replaced AttachedGlobalObject linked list with a HashSet because HashSet is faster and simpler. Changed all functions to return void instead of bool, because no clients ever return false, and we don't want to support it.
- kjs/nodes.cpp: Did some up-keep to avoid build bustage. (KJS::Node::handleException): (KJS::BreakpointCheckStatement::execute): (KJS::FunctionBodyNodeWithDebuggerHooks::execute):
WebCore:
2008-05-13 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Updated for API changes in KJS::Debugger.
- page/JavaScriptDebugServer.cpp: (WebCore::JavaScriptDebugServer::callEvent): (WebCore::JavaScriptDebugServer::atStatement): (WebCore::JavaScriptDebugServer::returnEvent): (WebCore::JavaScriptDebugServer::exception):
- page/JavaScriptDebugServer.h:
WebKit/mac:
2008-05-13 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Updated for API changes in KJS::Debugger.
- WebView/WebFrame.mm: (-[WebFrame _attachScriptDebugger]): Changed the order of operations to fix an ASSERT that can happen when re-entering _attachScriptDebugger.
- 11:57 PM Changeset in webkit [33896] by
-
- 5 edits2 adds in branches/squirrelfish
Bug 18752: SQUIRRELFISH: exceptions are not always handled by the vm
<https://bugs.webkit.org/show_bug.cgi?id=18752>
Reviewed by Darin
Replace old attempt at "branchless" exceptions as the extra information
being passed made gcc an unhappy compiler, replacing these custom toNumber
calls with ordinary toNumber logic (by relying on toNumber now preventing
side effects after an exception has been thrown) provided sufficient leeway
to add the additional checks for the remaining unchecked cases.
This leaves only toString conversions in certain contexts as possibly
misbehaving.
- 11:57 PM Changeset in webkit [33895] by
-
- 27 edits in branches/squirrelfish
2008-05-13 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
First steps toward supporting the debugger API: support the sourceParsed
callback; plus some minor fixups.
SunSpider reports no regression.
- VM/CodeGenerator.h: Removed a misleading comment.
- kjs/Parser.h: Changed the parser to take an ExecState*, so it can implement the sourceParsed callback -- that way, we only have to implement the callback in one place.
- kjs/debugger.cpp: Nixed DebuggerImp, because its sole purpose in life was to demonstrate the misapplication of design patterns.
- kjs/debugger.h: Changed sourceParsed to take a SourceProvider, to reduce copying, and not to return a value, because pausing execution after parsing is complicated, and no clients needed that ability, anyway.
- kjs/grammar.y: Make sure never to pass a NULL SourceElements* to didFinishParsing -- that simplifies some code down the road.
- kjs/nodes.cpp: Don't generate special AST nodes just because the debugger is attached -- that's a relic of the old AST execution model, and those nodes haven't been maintained.
WebCore:
2008-05-13 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Updated JavaScriptDebugServer API to accept a SourceProvider instead
of a UString, to avoid copying.
- page/JavaScriptDebugServer.cpp: (WebCore::JavaScriptDebugServer::sourceParsed): Updated this function not to return a value.
WebKit/mac:
2008-05-13 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Updated WebScriptDebugger API to accept a SourceProvider instead
of a WebCore::String, to avoid copying.
(WebScriptDebugger::sourceParsed): Updated this function not to return
a value.
WebKit/win:
2008-05-13 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Updated for new JS debugging APIs.
- WebScriptDebugServer.cpp: (WebScriptDebugServer::didParseSource): (WebScriptDebugServer::failedToParseSource):
- WebScriptDebugServer.h:
- 11:56 PM Changeset in webkit [33894] by
-
- 7 edits in branches/squirrelfish/LayoutTests
2008-05-13 Maciej Stachowiak <mjs@apple.com>
Reviewed by Sam.
Update results for remainder of split-window merge. The new results are correct.
- http/tests/security/listener/xss-JSTargetNode-onclick-addEventListener-expected.txt:
- http/tests/security/listener/xss-JSTargetNode-onclick-shortcut-expected.txt:
- http/tests/security/listener/xss-XMLHttpRequest-addEventListener-expected.txt:
- http/tests/security/listener/xss-XMLHttpRequest-shortcut-expected.txt:
- http/tests/security/listener/xss-window-onclick-addEventListener-expected.txt:
- http/tests/security/listener/xss-window-onclick-shortcut-expected.txt:
- 11:56 PM Changeset in webkit [33893] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
Bug 18752: SQUIRRELFISH: exceptions are not always handled by the vm
<https://bugs.webkit.org/show_bug.cgi?id=18752>
Reviewed by Geoff
First step: prevent incorrect evaluation of valueOf/toString conversion
in right hand side of expression after earlier conversion throws.
- 11:56 PM Changeset in webkit [33892] by
-
- 5 edits3 adds in branches/squirrelfish
Bug 18934: SQUIRRELFISH: ASSERT @ nytimes.com due to RegisterFile being clobbered
<https://bugs.webkit.org/show_bug.cgi?id=18934>
Reviewed by Geoff
Unfortunately we cannot create new statically optimised globals if there are any
tainted RegisterFiles on the RegisterFileStack. To handle this we re-introduce
(in a slightly cleaner form) the inImplicitCall concept to the RegisterFileStack.
- 11:56 PM Changeset in webkit [33891] by
-
- 5 edits2 adds in branches/squirrelfish
2008-05-12 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Introduced support for function.caller.
Improved support for walking interesting scopes for function introspection.
This fixes all remaining layout tests not blocked by rebasing to trunk.
SunSpider reports no change.
- VM/Machine.cpp: (KJS::Machine::dumpRegisters): Fixed a spacing issue.
LayoutTests:
2008-05-12 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Layout test for function.arguments and function.caller in interesting
scopes.
- fast/js/function-dot-arguments-and-caller-expected.txt: Added.
- fast/js/function-dot-arguments-and-caller.html: Added.
- 11:56 PM Changeset in webkit [33890] by
-
- 3 edits3 adds in branches/squirrelfish
2008-05-11 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Bug 18961: SQUIRRELFISH: Gmail doesn't load
<https://bugs.webkit.org/show_bug.cgi?id=18961>
Fix codegen for logical nodes so that they don't use their destination
as a temporary.
- kjs/nodes.cpp: (KJS::LogicalAndNode::emitCode): (KJS::LogicalOrNode::emitCode):
- fast/js/codegen-temporaries-expected.txt: Added.
- fast/js/codegen-temporaries.html: Added.
- fast/js/resources/codegen-temporaries.js: Added.
- 11:56 PM Changeset in webkit [33889] by
-
- 1 edit1 add in branches/squirrelfish/WebCore
2008-05-10 Maciej Stachowiak <mjs@apple.com>
Build fix.
- add missing forwarding header
- ForwardingHeaders/kjs/SourceProvider.h: Added.
- 11:56 PM Changeset in webkit [33888] by
-
- 38 edits3 copies in branches/squirrelfish
2008-05-10 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- JavaScriptCore part of fix for: "SQUIRRELFISH: function toString broken after calling" https://bugs.webkit.org/show_bug.cgi?id=18869
Three layout tests are fixed:
fast/js/toString-elision-trailing-comma.html
fast/js/toString-prefix-postfix-preserve-parens.html
fast/js/kde/lval-exceptions.html
Functions now save a shared subrange of the original source used
to make them (so in the common case this adds no storage above the
memory cache).
- kjs/SourceProvider.h: Added. (KJS::SourceProvider): New abstract base class for classes that provide on-demand access to the source for a JavaScript program. This allows function objects to have access to their original source without copying. (KJS::UStringSourceProvider): SourceProvider subclass backed by a KJS::UString. (KJS::UStringSourceProvider::create): (KJS::UStringSourceProvider::getRange): (KJS::UStringSourceProvider::data): (KJS::UStringSourceProvider::length): (KJS::UStringSourceProvider::UStringSourceProvider):
- kjs/SourceRange.h: Added. (KJS::SourceRange::SourceRange): Class that holds a SourceProvider and a character range into the source, to encapsulate on-demand access to the source of a function. (KJS::SourceRange::toString):
- VM/Machine.cpp: (KJS::eval): Pass a UStringSourceProvider to the parser.
- kjs/Parser.cpp: (KJS::Parser::parse): Take a SourceProvider and pass it on to the lexer.
- kjs/Parser.h: (KJS::Parser::parse): Take a SourceProvider.
- kjs/lexer.cpp: (KJS::Lexer::setCode): Take a SourceProvider; keep it around, and use it to get the raw buffer and length.
- kjs/lexer.h: (KJS::Lexer::sourceRange): Convenience function to get a source range based on the lexer's source provieder, and char offsets right before and after the desired range.
- kjs/function.cpp: (KJS::globalFuncEval): Pass a UStringSourceProvider to the parser.
- kjs/function_object.cpp: (KJS::functionProtoFuncToString): Use toSourceString to get the source. (KJS::FunctionObjectImp::construct): Give the parser a UStringSourceProvider.
- kjs/grammar.y: When parsing a function declaration, function expression, or getter or setter, tell the function body about its SourceRange.
- kjs/interpreter.cpp: (KJS::Interpreter::checkSyntax): Pass a SourceProvider to the parser. (KJS::Interpreter::evaluate): Pass a SourceProvider to the parser.
- kjs/interpreter.h:
- kjs/nodes.h: (KJS::FunctionBodyNode::setSource): Establish a SourceRange for this function. (KJS::FunctionBodyNode::toSourceString): Get the source string out of the SourceRange. (KJS::FuncExprNode::): Take a SourceRange and set it on the body. (KJS::FuncDeclNode::): ditto
- kjs/testkjs.cpp: (prettyPrintScript): Use a SourceProvider appropriately.
- JavaScriptCore.exp: Export new symbols.
- JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Add new files.
- JavaScriptCore.xcodeproj/project.pbxproj: Add new files.
JavaScriptGlue:
2008-05-10 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- JavaScriptGlue part of fix for: "SQUIRRELFISH: function toString broken after calling" https://bugs.webkit.org/show_bug.cgi?id=18869
- JSRun.cpp: (JSRun::Evaluate): Use UString version of eveluate() instead of the now departed UChar*/length variant; use of the lower-level version was gratuitous in any case. (JSRun::CheckSyntax): Ditto for checkSyntax().
WebCore:
2008-05-10 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- JavaScriptGlue part of fix for: "SQUIRRELFISH: function toString broken after calling" https://bugs.webkit.org/show_bug.cgi?id=18869
- bindings/js/StringSourceProvider.h: Added. SourceProvider subclass backed by a WebCore::String. (WebCore::StringSourceProvider::create): (WebCore::StringSourceProvider::getRange): (WebCore::StringSourceProvider::data): (WebCore::StringSourceProvider::length): (WebCore::StringSourceProvider::StringSourceProvider):
- bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::evaluate): Pass a StringSourceProvider to evaluate() instead of UChar* / length.
- html/HTMLScriptElement.cpp: (WebCore::HTMLScriptElement::text): Modified to return the original string as-is when the script element contains only a single text node, to avoid excess memory use.
- WebCore.vcproj/WebCore.vcproj: Add new file to build.
- WebCore.xcodeproj/project.pbxproj: ditto
LayoutTests:
2008-05-10 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- test changes for: "SQUIRRELFISH: function toString broken after calling" https://bugs.webkit.org/show_bug.cgi?id=18869
All of these tests expected function.toString to somewhat change
things from the raw original source. They are now prepared for the
fact that this does not happen.
- fast/js/function-decompilation-operators.html:
- fast/js/function-names-expected.txt:
- fast/js/function-prototype-expected.txt:
- fast/js/function-prototype.html:
- fast/js/function-toString-object-literals-expected.txt:
- fast/js/function-toString-parentheses-expected.txt:
- fast/js/kde/lval-exceptions-expected.txt:
- fast/js/modify-non-references-expected.txt:
- fast/js/resources/function-names.js:
- fast/js/resources/function-toString-object-literals.js:
- fast/js/resources/function-toString-parentheses.js:
- fast/js/resources/modify-non-references.js:
- fast/js/resources/toString-prefix-postfix-preserve-parens.js:
- fast/js/toString-prefix-postfix-preserve-parens-expected.txt:
- 11:56 PM Changeset in webkit [33887] by
-
- 6 edits in branches/squirrelfish/JavaScriptCore
Bring back RegisterFile tainting in order to correctly handle
natively implemented getters and setters that re-enter JavaScript
Reviewed by Maciej
- 11:56 PM Changeset in webkit [33886] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-05-09 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- track character offsets of open and close braces, in preparation for saving function source
I verified that there is no performance regression from this change.
- kjs/grammar.y:
- kjs/lexer.cpp: (KJS::Lexer::lex): (KJS::Lexer::matchPunctuator):
- kjs/lexer.h:
- 11:56 PM Changeset in webkit [33885] by
-
- 1 edit in branches/squirrelfish/JavaScriptCore/ChangeLog
Debug build fix
No reviewer
- 11:56 PM Changeset in webkit [33884] by
-
- 11 edits in branches/squirrelfish
Build fixes for SquirrelFish on windows.
Reviewed by Geoff
- 11:56 PM Changeset in webkit [33883] by
-
- 2 edits in branches/squirrelfish/LayoutTests
2008-05-09 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Restored the expected results for viewsource-empty-attribute-value.html
to what they were prior to r31100. These results expect that the
top-level name in the frame path is "" instead of "1".
It's not clear how r31100 changed the top-level frame in the frame path
to be named "1". The change definitely wasn't related to any expected
behavior in r31100, which was about default margin-bottom for form
elements in quirks mode.
It's also not clear how squirrelfish changes things back.
Sam mentioned that the test result changes intermittently on trunk.
For now, I don't think we need to think deeply about this issue,
since the "" result seems more correct than the "1" result.
- fast/frames/viewsource-empty-attribute-value-expected.txt:
- 11:56 PM Changeset in webkit [33882] by
-
- 1 edit1 add in branches/squirrelfish/LayoutTests
2008-05-09 Geoffrey Garen <ggaren@apple.com>
Added expected results for this test.
- fast/js/closure-inside-extra-arg-call-expected.txt: Added.
- 11:56 PM Changeset in webkit [33881] by
-
- 6 edits in branches/squirrelfish/WebCore
2008-05-08 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Fixed platform/mac/plugins/bindings-test-objc.html.
I've restored -[WebScriptObject setException] and
+[WebScriptObject throwException].
Instead of mucking around in the JavaScript engine's execution state,
throwing an exception sets a global exception string, along with the
environment in which to throw it. An ObjC callback checks the global
exception string and, if it's non-nil and the environment matches the
current exceution environment, throws the global exception string as a
JS exception.
I also removed the old currentGlobalObject infrastructure: it's no longer
used.
- 11:56 PM Changeset in webkit [33880] by
-
- 3 edits2 adds in branches/squirrelfish
2008-05-08 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff.
- fix activation tearoff in the case where functions are called with too many arguments
Fixes:
fast/canvas/patternfill-repeat.html
fast/dom/SelectorAPI/bug-17313.html
- VM/Machine.cpp: (KJS::slideRegisterWindowForCall): (KJS::scopeChainForCall): (KJS::Machine::execute): (KJS::Machine::privateExecute):
LayoutTests:
2008-05-08 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff.
Add test cases for failures similar to the SquirrelFish failure on
fast/dom/SelectorAPI/bug-17313.html
- fast/js/closure-inside-extra-arg-call.html: Added.
- fast/js/resources/closure-inside-extra-arg-call.js: Added.
- 11:56 PM Changeset in webkit [33879] by
-
- 4 edits4 adds in branches/squirrelfish
2008-05-08 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Fixed failure in fast/canvas/canvas-pattern-behaviour.html.
SunSpider reports a small speedup. Not sure what that's about.
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump): Fixed op_call_eval to dump as "op_call_eval". This helped me while debugging.
- VM/Machine.cpp: (KJS::Machine::unwindCallFrame): When looking for an activation to tear off, don't use the scope chain. Inside eval, the scope chain doesn't belong to us; it belongs to our calling function.
Also, don't use the needsFullScopeChain flag to decide whether to tear
off the activation. "function.arguments" can create an activation
for a function whose needsFullScopeChain flag is set to false.
LayoutTests:
2008-05-08 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Added specific test cases for the root cause of squirrelfish's failure
in fast/canvas/canvas-pattern-behaviour.html.
- fast/js/exception-thrown-from-eval-inside-closure-expected.txt: Added.
- fast/js/exception-thrown-from-eval-inside-closure.html: Added.
- fast/js/exception-thrown-from-function-with-lazy-activation-expected.txt: Added.
- fast/js/exception-thrown-from-function-with-lazy-activation.html: Added.
- 11:56 PM Changeset in webkit [33878] by
-
- 2 edits in branches/squirrelfish/LayoutTests
2008-05-08 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Updated test results to reflect correct behavior: The line number in
the old results was off by 2.
- fast/js/recursion-limit-equal-expected.txt:
- 11:56 PM Changeset in webkit [33877] by
-
- 2 edits2 moves6 deletes in branches/squirrelfish/LayoutTests
2008-05-08 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- move frame.xhtml and iframe.xhtml into a resources dir, as they were never meant to be tests
- dom/xhtml/level2/html/HTMLFrameElement09.xhtml-disabled:
- dom/xhtml/level2/html/frame.xhtml: Removed.
- dom/xhtml/level2/html/iframe.xhtml: Removed.
- dom/xhtml/level2/html/resources/frame.xhtml: Copied from dom/xhtml/level2/html/frame.xhtml.
- dom/xhtml/level2/html/resources/iframe.xhtml: Copied from dom/xhtml/level2/html/iframe.xhtml.
- platform/mac/dom/xhtml/level2/html/frame-expected.checksum: Removed.
- platform/mac/dom/xhtml/level2/html/frame-expected.png: Removed.
- platform/mac/dom/xhtml/level2/html/frame-expected.txt: Removed.
- platform/mac/dom/xhtml/level2/html/iframe-expected.checksum: Removed.
- platform/mac/dom/xhtml/level2/html/iframe-expected.png: Removed.
- platform/mac/dom/xhtml/level2/html/iframe-expected.txt: Removed.
- 11:56 PM Changeset in webkit [33876] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-05-08 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- fix function.call for calls of more than 8 arguments
Fixes svg/carto.net/button.svg
- kjs/list.cpp: (KJS::List::getSlice): properly set up the m_buffer of the target list.
- 11:55 PM Changeset in webkit [33875] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-05-08 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- don't return a null RegisterID from RegExpNode in the exception case, since the caller may need a real register
Fixes:
- fast/regex/early-acid3-86.html
- http/tests/misc/acid3.html
- kjs/nodes.cpp: (KJS::RegExpNode::emitCode):
- 11:55 PM Changeset in webkit [33874] by
-
- 13 edits2 adds in branches/squirrelfish/LayoutTests
o2008-05-07 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Added this test to demonstrate that, for "f(x)", it is correct to evaluate
"x" even if "f" is not a function, and therefore "f(x)" will throw an exception.
- fast/js/function-argument-evaluation-before-exception-expected.txt: Added.
- fast/js/function-argument-evaluation-before-exception.html: Added.
These tests now have an extra "access denied" message in them, because
of the behavior change mentioned above.
I also added try/catch clauses to eliminate the "is not object"
exception messages from the test output.
- http/tests/security/listener/resources/targetChild-JSTargetNode-onclick-addEventListener.html:
- http/tests/security/listener/resources/targetChild-JSTargetNode-onclick-shortcut.html:
- http/tests/security/listener/resources/targetChild-XMLHttpRequest-addEventListener.html:
- http/tests/security/listener/resources/targetChild-XMLHttpRequest-shortcut.html:
- http/tests/security/listener/resources/targetChild-window-onclick-addEventListener.html:
- http/tests/security/listener/resources/targetChild-window-onclick-shortcut.html:
- http/tests/security/listener/xss-JSTargetNode-onclick-addEventListener-expected.txt:
- http/tests/security/listener/xss-JSTargetNode-onclick-shortcut-expected.txt:
- http/tests/security/listener/xss-XMLHttpRequest-addEventListener-expected.txt:
- http/tests/security/listener/xss-XMLHttpRequest-shortcut-expected.txt:
- http/tests/security/listener/xss-window-onclick-addEventListener-expected.txt:
- http/tests/security/listener/xss-window-onclick-shortcut-expected.txt:
- 11:55 PM Changeset in webkit [33873] by
-
- 11 edits in branches/squirrelfish/LayoutTests
2008-05-07 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Fixed up a few more tests that depended on the exact text of exception
messages.
- In these tests, I fixed a bug in frame.html and iframe.html that caused a function to execute too many times.
- dom/html/level2/html/HTMLFrameElement09-expected.txt:
- dom/html/level2/html/HTMLIFrameElement11-expected.txt:
- dom/html/level2/html/resources/frame.html:
- dom/html/level2/html/resources/iframe.html:
- I changed these tests to explicitly report exceptions, so their results don't depend on how the engine constructs messages for implicit exceptions:
- dom/xhtml/level2/html/HTMLDocument17-expected.txt:
- dom/xhtml/level2/html/HTMLDocument18-expected.txt:
- dom/xhtml/level2/html/HTMLDocument19-expected.txt:
- dom/xhtml/level2/html/HTMLDocument20-expected.txt:
- dom/xhtml/level2/html/HTMLDocument21-expected.txt:
- dom/xhtml/level2/html/selfxhtml.js:
- 11:55 PM Changeset in webkit [33872] by
-
- 9 edits in branches/squirrelfish/JavaScriptCore
Partial fix for current performance regressions.
Patch from Cameron Zwarich
Reviewed by Oliver
Fix a performance regression caused by the introduction of property
attributes to SymbolTable in r32859 by encoding the attributes and the
register index into a single field of SymbolTableEntry.
This leaves Node::optimizeVariableAccess() definitely broken, although
it was probably not entirely correct in SquirrelFish before this change.
- 11:55 PM Changeset in webkit [33871] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-05-06 Maciej Stachowiak <mjs@apple.com>
Rubber stamped by Oliver.
- add missing ! in an assert that I failed to reverse
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::CodeGenerator):
- 11:55 PM Changeset in webkit [33870] by
-
- 282 edits in branches/squirrelfish/LayoutTests
2008-05-06 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
To facilitate merging between the squirrelfish branch and trunk, I
edited a bunch of layout tests to make sure their results don't depend
on the exact text of an exception message generated by the JavaScript engine.
(We do want to test JavaScript exception messages -- we just don't want
to test them 300 times over, in tests that aren't supposed to be about
JavaScript at all.)
- I fixed bugs that were causing these tests to throw exceptions by accident, and updated results to reflect correct behavior:
- editing/selection/contenteditable-click-inside.html:
- platform/mac/editing/selection/contenteditable-click-inside-expected.checksum:
- platform/mac/editing/selection/contenteditable-click-inside-expected.png:
- platform/mac/editing/selection/contenteditable-click-inside-expected.txt:
- editing/selection/contenteditable-click-outside.html:
- platform/mac/editing/selection/contenteditable-click-outside-expected.checksum:
- platform/mac/editing/selection/contenteditable-click-outside-expected.png:
- platform/mac/editing/selection/contenteditable-click-outside-expected.txt:
- fast/forms/selected-index-assert.html:
- fast/forms/selected-index-assert-expected.txt:
- tables/mozilla_expected_failures/core/captions1.html:
- platform/mac/tables/mozilla_expected_failures/core/captions1-expected.txt:
- I changed these tests to explicitly throw/report exceptions, so their results don't depend on how the engine constructs messages for implicit exceptions:
- fast/xpath/nsresolver-exception.xhtml:
- fast/xpath/nsresolver-exception-expected.txt:
- platform/mac/fast/AppleScript/001.html:
- platform/mac/fast/AppleScript/001-expected.txt:
- dom/xhtml/level3/core/selfxhtml.js
- dom/xhtml/level3/core/*expected.txt (about 280 of these changed)
- 11:54 PM Changeset in webkit [33869] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-05-06 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- fixed "SQUIRRELFISH: window.this shows up as a property, but it shouldn't" https://bugs.webkit.org/show_bug.cgi?id=18868
The basic approach is to have "this" only be present in the symbol
table at compile time, not runtime.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::~CodeGenerator): Remove "this" from symbol table. (KJS::CodeGenerator::CodeGenerator): Add "this" back when re-using a symbol table.
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::execute): Don't assert that "this" is in the symbol table.
- 11:54 PM Changeset in webkit [33868] by
-
- 12 edits in branches/squirrelfish/WebCore
Bug 18866: SQUIRRELFISH: JS/ObjC bridge is broken <https://bugs.webkit.org/show_bug.cgi?id=18866>
Bug 18867: SQUIRRELFISH: JS/NPRuntime bridge is broken <https://bugs.webkit.org/show_bug.cgi?id=18867>
Reviewed by Maciej
This fixes function binding logic for the ObjC and NPRuntime by
replacing incorrect implementations of implementsCall (which is
no longer virtual) with implementations of getCallData.
- 11:54 PM Changeset in webkit [33867] by
-
- 9 edits in branches/squirrelfish/JavaScriptCore
2008-05-06 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Trivial support for function.arguments: Currently, we only support
function.arguments from within the scope of function.
This fixes the remaining Mozilla JS test failures.
SunSpider reports no change.
- JavaScriptCore.exp:
- VM/Machine.cpp: (KJS::Machine::privateExecute): Separated scope chain deref from activation register copying: since it is now possible for client code to create an activation on behalf of a function that otherwise wouldn't need one, having an activation no longer necessarily means that you need to deref the scope chain.
(KJS::Machine::getCallFrame): For now, this function only examines the
current scope. Walking parent scopes requires some refactoring in the
way we track execution stacks.
- kjs/ExecState.cpp: (KJS::ExecState::ExecState): We use a negative call frame offset to indicate that a given scope is not a function call scope.
- 11:54 PM Changeset in webkit [33866] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
Fix call frame set up for native -> JS function calls.
Review by Geoff
- 11:54 PM Changeset in webkit [33865] by
-
- 8 edits2 adds in branches/squirrelfish
2008-05-05 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Fixed ecma_3/Object/8.6.2.6-001.js, and similar bugs.
SunSpider reports a .4% speedup. Not sure what that's about.
- VM/Machine.cpp: (KJS::Machine::privateExecute): Check for exception return from equal, since toPrimitive can throw.
- kjs/operations.cpp: (KJS::strictEqual): In response to an error I made in an earlier version of this patch, I changed strictEqual to make clear the fact that it performs no conversions and can't throw, making it slightly more efficient in the process.
LayoutTests:
2008-05-05 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Layout test for exceptions thrown from equality comparisons.
- fast/js/exception-thrown-from-equal-expected.txt: Added.
- fast/js/exception-thrown-from-equal.html: Added.
- 11:54 PM Changeset in webkit [33864] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-05-05 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- fix some dumb mistakes in my last patch
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitPushScope): (KJS::CodeGenerator::emitGetPropertyNames):
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- 11:54 PM Changeset in webkit [33863] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
2008-05-05 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- document opcodes relating to jumps, scopes, and property name iteration
Documented jmp, jtrue, false, push_scope, pop_scope, get_pnames,
next_pname and jmp_scopes.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitJump): (KJS::CodeGenerator::emitJumpIfTrue): (KJS::CodeGenerator::emitJumpIfFalse): (KJS::CodeGenerator::emitPushScope): (KJS::CodeGenerator::emitNextPropertyName): (KJS::CodeGenerator::emitGetPropertyNames):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- kjs/nodes.cpp: (KJS::LogicalAndNode::emitCode): (KJS::LogicalOrNode::emitCode): (KJS::ConditionalNode::emitCode): (KJS::IfNode::emitCode): (KJS::IfElseNode::emitCode): (KJS::DoWhileNode::emitCode): (KJS::WhileNode::emitCode): (KJS::ForNode::emitCode): (KJS::ForInNode::emitCode): (KJS::WithNode::emitCode):
- 11:54 PM Changeset in webkit [33862] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
Bug 18749: SQUIRRELFISH: const support is broken
<https://bugs.webkit.org/show_bug.cgi?id=18749>
Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Adds support for const during code generation.
Fixes 2 layout tests.
- 11:54 PM Changeset in webkit [33861] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
2008-05-04 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff.
- document some more opcodes (and fix argument names)
Added docs for eq, neq, stricteq, nstriceq, less and lesseq.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitEqual): (KJS::CodeGenerator::emitNotEqual): (KJS::CodeGenerator::emitStrictEqual): (KJS::CodeGenerator::emitNotStrictEqual): (KJS::CodeGenerator::emitLess): (KJS::CodeGenerator::emitLessEq):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- kjs/nodes.cpp: (KJS::LessNode::emitCode): (KJS::GreaterNode::emitCode): (KJS::LessEqNode::emitCode): (KJS::GreaterEqNode::emitCode): (KJS::EqualNode::emitCode): (KJS::NotEqualNode::emitCode): (KJS::StrictEqualNode::emitCode): (KJS::NotStrictEqualNode::emitCode): (KJS::CaseBlockNode::emitCodeForBlock):
- 11:54 PM Changeset in webkit [33860] by
-
- 10 edits in branches/squirrelfish/JavaScriptCore
2008-05-04 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
More scaffolding for f.arguments.
Track the offset of the last call frame in the ExecState, so we can
produce a backtrace at any time.
Also, record numLocals, the sum of numVars + numParameters, in each code
block, to make updates to the ExecState a little cheaper than they
would be otherwise.
We now use numLocals in a bunch of places where we used to calculate
numVars + numParameters or -numVars - numParameters.
Reports are mixed, but all in all, this seems to be a wash on SunSpider.
- 11:54 PM Changeset in webkit [33859] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
Whoops, correctly handle properties that don't exist in the
symbol table.
Reviewed by Geoff
- 11:54 PM Changeset in webkit [33858] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
Add attribute information to SymbolTable as ground work for
various DontEnum and ReadOnly issues.
Reviewed by Geoff
- 11:54 PM Changeset in webkit [33857] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
2008-05-04 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
More scaffolding for f.arguments.
Store the register file associated with an ExecState in the ExecState.
SunSpider reports no change.
- kjs/JSGlobalObject.h: (KJS::JSGlobalObject::JSGlobalObjectData::JSGlobalObjectData): Moved registerFileStack above globalExec, so it gets initialized first. Removed remnants of old activation scheme.
- 11:54 PM Changeset in webkit [33856] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
2008-05-04 Maciej Stachowiak <mjs@apple.com>
Rubber stamped by Oliver.
- renamed a few opcodes and fixed assembly formatting to accomodate the longest opcode
equal --> eq
nequal --> neq
resolve_base_and_property --> resolve_with_base
resolve_base_and_func --> resolve_func
get_prop_id --> get_by_id
put_prop_id --> put_by_id
delete_prop_id --> del_by_id
get_prop_val --> get_by_val
put_prop_val --> put_by_val
delete_prop_val --> del_by_val
put_prop_index --> put_by_index
- VM/CodeBlock.cpp: (KJS::printUnaryOp): (KJS::printBinaryOp): (KJS::printConditionalJump): (KJS::CodeBlock::dump):
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitEqual): (KJS::CodeGenerator::emitNotEqual): (KJS::CodeGenerator::emitResolveWithBase): (KJS::CodeGenerator::emitResolveFunction): (KJS::CodeGenerator::emitGetById): (KJS::CodeGenerator::emitPutById): (KJS::CodeGenerator::emitDeleteById): (KJS::CodeGenerator::emitGetByVal): (KJS::CodeGenerator::emitPutByVal): (KJS::CodeGenerator::emitDeleteByVal): (KJS::CodeGenerator::emitPutByIndex):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Opcode.h:
- kjs/nodes.cpp: (KJS::ArrayNode::emitCode): (KJS::PropertyListNode::emitCode): (KJS::BracketAccessorNode::emitCode): (KJS::DotAccessorNode::emitCode): (KJS::EvalFunctionCallNode::emitCode): (KJS::FunctionCallResolveNode::emitCode): (KJS::FunctionCallBracketNode::emitCode): (KJS::FunctionCallDotNode::emitCode): (KJS::PostIncResolveNode::emitCode): (KJS::PostDecResolveNode::emitCode): (KJS::PostIncBracketNode::emitCode): (KJS::PostDecBracketNode::emitCode): (KJS::PostIncDotNode::emitCode): (KJS::PostDecDotNode::emitCode): (KJS::DeleteResolveNode::emitCode): (KJS::DeleteBracketNode::emitCode): (KJS::DeleteDotNode::emitCode): (KJS::TypeOfResolveNode::emitCode): (KJS::PreIncResolveNode::emitCode): (KJS::PreDecResolveNode::emitCode): (KJS::PreIncBracketNode::emitCode): (KJS::PreDecBracketNode::emitCode): (KJS::PreIncDotNode::emitCode): (KJS::PreDecDotNode::emitCode): (KJS::ReadModifyResolveNode::emitCode): (KJS::AssignResolveNode::emitCode): (KJS::AssignDotNode::emitCode): (KJS::ReadModifyDotNode::emitCode): (KJS::AssignBracketNode::emitCode): (KJS::ReadModifyBracketNode::emitCode): (KJS::ConstDeclNode::emitCodeSingle): (KJS::ForInNode::emitCode): (KJS::TryNode::emitCode):
- 11:54 PM Changeset in webkit [33855] by
-
- 3 edits3 adds in branches/squirrelfish
Fix assertion when accessing arguments object with too many arguments provided
Reviewed by Maciej
The arguments constructor was assuming that the register offset given for argv
was an absolute offset into the registerfile, rather than the offset from the
frame. This patches corrects that issue.
- 11:54 PM Changeset in webkit [33854] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-05-04 Geoffrey Garen <ggaren@apple.com>
Rubber stamped by Sam Weinig.
Cleaned up Machine.cpp according to our style guidelines: moved static
data to the top of the file; moved stand-alone functions below that;
moved the Machine constructor above other Machine member functions.
- 11:54 PM Changeset in webkit [33853] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-05-03 Maciej Stachowiak <mjs@apple.com>
Reviewed by Sam.
- fix accidental breakage from last patch
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- 11:54 PM Changeset in webkit [33852] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
2008-05-03 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff.
- a bunch more opcode documentation and corresponding parameter name fixes
I renamed a few opcodes:
type_of --> typeof (that's what the JS operator is named)
instance_of --> instanceof (ditto)
create_error --> new_error (for consistency with other new_* opcodes)
I documented the following opcodes:
- load
- new_object
- new_array
- new_regexp
- mov
- pre_inc
- pre_dec
- post_inc
- post_dec
- to_jsnumber
- negate
- bitnot
- not
- instanceof
- typeof
- in
- new_func
- new_funcexp
- new_error
I also fixed formatting on some existing opcode docs.
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitMove): (KJS::CodeGenerator::emitNot): (KJS::CodeGenerator::emitPreInc): (KJS::CodeGenerator::emitPreDec): (KJS::CodeGenerator::emitPostInc): (KJS::CodeGenerator::emitPostDec): (KJS::CodeGenerator::emitToJSNumber): (KJS::CodeGenerator::emitNegate): (KJS::CodeGenerator::emitBitNot): (KJS::CodeGenerator::emitInstanceOf): (KJS::CodeGenerator::emitTypeOf): (KJS::CodeGenerator::emitIn): (KJS::CodeGenerator::emitLoad): (KJS::CodeGenerator::emitNewObject): (KJS::CodeGenerator::emitNewArray): (KJS::CodeGenerator::emitNewRegExp): (KJS::CodeGenerator::emitNewError):
- VM/CodeGenerator.h: (KJS::CodeGenerator::scopeDepth): (KJS::CodeGenerator::addVar):
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Opcode.h:
- kjs/nodes.cpp: (KJS::Node::emitThrowError): (KJS::RegExpNode::emitCode): (KJS::TypeOfValueNode::emitCode): (KJS::UnaryPlusNode::emitCode): (KJS::NegateNode::emitCode): (KJS::BitwiseNotNode::emitCode): (KJS::LogicalNotNode::emitCode): (KJS::InstanceOfNode::emitCode): (KJS::InNode::emitCode):
- 11:54 PM Changeset in webkit [33851] by
-
- 2 edits2 adds in branches/squirrelfish/JavaScriptCore
2008-05-03 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff and Sam.
- generate HTML bytecode docs at build time
- DerivedSources.make:
- docs: Added.
- docs/make-bytecode-docs.pl: Added.
- 11:54 PM Changeset in webkit [33850] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-05-03 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Update ExecState::m_scopeChain when switching scope chains inside the
machine.
This fixes uses of lexicalGlobalObject, such as, in a subframe
alert(top.makeArray() instanceof Array ? "FAIL" : "PASS");
and a bunch of the security failures listed in
https://bugs.webkit.org/show_bug.cgi?id=18870. (Those tests still fail,
seemingly because of regressions in exception messages).
SunSpider reports no change.
- VM/Machine.cpp: Factored out scope chain updating into a common function that takes care to update ExecState::m_scopeChain, too.
- kjs/ExecState.h: I made Machine a friend of ExecState so that Machine could update ExecState::m_scopeChain, even though that value is read-only for everyone else.
- kjs/JSGlobalObject.h: (KJS::JSGlobalObject::JSGlobalObjectData::JSGlobalObjectData): Changed this client to be a little friendlier to ExecState's internal storage type for scope chain data.
- 11:54 PM Changeset in webkit [33849] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-05-03 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Fixed https://bugs.webkit.org/show_bug.cgi?id=18876
Squirrelfish: ScopeChainNode leak in op_jmp_scopes.
SunSpider reports no change.
- VM/Machine.cpp: (KJS::Machine::privateExecute): Don't construct a ScopeChain object, since the direct threaded interpreter will goto across its destructor.
- 11:53 PM Changeset in webkit [33848] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-05-03 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
A bit more efficient fix than r32832: Don't copy globals into function
register files; instead, have the RegisterFileStack track only the base
of the last *global* register file, so the global object's register
references stay good.
SunSpider reports a .3% speedup. Not sure what that's about.
- 11:53 PM Changeset in webkit [33847] by
-
- 6 edits in branches/squirrelfish/JavaScriptCore
Bug 18864: SquirrelFish: Support getter and setter definition in object literals
<https://bugs.webkit.org/show_bug.cgi?id=18864>
Reviewed by Maciej
Add new opcodes to allow us to add getters and setters to an object. These are
only used by the codegen for object literals.
- 11:53 PM Changeset in webkit [33846] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-05-02 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- properly copy globals into and out of implicit call register files, otherwise they will fail at global lookup
Fixes fast/js/array-tostring-and-join.html layout test.
- VM/RegisterFileStack.cpp: (KJS::RegisterFileStack::pushGlobalRegisterFile): (KJS::RegisterFileStack::popGlobalRegisterFile): (KJS::RegisterFileStack::pushFunctionRegisterFile): (KJS::RegisterFileStack::popFunctionRegisterFile):
- 11:53 PM Changeset in webkit [33845] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
2008-05-02 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Fixed https://bugs.webkit.org/show_bug.cgi?id=18822
SQUIRRELFISH: incorrect eval used in some cases
Changed all code inside the machine to fetch the lexical global object
directly from the scope chain, instead of from the ExecState.
Clients who fetch the lexical global object through the ExecState
still don't work.
SunSpider reports no change.
- VM/Machine.cpp: (KJS::Machine::privateExecute): Fetch the lexical global object from the scope chain.
- kjs/ExecState.h: (KJS::ExecState::ExecState::lexicalGlobalObject): Moved the logic for this function into ScopeChainNode, but kept this function around to support existing clients.
- 11:53 PM Changeset in webkit [33844] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-05-02 Geoffrey Garen <ggaren@apple.com>
Rubber stamped by Oliver Hunt.
Removed ExecState.cpp from AllInOneFile.cpp, for a .2% speedup.
- JavaScriptCore.xcodeproj/project.pbxproj:
- kjs/AllInOneFile.cpp:
- 11:53 PM Changeset in webkit [33843] by
-
- 2 edits in branches/squirrelfish/LayoutTests
2008-05-01 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- bump up the numbers in this test to account for our now much higher recursion capability.
- fast/js/deep-recursion-test.html:
- 11:53 PM Changeset in webkit [33842] by
-
- 6 edits in branches/squirrelfish/JavaScriptCore
Bug 18827: SquirrelFish: Prevent getters and setters from destroying the current RegisterFile
<https://bugs.webkit.org/show_bug.cgi?id=18827>
Reviewed by Maciej and Geoff
Remove safe/unsafe RegisterFile concept, and instead just add additional
logic to ensure we always push/pop RegisterFiles when executing getters
and setters, similar to the logic for valueOf and toString.
- 11:53 PM Changeset in webkit [33841] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
Rename unsafeForReentry to safeForReentry to avoid double negatives.
RS=Geoff
- 11:53 PM Changeset in webkit [33840] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
Bug 18827: SquirrelFish: Prevent getters and setters from destroying the current RegisterFile
<https://bugs.webkit.org/show_bug.cgi?id=18827>
Reviewed by Maciej
This patch makes getters and setters work. It does this by
tracking whether the RegisterFile is "safe", that is whether
the interpreter is in a state that in which it can handle
the RegisterFile being reallocated.
- 11:53 PM Changeset in webkit [33839] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-30 Geoffrey Garen <ggaren@apple.com>
Release build fix: Always compile in "isGlobalObject", since it's
listed in our .exp file.
- kjs/ExecState.cpp: (KJS::ExecState::isGlobalObject):
- kjs/ExecState.h:
- 11:53 PM Changeset in webkit [33838] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
Minor code restructuring to prepare for getters and setters,
also helps exception semantics a bit.
Reviewed by Maciej
- 11:53 PM Changeset in webkit [33837] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-30 Geoffrey Garen <ggaren@apple.com>
Fixed tyop.
- kjs/ExecState.h:
- 11:53 PM Changeset in webkit [33836] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-30 Geoffrey Garen <ggaren@apple.com>
Debug build fix: export a missing symbol.
- JavaScriptCore.exp:
- 11:53 PM Changeset in webkit [33835] by
-
- 6 edits in branches/squirrelfish/JavaScriptCore
2008-04-30 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
A little more ExecState refactoring: Now, only the global object creates
an ExecState.
Also inlined ExecState::lexicalGlobalObject().
SunSpider reports no change.
- 11:53 PM Changeset in webkit [33834] by
-
- 2 edits in branches/squirrelfish/WebKit/mac
2008-04-30 Geoffrey Garen <ggaren@apple.com>
Build fix: #ifdef'd out some code that doesn't work anymore.
- 11:53 PM Changeset in webkit [33833] by
-
- 5 edits in branches/squirrelfish/WebCore
2008-04-30 Geoffrey Garen <ggaren@apple.com>
Build fix: supply a parameter that used to be implicit to
Interpreter::evaluate.
- 11:53 PM Changeset in webkit [33832] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-30 Geoffrey Garen <ggaren@apple.com>
WebCore build fix: forward-declare ScopeChain.
- kjs/interpreter.h:
- 11:53 PM Changeset in webkit [33831] by
-
- 2 edits in branches/squirrelfish/WebCore
2008-04-30 Geoffrey Garen <ggaren@apple.com>
Build fix: #ifdef'd out some code that doesn't work anymore.
- bindings/objc/WebScriptObject.mm: (+[WebScriptObject throwException:]): (-[WebScriptObject setException:]):
- 11:53 PM Changeset in webkit [33830] by
-
- 2 edits in branches/squirrelfish/JavaScriptGlue
2008-04-30 Geoffrey Garen <ggaren@apple.com>
Build fix: supply missing parameter that used to be implicit.
- JSRun.cpp: (JSRun::Evaluate):
- 11:53 PM Changeset in webkit [33829] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-30 Geoffrey Garen <ggaren@apple.com>
Build fix for JavaScriptGlue: export a missing symbol.
- JavaScriptCore.exp:
- 11:53 PM Changeset in webkit [33828] by
-
- 2 edits in branches/squirrelfish/WebKit/mac
2008-04-30 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
#ifdef'd out some debugger code that doesn't work anymore.
- WebView/WebScriptDebugDelegate.mm: (-[WebScriptCallFrame scopeChain]):
- 11:53 PM Changeset in webkit [33827] by
-
- 24 edits2 deletes in branches/squirrelfish/JavaScriptCore
2008-04-30 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Removed a lot of unused bits from ExecState, moving them into
OldInterpreterExecState, the fake scaffolding class.
The clutter was making it hard to see the forest from the trees.
.4% SunSpider speedup, probably because ExecState::lexicalGlobalObject()
is faster now.
- 11:53 PM Changeset in webkit [33826] by
-
- 9 edits in branches/squirrelfish/JavaScriptCore
Bug 18643: SQUIRRELFISH: need to support implicit function calls (valueOf, toString, getters/setters)
<https://bugs.webkit.org/show_bug.cgi?id=18643>
Reviewed by Maciej
Prevent static slot optimisation for new variables and functions in
globally re-entrant code called from an an implicit function call.
This is necessary to prevent us from needing to resize the global
slot portion of the root RegisterFile during an implicit (and hence
unguarded) function call.
- 11:52 PM Changeset in webkit [33825] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-29 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
In nested program code, don't propogate "this" back to the parent
register file. ("this" should remain constant in the parent register
file, regardless of the scripts it invokes.)
- VM/RegisterFile.cpp: (KJS::RegisterFile::copyGlobals):
- 11:52 PM Changeset in webkit [33824] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
Restore base pointer when popping a global RegisterFile
Reviewed by Geoff
- 11:52 PM Changeset in webkit [33823] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
Bug 18643: SQUIRRELFISH: need to support implicit function calls (valueOf, toString, getters/setters)
<https://bugs.webkit.org/show_bug.cgi?id=18643>
Reviewed by Geoff
Partial fix. This results in all implicit calls to toString or valueOf
executing in a separate RegisterFile, so ensuring that the the pointers
in the triggering interpreter don't get trashed. This still leaves the
task of preventing new global re-entry from toString and valueOf from
clobbering the RegisterFile.
- 11:52 PM Changeset in webkit [33822] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-28 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Simplified activation object a bit: No need to store the callee
in the activation object -- we can pull it out of the call frame
when needed, instead.
SunSpider reports no change.
- 11:52 PM Changeset in webkit [33821] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-28 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
RS by Oliver Hunt on moving JSArguments.cpp out of AllInOneFile.cpp.
Substantially more handling of "arguments": "arguments" works fully
now, but "f.arguments" still doesn't work.
Fixes 10 regression tests.
SunSpider reports no regression.
- kjs/JSActivation.cpp: (KJS::JSActivation::createArgumentsObject): Reconstruct an arguments List to pass to the arguments object constructor.
- JavaScriptCore.xcodeproj/project.pbxproj:
- kjs/AllInOneFile.cpp: Removed JSActivation.cpp from AllInOneFile.cpp because that seems to make GCC happy. (Previously, I had added JSActivation.cpp to AllInOneFile.cpp because *that* seemed to make GCC happy. So it goes.)
- 11:52 PM Changeset in webkit [33820] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-28 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Groundwork for more handling of "arguments". I'm not checking in the
actual handling of "arguments" yet, because it still needs a little
fiddling to avoid a performance regression.
SunSpider reports no change.
- VM/Machine.cpp: (KJS::initializeCallFrame): Put argc in the register file, so the arguments object can find it later, to determine arguments.length.
- kjs/nodes.h: (KJS::FunctionBodyNode::): Added a special code accessor for when you know the code has already been generated, and you don't have a scopeChain to supply for potential code generation. (This is the case when the activation object creates the arguments object.)
- 11:52 PM Changeset in webkit [33819] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
Replace unsafe use of auto_ptr in Vector with manual memory
management.
Reviewed by Geoff
- 11:52 PM Changeset in webkit [33818] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-27 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Bug 18746: SQUIRRELFISH: indirect eval used when direct eval should be used
<https://bugs.webkit.org/show_bug.cgi?id=18746>
Change the base to the correct value of the 'this' object after the direct
eval test instead of before.
Fixes 5 layout tests.
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- kjs/nodes.cpp: (KJS::EvalFunctionCallNode::emitCode):
- 11:52 PM Changeset in webkit [33817] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
2008-04-26 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- document all property getting, setting and deleting opcodes
(And fix function parameter names to match corresponding opcode parameter names.)
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitResolve): (KJS::CodeGenerator::emitResolveBase): (KJS::CodeGenerator::emitResolveBaseAndProperty): (KJS::CodeGenerator::emitResolveBaseAndFunc): (KJS::CodeGenerator::emitGetPropId): (KJS::CodeGenerator::emitPutPropId): (KJS::CodeGenerator::emitDeletePropId): (KJS::CodeGenerator::emitPutPropVal):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::resolve): (KJS::resolveBase): (KJS::resolveBaseAndProperty): (KJS::resolveBaseAndFunc): (KJS::Machine::privateExecute):
- kjs/nodes.cpp: (KJS::ResolveNode::emitCode): (KJS::ArrayNode::emitCode): (KJS::PropertyListNode::emitCode): (KJS::BracketAccessorNode::emitCode): (KJS::EvalFunctionCallNode::emitCode): (KJS::FunctionCallResolveNode::emitCode): (KJS::FunctionCallBracketNode::emitCode): (KJS::PostIncResolveNode::emitCode): (KJS::PostDecResolveNode::emitCode): (KJS::PostIncBracketNode::emitCode): (KJS::PostDecBracketNode::emitCode): (KJS::PostIncDotNode::emitCode): (KJS::PostDecDotNode::emitCode): (KJS::DeleteResolveNode::emitCode): (KJS::TypeOfResolveNode::emitCode): (KJS::PreIncResolveNode::emitCode): (KJS::PreDecResolveNode::emitCode): (KJS::PreIncBracketNode::emitCode): (KJS::PreDecBracketNode::emitCode): (KJS::AssignResolveNode::emitCode): (KJS::AssignDotNode::emitCode): (KJS::ReadModifyDotNode::emitCode): (KJS::AssignBracketNode::emitCode): (KJS::ReadModifyBracketNode::emitCode): (KJS::ConstDeclNode::emitCodeSingle):
- 11:52 PM Changeset in webkit [33816] by
-
- 9 edits2 adds in branches/squirrelfish
Bug 18628: SQUIRRELFISH: need to support recursion limit
<https://bugs.webkit.org/show_bug.cgi?id=18628>
Reviewed by Maciej.
Basically completes recursion limiting. There is still some
tuning we may want to do to make things better in the face of
very bad code, but certainly nothing worse than anything already
possible in trunk.
Also fixes a WebKit test by fixing the exception text :D
- 11:52 PM Changeset in webkit [33815] by
-
- 1 edit in branches/squirrelfish/JavaScriptCore/ChangeLog
Fix the changelog
- 11:52 PM Changeset in webkit [33814] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
Bug 18736: SQUIRRELFISH: switch statements with no default have incorrect codegen
<https://bugs.webkit.org/show_bug.cgi?id=18736>
Reviewed by Geoff
Put a limit on the level of reentry recursion. 128 levels of re-entrant recursion
seems reasonable as it is greater than the old eval limit, and a long way short of
the reentry depth needed to overflow the stack.
- 11:52 PM Changeset in webkit [33813] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
2008-04-25 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
A tiny bit of cleanup to the regexp code.
Removed some static_cast.
Removed createRegExpImp because it's no longer used.
- 11:52 PM Changeset in webkit [33812] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
Bug 18736: SQUIRRELFISH: switch statements with no default have incorrect codegen
<https://bugs.webkit.org/show_bug.cgi?id=18736>
Reviewed by Maciej
Ensure the "default" target is correct in the absence of an explicit default handler.
- 11:52 PM Changeset in webkit [33811] by
-
- 1 edit in branches/squirrelfish/JavaScriptCore/ChangeLog
Fixing the ChangeLog
- 11:52 PM Changeset in webkit [33810] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
Bug 18732: SQUIRRELFISH: exceptions thrown by native constructors are ignored
<https://bugs.webkit.org/show_bug.cgi?id=18732>
Reviewed by Maciej
More bounds checking.
- 11:52 PM Changeset in webkit [33809] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-25 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- fix signal catching magic
The signal handlers are restored to _exit but are only set when
running under run-javascriptcore-tests. fprintf from a signal
handler is not safe.
- kjs/testkjs.cpp: (main): (parseArguments):
- tests/mozilla/jsDriver.pl:
- 11:52 PM Changeset in webkit [33808] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-25 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Bug 18732: SQUIRRELFISH: exceptions thrown by native constructors are ignored
<https://bugs.webkit.org/show_bug.cgi?id=18732>
Fixes another regression test.
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- 11:52 PM Changeset in webkit [33807] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-25 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Bug 18728: SQUIRRELFISH: invalid regular expression constants should throw exceptions
<https://bugs.webkit.org/show_bug.cgi?id=18728>
Fixes another regression test.
- kjs/nodes.cpp: (KJS::RegExpNode::emitCode):
- 11:52 PM Changeset in webkit [33806] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-24 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Geoffrey Garen.
Bug 18735: SQUIRRELFISH: closures are sometimes given an incorrect 'this' value when called
<https://bugs.webkit.org/show_bug.cgi?id=18735>
The overloaded toThisObject method was not copied over to JSActivation.
Fixes two regression tests.
- kjs/JSActivation.cpp: (KJS::JSActivation::toThisObject):
- kjs/JSActivation.h:
- 11:52 PM Changeset in webkit [33805] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
2008-04-24 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Added support for arguments.callee.
- 11:52 PM Changeset in webkit [33804] by
-
- 6 edits in branches/squirrelfish/JavaScriptCore
Bug 18628: SQUIRRELFISH: need to support recursion limit
<https://bugs.webkit.org/show_bug.cgi?id=18628>
Reviewed by Maciej
Partial fix -- this gets us some of the required bounds checking, but not
complete coverage. But it does manage to do them without regressing :D
- 11:52 PM Changeset in webkit [33803] by
-
- 1 edit in branches/squirrelfish/JavaScriptCore/ChangeLog
Fixed up ChangeLog
- 11:52 PM Changeset in webkit [33802] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-24 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Bug 18717: SQUIRRELFISH: eval returns the wrong value for a variable declaration statement
<https://bugs.webkit.org/show_bug.cgi?id=18717>
Fixes a regression test, but exposes the failure of another due to the
lack of getters and setters.
- kjs/nodes.cpp: (KJS::ConstDeclNode::emitCodeSingle): (KJS::ConstDeclNode::emitCode): (KJS::ConstStatementNode::emitCode): (KJS::VarStatementNode::emitCode):
- kjs/nodes.h:
- 11:51 PM Changeset in webkit [33801] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Bug 18717: SQUIRRELFISH: eval returns the wrong value for a variable declaration statement
<https://bugs.webkit.org/show_bug.cgi?id=18717>
Fixes a regression test, but exposes the failure of another due to the
lack of getters and setters.
- 11:51 PM Changeset in webkit [33800] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-24 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Print a CRASH statement when crashing, so test failures are not a
mystery.
- kjs/testkjs.cpp: (handleCrash): (main):
- 11:51 PM Changeset in webkit [33799] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-24 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Geoffrey Garen.
Bug 18716: SQUIRRELFISH: typeof should return undefined for an undefined variable reference
<https://bugs.webkit.org/show_bug.cgi?id=18716>
This fixes 2 more regression tests.
- kjs/nodes.cpp: (KJS::TypeOfResolveNode::emitCode):
- 11:51 PM Changeset in webkit [33798] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-24 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Put the callee in the call frame.
Necessary in order to support "arguments" and "arguments.callee".
Also fixes a latent GC bug, where an executing function could be
subject to GC if the register holding it were overwritten. Here's
an example that would have caused problems:
function f()
{
Flood the machine stack to eliminate any old pointers to f.
g.call({});
Overwrite f in the register file.
f = 1;
Force a GC.
for (var i = 0; i < 5000; ++i) {
({});
}
Welcome to crash-ville.
}
function g()
{
}
f();
- VM/Machine.h: Changed the order of arguments to execute(FunctionBodyNode*...) to match the other execute functions.
- kjs/function.cpp: Updated to match new argument requirements from execute(FunctionBodyNode*...). Renamed newObj to thisObj to match the rest of JavaScriptCore.
SunSpider reports no change.
- 11:51 PM Changeset in webkit [33797] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-23 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Bug 18707: SQUIRRELFISH: eval always performs toString() on its argument
<https://bugs.webkit.org/show_bug.cgi?id=18707>
This fixes 4 more regression tests.
- VM/Machine.cpp: (KJS::eval):
- 11:51 PM Changeset in webkit [33796] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-23 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- fix logic bug in SegmentedVector::grow which would sometimes fail to resize a segment when needed
Fixes 3 JSC tests.
- VM/SegmentedVector.h: (KJS::SegmentedVector::grow):
- 11:51 PM Changeset in webkit [33795] by
-
- 6 edits in branches/squirrelfish/JavaScriptCore
2008-04-23 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Degenerate handling of "arguments" as a property of the activation
object. Currently, we just return a vanilla object.
SunSpider reports no change.
Fixes:
ecma_3/Function/regress-94506.js.
Reveals to have been secretly broken:
ecma_3/Function/15.3.4.3-1.js
ecma_3/Function/15.3.4.4-1.js
These tests were passing incorrectly. testkjs creates a global array
named "arguments" to hold command-line arguments. That array was
tricking these tests into thinking that an arguments object with length
0 had been created. Since our new vanilla object shadows the global
property named arguments, that object no longer fools these tests into
passing.
Net change: +1 failing test.
- kjs/AllInOneFile.cpp: Had to put JSActivation.cpp into AllInOneFile.cpp to solve a surprising 8.6% regression in bitops-3bit-bits-in-byte.
- 11:51 PM Changeset in webkit [33794] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-23 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- save and restore callFrame
- VM/Machine.cpp: (KJS::slideRegisterWindowForCall): (KJS::Machine::execute): (KJS::Machine::privateExecute):
- kjs/testkjs.cpp: (main):
- 11:51 PM Changeset in webkit [33793] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-23 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Fixed scopes for named function expressions.
Fixes one regression test.
Two changes here:
(1) The function's name is supposed to have attributes DontDelete,
ReadOnly, regardless of the type of code executing.
(2) Push the name object on the function's scope chain, rather than
the ExecState's scope chain because, well, that's where it belongs.
- 11:51 PM Changeset in webkit [33792] by
-
- 6 edits in branches/squirrelfish/JavaScriptCore
2008-04-23 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Inlined JSObject::putDirect, for a .4% SunSpider speedup.
I did this as a first step toward removing nodes.cpp from
AllInOneFile.cpp, but I'm putting that larger project aside for now.
- 11:51 PM Changeset in webkit [33791] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-23 Maciej Stachowiak <mjs@apple.com>
Rubber stamped by Geoff.
- add OldInterpreterExecState class and use it in dead code
This will allow removing things from the real ExecState class
without having to figure out how to remove all this code without
getting a perf regression.
- kjs/nodes.cpp: (KJS::ExpressionNode::evaluateToNumber): (KJS::ExpressionNode::evaluateToBoolean): (KJS::ExpressionNode::evaluateToInt32): (KJS::ExpressionNode::evaluateToUInt32): (KJS::Node::setErrorCompletion): (KJS::Node::throwError): (KJS::Node::throwUndefinedVariableError): (KJS::Node::handleException): (KJS::Node::rethrowException): (KJS::BreakpointCheckStatement::execute): (KJS::BreakpointCheckStatement::optimizeVariableAccess): (KJS::NullNode::evaluate): (KJS::FalseNode::evaluate): (KJS::TrueNode::evaluate): (KJS::NumberNode::evaluate): (KJS::NumberNode::evaluateToNumber): (KJS::NumberNode::evaluateToBoolean): (KJS::NumberNode::evaluateToInt32): (KJS::NumberNode::evaluateToUInt32): (KJS::ImmediateNumberNode::evaluate): (KJS::ImmediateNumberNode::evaluateToInt32): (KJS::ImmediateNumberNode::evaluateToUInt32): (KJS::StringNode::evaluate): (KJS::StringNode::evaluateToNumber): (KJS::StringNode::evaluateToBoolean): (KJS::RegExpNode::evaluate): (KJS::ThisNode::evaluate): (KJS::ResolveNode::inlineEvaluate): (KJS::ResolveNode::evaluate): (KJS::ResolveNode::evaluateToNumber): (KJS::ResolveNode::evaluateToBoolean): (KJS::ResolveNode::evaluateToInt32): (KJS::ResolveNode::evaluateToUInt32): (KJS::getSymbolTableEntry): (KJS::ResolveNode::optimizeVariableAccess): (KJS::LocalVarAccessNode::inlineEvaluate): (KJS::LocalVarAccessNode::evaluate): (KJS::LocalVarAccessNode::evaluateToNumber): (KJS::LocalVarAccessNode::evaluateToBoolean): (KJS::LocalVarAccessNode::evaluateToInt32): (KJS::LocalVarAccessNode::evaluateToUInt32): (KJS::getNonLocalSymbol): (KJS::ScopedVarAccessNode::inlineEvaluate): (KJS::ScopedVarAccessNode::evaluate): (KJS::ScopedVarAccessNode::evaluateToNumber): (KJS::ScopedVarAccessNode::evaluateToBoolean): (KJS::ScopedVarAccessNode::evaluateToInt32): (KJS::ScopedVarAccessNode::evaluateToUInt32): (KJS::NonLocalVarAccessNode::inlineEvaluate): (KJS::NonLocalVarAccessNode::evaluate): (KJS::NonLocalVarAccessNode::evaluateToNumber): (KJS::NonLocalVarAccessNode::evaluateToBoolean): (KJS::NonLocalVarAccessNode::evaluateToInt32): (KJS::NonLocalVarAccessNode::evaluateToUInt32): (KJS::ElementNode::optimizeVariableAccess): (KJS::ElementNode::evaluate): (KJS::ArrayNode::optimizeVariableAccess): (KJS::ArrayNode::evaluate): (KJS::ObjectLiteralNode::optimizeVariableAccess): (KJS::ObjectLiteralNode::evaluate): (KJS::PropertyListNode::optimizeVariableAccess): (KJS::PropertyListNode::evaluate): (KJS::PropertyNode::optimizeVariableAccess): (KJS::PropertyNode::evaluate): (KJS::BracketAccessorNode::optimizeVariableAccess): (KJS::BracketAccessorNode::inlineEvaluate): (KJS::BracketAccessorNode::evaluate): (KJS::BracketAccessorNode::evaluateToNumber): (KJS::BracketAccessorNode::evaluateToBoolean): (KJS::BracketAccessorNode::evaluateToInt32): (KJS::BracketAccessorNode::evaluateToUInt32): (KJS::DotAccessorNode::optimizeVariableAccess): (KJS::DotAccessorNode::inlineEvaluate): (KJS::DotAccessorNode::evaluate): (KJS::DotAccessorNode::evaluateToNumber): (KJS::DotAccessorNode::evaluateToBoolean): (KJS::DotAccessorNode::evaluateToInt32): (KJS::DotAccessorNode::evaluateToUInt32): (KJS::ArgumentListNode::optimizeVariableAccess): (KJS::ArgumentListNode::evaluateList): (KJS::ArgumentsNode::optimizeVariableAccess): (KJS::NewExprNode::optimizeVariableAccess): (KJS::NewExprNode::inlineEvaluate): (KJS::NewExprNode::evaluate): (KJS::NewExprNode::evaluateToNumber): (KJS::NewExprNode::evaluateToBoolean): (KJS::NewExprNode::evaluateToInt32): (KJS::NewExprNode::evaluateToUInt32): (KJS::ExpressionNode::resolveAndCall): (KJS::EvalFunctionCallNode::optimizeVariableAccess): (KJS::EvalFunctionCallNode::evaluate): (KJS::FunctionCallValueNode::optimizeVariableAccess): (KJS::FunctionCallValueNode::evaluate): (KJS::FunctionCallResolveNode::optimizeVariableAccess): (KJS::FunctionCallResolveNode::inlineEvaluate): (KJS::FunctionCallResolveNode::evaluate): (KJS::FunctionCallResolveNode::evaluateToNumber): (KJS::FunctionCallResolveNode::evaluateToBoolean): (KJS::FunctionCallResolveNode::evaluateToInt32): (KJS::FunctionCallResolveNode::evaluateToUInt32): (KJS::LocalVarFunctionCallNode::inlineEvaluate): (KJS::LocalVarFunctionCallNode::evaluate): (KJS::LocalVarFunctionCallNode::evaluateToNumber): (KJS::LocalVarFunctionCallNode::evaluateToBoolean): (KJS::LocalVarFunctionCallNode::evaluateToInt32): (KJS::LocalVarFunctionCallNode::evaluateToUInt32): (KJS::ScopedVarFunctionCallNode::inlineEvaluate): (KJS::ScopedVarFunctionCallNode::evaluate): (KJS::ScopedVarFunctionCallNode::evaluateToNumber): (KJS::ScopedVarFunctionCallNode::evaluateToBoolean): (KJS::ScopedVarFunctionCallNode::evaluateToInt32): (KJS::ScopedVarFunctionCallNode::evaluateToUInt32): (KJS::NonLocalVarFunctionCallNode::inlineEvaluate): (KJS::NonLocalVarFunctionCallNode::evaluate): (KJS::NonLocalVarFunctionCallNode::evaluateToNumber): (KJS::NonLocalVarFunctionCallNode::evaluateToBoolean): (KJS::NonLocalVarFunctionCallNode::evaluateToInt32): (KJS::NonLocalVarFunctionCallNode::evaluateToUInt32): (KJS::FunctionCallBracketNode::optimizeVariableAccess): (KJS::FunctionCallBracketNode::evaluate): (KJS::FunctionCallDotNode::optimizeVariableAccess): (KJS::FunctionCallDotNode::inlineEvaluate): (KJS::FunctionCallDotNode::evaluate): (KJS::FunctionCallDotNode::evaluateToNumber): (KJS::FunctionCallDotNode::evaluateToBoolean): (KJS::FunctionCallDotNode::evaluateToInt32): (KJS::FunctionCallDotNode::evaluateToUInt32): (KJS::PostIncResolveNode::optimizeVariableAccess): (KJS::PostIncResolveNode::evaluate): (KJS::PostIncLocalVarNode::evaluate): (KJS::PostDecResolveNode::optimizeVariableAccess): (KJS::PostDecResolveNode::evaluate): (KJS::PostDecLocalVarNode::evaluate): (KJS::PostDecLocalVarNode::inlineEvaluateToNumber): (KJS::PostDecLocalVarNode::evaluateToNumber): (KJS::PostDecLocalVarNode::evaluateToBoolean): (KJS::PostDecLocalVarNode::evaluateToInt32): (KJS::PostDecLocalVarNode::evaluateToUInt32): (KJS::PostfixBracketNode::optimizeVariableAccess): (KJS::PostIncBracketNode::evaluate): (KJS::PostDecBracketNode::evaluate): (KJS::PostfixDotNode::optimizeVariableAccess): (KJS::PostIncDotNode::evaluate): (KJS::PostDecDotNode::evaluate): (KJS::PostfixErrorNode::evaluate): (KJS::DeleteResolveNode::optimizeVariableAccess): (KJS::DeleteResolveNode::evaluate): (KJS::LocalVarDeleteNode::evaluate): (KJS::DeleteBracketNode::optimizeVariableAccess): (KJS::DeleteBracketNode::evaluate): (KJS::DeleteDotNode::optimizeVariableAccess): (KJS::DeleteDotNode::evaluate): (KJS::DeleteValueNode::optimizeVariableAccess): (KJS::DeleteValueNode::evaluate): (KJS::VoidNode::optimizeVariableAccess): (KJS::VoidNode::evaluate): (KJS::TypeOfValueNode::optimizeVariableAccess): (KJS::TypeOfResolveNode::optimizeVariableAccess): (KJS::LocalVarTypeOfNode::evaluate): (KJS::TypeOfResolveNode::evaluate): (KJS::TypeOfValueNode::evaluate): (KJS::PreIncResolveNode::optimizeVariableAccess): (KJS::PreIncLocalVarNode::evaluate): (KJS::PreIncResolveNode::evaluate): (KJS::PreDecResolveNode::optimizeVariableAccess): (KJS::PreDecLocalVarNode::evaluate): (KJS::PreDecResolveNode::evaluate): (KJS::PreIncConstNode::evaluate): (KJS::PreDecConstNode::evaluate): (KJS::PostIncConstNode::evaluate): (KJS::PostDecConstNode::evaluate): (KJS::PrefixBracketNode::optimizeVariableAccess): (KJS::PreIncBracketNode::evaluate): (KJS::PreDecBracketNode::evaluate): (KJS::PrefixDotNode::optimizeVariableAccess): (KJS::PreIncDotNode::evaluate): (KJS::PreDecDotNode::evaluate): (KJS::PrefixErrorNode::evaluate): (KJS::UnaryPlusNode::optimizeVariableAccess): (KJS::UnaryPlusNode::evaluate): (KJS::UnaryPlusNode::evaluateToBoolean): (KJS::UnaryPlusNode::evaluateToNumber): (KJS::UnaryPlusNode::evaluateToInt32): (KJS::UnaryPlusNode::evaluateToUInt32): (KJS::NegateNode::optimizeVariableAccess): (KJS::NegateNode::evaluate): (KJS::NegateNode::evaluateToNumber): (KJS::BitwiseNotNode::optimizeVariableAccess): (KJS::BitwiseNotNode::inlineEvaluateToInt32): (KJS::BitwiseNotNode::evaluate): (KJS::BitwiseNotNode::evaluateToNumber): (KJS::BitwiseNotNode::evaluateToBoolean): (KJS::BitwiseNotNode::evaluateToInt32): (KJS::BitwiseNotNode::evaluateToUInt32): (KJS::LogicalNotNode::optimizeVariableAccess): (KJS::LogicalNotNode::evaluate): (KJS::LogicalNotNode::evaluateToBoolean): (KJS::MultNode::optimizeVariableAccess): (KJS::MultNode::inlineEvaluateToNumber): (KJS::MultNode::evaluate): (KJS::MultNode::evaluateToNumber): (KJS::MultNode::evaluateToBoolean): (KJS::MultNode::evaluateToInt32): (KJS::MultNode::evaluateToUInt32): (KJS::DivNode::optimizeVariableAccess): (KJS::DivNode::inlineEvaluateToNumber): (KJS::DivNode::evaluate): (KJS::DivNode::evaluateToNumber): (KJS::DivNode::evaluateToInt32): (KJS::DivNode::evaluateToUInt32): (KJS::ModNode::optimizeVariableAccess): (KJS::ModNode::inlineEvaluateToNumber): (KJS::ModNode::evaluate): (KJS::ModNode::evaluateToNumber): (KJS::ModNode::evaluateToBoolean): (KJS::ModNode::evaluateToInt32): (KJS::ModNode::evaluateToUInt32): (KJS::throwOutOfMemoryErrorToNumber): (KJS::addSlowCase): (KJS::addSlowCaseToNumber): (KJS::add): (KJS::addToNumber): (KJS::AddNode::optimizeVariableAccess): (KJS::AddNode::evaluate): (KJS::AddNode::inlineEvaluateToNumber): (KJS::AddNode::evaluateToNumber): (KJS::AddNode::evaluateToInt32): (KJS::AddNode::evaluateToUInt32): (KJS::AddNumbersNode::inlineEvaluateToNumber): (KJS::AddNumbersNode::evaluate): (KJS::AddNumbersNode::evaluateToNumber): (KJS::AddNumbersNode::evaluateToInt32): (KJS::AddNumbersNode::evaluateToUInt32): (KJS::AddStringsNode::evaluate): (KJS::AddStringLeftNode::evaluate): (KJS::AddStringRightNode::evaluate): (KJS::SubNode::optimizeVariableAccess): (KJS::SubNode::inlineEvaluateToNumber): (KJS::SubNode::evaluate): (KJS::SubNode::evaluateToNumber): (KJS::SubNode::evaluateToInt32): (KJS::SubNode::evaluateToUInt32): (KJS::LeftShiftNode::optimizeVariableAccess): (KJS::LeftShiftNode::inlineEvaluateToInt32): (KJS::LeftShiftNode::evaluate): (KJS::LeftShiftNode::evaluateToNumber): (KJS::LeftShiftNode::evaluateToInt32): (KJS::LeftShiftNode::evaluateToUInt32): (KJS::RightShiftNode::optimizeVariableAccess): (KJS::RightShiftNode::inlineEvaluateToInt32): (KJS::RightShiftNode::evaluate): (KJS::RightShiftNode::evaluateToNumber): (KJS::RightShiftNode::evaluateToInt32): (KJS::RightShiftNode::evaluateToUInt32): (KJS::UnsignedRightShiftNode::optimizeVariableAccess): (KJS::UnsignedRightShiftNode::inlineEvaluateToUInt32): (KJS::UnsignedRightShiftNode::evaluate): (KJS::UnsignedRightShiftNode::evaluateToNumber): (KJS::UnsignedRightShiftNode::evaluateToInt32): (KJS::UnsignedRightShiftNode::evaluateToUInt32): (KJS::lessThan): (KJS::lessThanEq): (KJS::LessNode::optimizeVariableAccess): (KJS::LessNode::inlineEvaluateToBoolean): (KJS::LessNode::evaluate): (KJS::LessNode::evaluateToBoolean): (KJS::LessNumbersNode::inlineEvaluateToBoolean): (KJS::LessNumbersNode::evaluate): (KJS::LessNumbersNode::evaluateToBoolean): (KJS::LessStringsNode::inlineEvaluateToBoolean): (KJS::LessStringsNode::evaluate): (KJS::LessStringsNode::evaluateToBoolean): (KJS::GreaterNode::optimizeVariableAccess): (KJS::GreaterNode::inlineEvaluateToBoolean): (KJS::GreaterNode::evaluate): (KJS::GreaterNode::evaluateToBoolean): (KJS::LessEqNode::optimizeVariableAccess): (KJS::LessEqNode::inlineEvaluateToBoolean): (KJS::LessEqNode::evaluate): (KJS::LessEqNode::evaluateToBoolean): (KJS::GreaterEqNode::optimizeVariableAccess): (KJS::GreaterEqNode::inlineEvaluateToBoolean): (KJS::GreaterEqNode::evaluate): (KJS::GreaterEqNode::evaluateToBoolean): (KJS::InstanceOfNode::optimizeVariableAccess): (KJS::InstanceOfNode::evaluate): (KJS::InstanceOfNode::evaluateToBoolean): (KJS::InNode::optimizeVariableAccess): (KJS::InNode::evaluate): (KJS::InNode::evaluateToBoolean): (KJS::EqualNode::optimizeVariableAccess): (KJS::EqualNode::inlineEvaluateToBoolean): (KJS::EqualNode::evaluate): (KJS::EqualNode::evaluateToBoolean): (KJS::NotEqualNode::optimizeVariableAccess): (KJS::NotEqualNode::inlineEvaluateToBoolean): (KJS::NotEqualNode::evaluate): (KJS::NotEqualNode::evaluateToBoolean): (KJS::StrictEqualNode::optimizeVariableAccess): (KJS::StrictEqualNode::inlineEvaluateToBoolean): (KJS::StrictEqualNode::evaluate): (KJS::StrictEqualNode::evaluateToBoolean): (KJS::NotStrictEqualNode::optimizeVariableAccess): (KJS::NotStrictEqualNode::inlineEvaluateToBoolean): (KJS::NotStrictEqualNode::evaluate): (KJS::NotStrictEqualNode::evaluateToBoolean): (KJS::BitAndNode::optimizeVariableAccess): (KJS::BitAndNode::evaluate): (KJS::BitAndNode::inlineEvaluateToInt32): (KJS::BitAndNode::evaluateToNumber): (KJS::BitAndNode::evaluateToBoolean): (KJS::BitAndNode::evaluateToInt32): (KJS::BitAndNode::evaluateToUInt32): (KJS::BitXOrNode::optimizeVariableAccess): (KJS::BitXOrNode::inlineEvaluateToInt32): (KJS::BitXOrNode::evaluate): (KJS::BitXOrNode::evaluateToNumber): (KJS::BitXOrNode::evaluateToBoolean): (KJS::BitXOrNode::evaluateToInt32): (KJS::BitXOrNode::evaluateToUInt32): (KJS::BitOrNode::optimizeVariableAccess): (KJS::BitOrNode::inlineEvaluateToInt32): (KJS::BitOrNode::evaluate): (KJS::BitOrNode::evaluateToNumber): (KJS::BitOrNode::evaluateToBoolean): (KJS::BitOrNode::evaluateToInt32): (KJS::BitOrNode::evaluateToUInt32): (KJS::LogicalAndNode::optimizeVariableAccess): (KJS::LogicalAndNode::evaluate): (KJS::LogicalAndNode::evaluateToBoolean): (KJS::LogicalOrNode::optimizeVariableAccess): (KJS::LogicalOrNode::evaluate): (KJS::LogicalOrNode::evaluateToBoolean): (KJS::ConditionalNode::optimizeVariableAccess): (KJS::ConditionalNode::evaluate): (KJS::ConditionalNode::evaluateToBoolean): (KJS::ConditionalNode::evaluateToNumber): (KJS::ConditionalNode::evaluateToInt32): (KJS::ConditionalNode::evaluateToUInt32): (KJS::valueForReadModifyAssignment): (KJS::ReadModifyResolveNode::optimizeVariableAccess): (KJS::AssignResolveNode::optimizeVariableAccess): (KJS::ReadModifyLocalVarNode::evaluate): (KJS::AssignLocalVarNode::evaluate): (KJS::ReadModifyConstNode::evaluate): (KJS::AssignConstNode::evaluate): (KJS::ReadModifyResolveNode::evaluate): (KJS::AssignResolveNode::evaluate): (KJS::AssignDotNode::optimizeVariableAccess): (KJS::AssignDotNode::evaluate): (KJS::ReadModifyDotNode::optimizeVariableAccess): (KJS::ReadModifyDotNode::evaluate): (KJS::AssignErrorNode::evaluate): (KJS::AssignBracketNode::optimizeVariableAccess): (KJS::AssignBracketNode::evaluate): (KJS::ReadModifyBracketNode::optimizeVariableAccess): (KJS::ReadModifyBracketNode::evaluate): (KJS::CommaNode::optimizeVariableAccess): (KJS::CommaNode::evaluate): (KJS::ConstDeclNode::optimizeVariableAccess): (KJS::ConstDeclNode::handleSlowCase): (KJS::ConstDeclNode::evaluateSingle): (KJS::ConstDeclNode::evaluate): (KJS::ConstStatementNode::optimizeVariableAccess): (KJS::ConstStatementNode::execute): (KJS::statementListExecute): (KJS::BlockNode::optimizeVariableAccess): (KJS::BlockNode::execute): (KJS::EmptyStatementNode::execute): (KJS::ExprStatementNode::optimizeVariableAccess): (KJS::ExprStatementNode::execute): (KJS::VarStatementNode::optimizeVariableAccess): (KJS::VarStatementNode::execute): (KJS::IfNode::optimizeVariableAccess): (KJS::IfNode::execute): (KJS::IfElseNode::optimizeVariableAccess): (KJS::IfElseNode::execute): (KJS::DoWhileNode::optimizeVariableAccess): (KJS::DoWhileNode::execute): (KJS::WhileNode::optimizeVariableAccess): (KJS::WhileNode::execute): (KJS::ForNode::optimizeVariableAccess): (KJS::ForNode::execute): (KJS::ForInNode::optimizeVariableAccess): (KJS::ForInNode::execute): (KJS::ContinueNode::execute): (KJS::BreakNode::execute): (KJS::ReturnNode::optimizeVariableAccess): (KJS::ReturnNode::execute): (KJS::WithNode::optimizeVariableAccess): (KJS::WithNode::execute): (KJS::CaseClauseNode::optimizeVariableAccess): (KJS::CaseClauseNode::evaluate): (KJS::CaseClauseNode::executeStatements): (KJS::ClauseListNode::optimizeVariableAccess): (KJS::CaseBlockNode::optimizeVariableAccess): (KJS::CaseBlockNode::executeBlock): (KJS::SwitchNode::optimizeVariableAccess): (KJS::SwitchNode::execute): (KJS::LabelNode::optimizeVariableAccess): (KJS::LabelNode::execute): (KJS::ThrowNode::optimizeVariableAccess): (KJS::ThrowNode::execute): (KJS::TryNode::optimizeVariableAccess): (KJS::TryNode::execute): (KJS::ProgramNode::initializeSymbolTable): (KJS::ScopeNode::optimizeVariableAccess): (KJS::ProgramNode::processDeclarations): (KJS::EvalNode::processDeclarations): (KJS::ProgramNode::execute): (KJS::EvalNode::execute): (KJS::FunctionBodyNodeWithDebuggerHooks::execute): (KJS::FuncDeclNode::execute): (KJS::FuncExprNode::evaluate):
- kjs/nodes.h: (KJS::Node::): (KJS::FalseNode::): (KJS::TrueNode::): (KJS::ArgumentsNode::):
- 11:51 PM Changeset in webkit [33790] by
-
- 4 edits1 add in branches/squirrelfish/JavaScriptCore
Bug 18672: SQUIRRELFISH: codegen fails with a large number of temporaries
<https://bugs.webkit.org/show_bug.cgi?id=18672>
Reviewed by Geoff
Add a SegmentedVector type, which provides a Vector<T> which maintains
existing memory locations during resize. This allows dynamically sizing
local, temporary and label "vectors" in CodeGenerator.
- 11:51 PM Changeset in webkit [33789] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-23 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
A little refactoring in preparation for supporting 'arguments'.
Fixes 2 regression tests.
SunSpider reports no change.
We now check the activation register, instead of the codeBlock, to
determine whether we need to tear off the activation. This is to support
"f.arguments", which will create an activation/arguments pair for f,
even though the needsFullScopeChain flag is false for f's codeBlock.
The test fixes resulted from calling initializeCallFrame for re-entrant
function code, instead of initializing (not enough) parts of the call
frame by hand.
- 11:51 PM Changeset in webkit [33788] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-22 Maciej Stachowiak <mjs@apple.com>
Reviewed by Sam.
- propagate the "this" value properly to local eval
(fixes a measly one regression test)
- VM/CodeBlock.h: (KJS::CodeBlock::CodeBlock): (KJS::ProgramCodeBlock::ProgramCodeBlock): (KJS::EvalCodeBlock::EvalCodeBlock):
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- 11:51 PM Changeset in webkit [33787] by
-
- 6 edits in branches/squirrelfish/JavaScriptCore
2008-04-22 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Add support for function declarations in eval code.
(this fixes 12 more regression tests)
- VM/CodeBlock.h:
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::CodeGenerator):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::execute):
- kjs/nodes.cpp: (KJS::EvalNode::generateCode):
- 11:51 PM Changeset in webkit [33786] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-22 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Implement LabelNode.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::pushJumpContext): (KJS::CodeGenerator::jumpContextForContinue): (KJS::CodeGenerator::jumpContextForBreak):
- VM/CodeGenerator.h:
- kjs/nodes.cpp: (KJS::DoWhileNode::emitCode): (KJS::WhileNode::emitCode): (KJS::ForNode::emitCode): (KJS::ForInNode::emitCode): (KJS::ContinueNode::emitCode): (KJS::BreakNode::emitCode): (KJS::SwitchNode::emitCode): (KJS::LabelNode::emitCode):
- 11:51 PM Changeset in webkit [33785] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-22 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Fixed crash when unwinding from exceptions inside eval.
- VM/Machine.cpp: (KJS::Machine::unwindCallFrame): Don't assume that the top of the current call frame's scope chain is an activation: it can be the global object, instead.
- 11:51 PM Changeset in webkit [33784] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-22 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff.
- kjs/testkjs.cpp: (main): Convert signals to exit codes, so that crashing tests are detected as regression test failures.
- 11:51 PM Changeset in webkit [33783] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-22 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt and Maciej Stachowiak.
Renamed "needsActivation" to "needsFullScopeChain" because lying will
make hair grow on the backs of your hands.
- 11:51 PM Changeset in webkit [33782] by
-
- 1 edit in branches/squirrelfish/JavaScriptCore/ChangeLog
Fixed ChangeLog
- 11:51 PM Changeset in webkit [33781] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-04-21 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Fixed ScopeChainNode lifetime problems:
(1) In "with" and "catch" scopes, we would construct a ScopeChain
object and then jump across its destructor, leaking the ScopeChainNode
we had pushed.
(2) In global and eval scopes, we would fail to initially ref
"scopeChain", causing us to overrelease it later. Now that we ref
"scopeChain" properly, we also need to deref it when the script
terminates.
SunSpider reports no change.
- 11:51 PM Changeset in webkit [33780] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-22 Maciej Stachowiak <mjs@apple.com>
Reviewed by Alexey.
- use global object instead of null for "this" on unqualified calls
This fixes 10 more JSC test regressions.
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- 11:51 PM Changeset in webkit [33779] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-22 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- throw proper exceptions for objects that don't implement call or construct
This fixes 21 more JSC test regressions. It is also seemingly an
0.5% progression.
- VM/ExceptionHelpers.cpp: (KJS::createNotAnObjectError): (KJS::createNotAConstructorError): (KJS::createNotAFunctionError):
- VM/ExceptionHelpers.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- 11:50 PM Changeset in webkit [33778] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
Implement emitCode for ConstDeclNode.
Reviewed by Geoff
This fixes the crash (assertion) in js1_5/Scope/scope-001.js
- 11:50 PM Changeset in webkit [33777] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-21 Maciej Stachowiak <mjs@apple.com>
Reviewed by Sam.
- add some support for the split window object
This fixes many layout tests.
- VM/Machine.cpp: (KJS::resolveBaseAndFunc): Use toThisObject() to ensure we get the wrapper global, if one exists, as the "this" object.
- kjs/function.cpp: (KJS::globalFuncEval): Use toGlobalObject() to handle the wrapper case properly.
- 11:50 PM Changeset in webkit [33776] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-21 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- restore ScopeChain::operator= to avoid crash on many layout tests
Otherwise, FunctionImp::setScope would cause a reference
underflow. I implemented using the copy construct and swap idiom.
- kjs/scope_chain.h: (KJS::ScopeChain::swap): (KJS::ScopeChain::operator=):
- 11:50 PM Changeset in webkit [33775] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
Bug 18649: SQUIRRELFISH: correctly handle exceptions in eval code
<https://bugs.webkit.org/show_bug.cgi?id=18649>
Reviewed by Geoff
Allocate a callframe for eval() and initialise with a null codeBlock to
indicate native code. This prevents the unwinder from clobbering the
register stack.
- 11:50 PM Changeset in webkit [33774] by
-
- 2 edits in branches/squirrelfish/WebKit/mac
2008-04-21 Geoffrey Garen <ggaren@apple.com>
Build fix.
- ChangeLog:
- WebView/WebScriptDebugDelegate.mm: (-[WebScriptCallFrame scopeChain]):
- 11:50 PM Changeset in webkit [33773] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-21 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Removed ScopeChain::push(ScopeChain&) because it was unused. Moved
ScopeChain::print to ScopeChainNode.
ScopeChain is now nothing more than a resource-handling wrapper around
ScopeChainNode.
- 11:50 PM Changeset in webkit [33772] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-21 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Bug 18671: SquirrelFish: continue inside switch fails
<https://bugs.webkit.org/show_bug.cgi?id=18671>
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::jumpContextForLabel):
- VM/CodeGenerator.h:
- kjs/nodes.cpp: (KJS::ContinueNode::emitCode):
- 11:50 PM Changeset in webkit [33771] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-21 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Moved push(JSObject*) and pop() from ScopeChain to ScopeChainNode,
rearranging scope_chain.h a bit.
SunSpider reports no change.
- 11:50 PM Changeset in webkit [33770] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-21 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Moved bottom() from ScopeChain to ScopeChainNode, simplifying it based
on the knowledge that the ScopeChain is never empty.
SunSpider reports no change.
- 11:50 PM Changeset in webkit [33769] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-21 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Moved begin() and end() from ScopeChain to ScopeChainNode.
Also marked a few methods "const".
SunSpider reports no change.
- 11:50 PM Changeset in webkit [33768] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-21 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Turned ScopeChain::depth into a stand-alone function, and simplified it
a bit.
I also moved ScopeChain::depth to Machine.cpp because it doesn't report
the true depth of the ScopeChain -- just the Machine's perspective of
its depth within a given call frame.
SunSpider reports no change.
- 11:50 PM Changeset in webkit [33767] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-21 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Removed indirection in ScopeChain::ref / ScopeChain::deref.
SunSpider reports no change.
- kjs/scope_chain.h: (KJS::ScopeChain::ScopeChain): (KJS::ScopeChain::~ScopeChain): (KJS::ScopeChain::clear):
- 11:50 PM Changeset in webkit [33766] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
Fix debug build
- 11:50 PM Changeset in webkit [33765] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
Bug 18664: SQUIRRELFISH: correctly throw a SyntaxError when parsing of eval code fails
<https://bugs.webkit.org/show_bug.cgi?id=18664>
Patch from Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver
Correctly throw a SyntaxError when parsing of eval code fails.
- 11:50 PM Changeset in webkit [33764] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
Partial fix for Bug 18649: SQUIRRELFISH: correctly handle exceptions in eval code
Reviewed by Geoff
Make sure we correct the register state before jumping to vm_throw.
- 11:50 PM Changeset in webkit [33763] by
-
- 1 edit in branches/squirrelfish/JavaScriptCore/ChangeLog
Fixed reviewer named in old commit message
- 11:50 PM Changeset in webkit [33762] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-21 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Simplified ScopeChain ref/deref.
SunSpider reports a .4% speedup.
- kjs/scope_chain.h: (KJS::ScopeChainNode::ref): Removed this function because it was nonsense. ScopeChainNodes are initialized with a refCount of 1, so the loop was guaranteed to iterate exactly once.
- 11:50 PM Changeset in webkit [33761] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-21 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Removed support for empty ScopeChains.
SunSpider reports no change.
- 11:50 PM Changeset in webkit [33760] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-21 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Removed some completely unused ScopeChain member functions.
SunSpider reports no change.
- 11:50 PM Changeset in webkit [33759] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
2008-04-21 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Avoid creating unnecessary ScopeChain objects, to reduce refcount churn.
SunSpider reports no change.
- 11:50 PM Changeset in webkit [33758] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-21 Maciej Stachowiak <mjs@apple.com>
Rubber stamped by Alexey.
Add some braces.x
- kjs/testkjs.cpp: (runWithScripts):
- 11:50 PM Changeset in webkit [33757] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-21 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- only print "End:" output when -d flag is passed.
This fixes half of our failing JSC regression tests.
- kjs/testkjs.cpp: (runWithScripts):
- 11:50 PM Changeset in webkit [33756] by
-
- 9 edits in branches/squirrelfish/JavaScriptCore
2008-04-21 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Add support for variable declarations in eval code.
- VM/CodeBlock.h: (KJS::EvalCodeBlock::EvalCodeBlock):
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::CodeGenerator):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::execute):
- VM/Machine.h:
- kjs/function.cpp: (KJS::globalFuncEval):
- kjs/nodes.cpp: (KJS::EvalNode::generateCode):
- kjs/nodes.h: (KJS::EvalNode::):
- 11:49 PM Changeset in webkit [33755] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
Throw exceptions for invalid continue, break, and return statements.
Reviewed by Maciej
Simple refactoring and extension of Cameron's AssignErrorNode, etc patch
- 11:49 PM Changeset in webkit [33754] by
-
- 15 edits in branches/squirrelfish/JavaScriptCore
2008-04-20 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Removed Machine.cpp from AllInOneFile.cpp, and manually inlined a few
things that used to be inlined automatically.
1.9% speedup on SunSpider.
My hope is that we'll face fewer surprises in Machine.cpp codegen, now
that GCC is making fewer decisions. The speedup seems to confirm that.
- 11:49 PM Changeset in webkit [33753] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
Bug 18642: Iterator context may get placed into the return register, leading to much badness
<https://bugs.webkit.org/show_bug.cgi?id=18642>
Reviewed by Maciej
To prevent incorrectly reusing what will become the result register for
eval and global code execution, we need to request and ref the destination
in advance of codegen. Unfortunately this may lead to unnecessary copying,
although in future we can probably limit this. Curiously SunSpider shows
a progression in a number of tests, although it comes out as a wash overall.
This also fixes one of the regressions in run-javascriptcore-tests.
- 11:49 PM Changeset in webkit [33752] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-04-20 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Add support for AssignErrorNode, PrefixErrorNode, and PostfixErrorNode.
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitCreateError):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Opcode.h:
- kjs/nodes.cpp: (KJS::PostfixErrorNode::emitCode): (KJS::PrefixErrorNode::emitCode): (KJS::AssignErrorNode::emitCode):
- kjs/nodes.h:
- 11:49 PM Changeset in webkit [33751] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
Provide line number information in exceptions
Reviewed by Geoff and Mark
Simple patch, adds line number information metadata to CodeBlock
and a simple method to get the line number responsible for a given
Instruction*.
- 11:49 PM Changeset in webkit [33750] by
-
- 5 edits in trunk/WebKitTools
2008-05-19 Stephanie Lewis <Stephanie Lewis>
Explicitly set run mode to 32bit unless overridden to avoid
confusion when running tests
- Scripts/build-dumprendertree:
- Scripts/gdb-safari:
- Scripts/run-webkit-tests:
- Scripts/webkitdirs.pm:
- 11:49 PM Changeset in webkit [33749] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
Provide "sourceURL" in exceptions
Reviewed by Maciej
- 11:49 PM Changeset in webkit [33748] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
Don't call emitCode directly on subnodes, instead use CodeGenerator::emitNode
Reviewed by Maciej
This patch just a preparation for tracking line numbers.
- 11:49 PM Changeset in webkit [33747] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
Bug 18619: Support continue, break, and return in try .. finally blocks
<https://bugs.webkit.org/show_bug.cgi?id=18619>
Reviewed by Maciej
This patch replaces the current partial finally support (which uses code
duplication to achieve what it does) with a subroutine based approach.
This has a number of advantages over code duplication:
- Reduced code size
- Simplified exception handling as the finaliser code only exists in one place, so no "magic" is needed to get the correct handler for a finaliser.
- When we support instruction to line number mapping we won't need to worry about the dramatic code movement caused by duplication
On the downside it is necessary to add two new opcodes, op_jsr and op_sret
to enter and exit the finaliser subroutines, happily SunSpider reports
a performance progression (gcc amazes me) and ubench reports a wash.
While jsr and sret provide a mechanism that allows us to enter and exit
any arbitrary finaliser we need to, it was still necessary to increase
the amount of information tracked when entering and exiting both finaliser
scopes and dynamic scopes ("with"). This means "scopeDepth" is now
the combination of "finaliserDepth" and "dynamicScopeDepth". We also
now use a scopeContextStack to ensure that we pop scopes and execute
finalisers in the correct order. This increases the cost of "with" nodes
during codegen, but it should not be significant enough to effect real
world performance and greatly simplifies codegen for return, break and
continue when interacting with finalisers.
- 11:49 PM Changeset in webkit [33746] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
Remove unnecessary files from testkjs, testapi and minidom targets.
Rubber-stamped by Oliver Hunt.
- JavaScriptCore.xcodeproj/project.pbxproj:
- 11:49 PM Changeset in webkit [33745] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-17 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Fixed ASSERT seen during run-sunspider of a debug build.
- VM/CodeGenerator.h: Made the default codegen buffers bigger. SunSpider runs all tests in one global environment, so you end up with more than 128 locals. This is just a stop-gap until we code up a real solution to arbitrary symbol and label limits.
- 11:49 PM Changeset in webkit [33744] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-17 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Fixed a bug in exception unwinding, where we wouldn't deref the scope
chain in global scope, so we would leak ScopeChainNodes when exceptions
were thrown inside "with" and "catch" scopes.
Also did some cleanup of the unwinding code along the way.
Scope chain reference counting is still wrong in a few ways. I thought
I would fix this portion of it first.
run-sunspider shows no change.
- VM/Machine.cpp: (KJS::Machine::unwindCallFrame): (KJS::Machine::throwException): (KJS::Machine::privateExecute):
- VM/Machine.h:
- 11:49 PM Changeset in webkit [33743] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
Add more exception checking to toNumber conversions
Reviewed by Maciej
This corrects op_pre_dec, op_negate, op_mod and op_sub.
- 11:49 PM Changeset in webkit [33742] by
-
- 11 edits in branches/squirrelfish/JavaScriptCore
2008-04-17 Geoffrey Garen <ggaren@apple.com> and Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver Hunt.
Behold: eval.
Introduced a new opcode: op_call_eval. In the normal case, it performs
an eval. In the case where eval has been overridden in some way, it
performs a function call.
- VM/CodeGenerator.h: Added a feature so the code generator knows not to optimized locals in eval code.
- 11:49 PM Changeset in webkit [33741] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-17 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Added some ASSERTs to document codegen failures in
run-javascriptcore-tests.
For all tests, program-level codegen now either succeeds, or fails with
an ASSERT.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::addVar): (KJS::CodeGenerator::CodeGenerator): (KJS::CodeGenerator::newTemporary): (KJS::CodeGenerator::newLabel):
- 11:49 PM Changeset in webkit [33740] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-17 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Fixed another case of a dst register being an unreferenced temporary
(caused an ASSERT when running the full sunspider suite).
- kjs/nodes.cpp: (KJS::CaseBlockNode::emitCodeForBlock):
- 11:49 PM Changeset in webkit [33739] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
2008-04-16 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff.
- add documentation (and meaningful parameter names) for arithmetic and bitwise binary ops
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitMul): (KJS::CodeGenerator::emitDiv): (KJS::CodeGenerator::emitMod): (KJS::CodeGenerator::emitSub): (KJS::CodeGenerator::emitLeftShift): (KJS::CodeGenerator::emitRightShift): (KJS::CodeGenerator::emitUnsignedRightShift): (KJS::CodeGenerator::emitBitAnd): (KJS::CodeGenerator::emitBitXOr): (KJS::CodeGenerator::emitBitOr):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Opcode.h:
- kjs/nodes.cpp: (KJS::MultNode::emitCode): (KJS::DivNode::emitCode): (KJS::ModNode::emitCode): (KJS::SubNode::emitCode): (KJS::LeftShiftNode::emitCode): (KJS::RightShiftNode::emitCode): (KJS::UnsignedRightShiftNode::emitCode): (KJS::BitAndNode::emitCode): (KJS::BitXOrNode::emitCode): (KJS::BitOrNode::emitCode): (KJS::emitReadModifyAssignment): (KJS::ReadModifyResolveNode::emitCode):
- 11:49 PM Changeset in webkit [33738] by
-
- 18 edits in branches/squirrelfish/JavaScriptCore
Exception checks for toNumber in op_pre_inc
Reviewed by Geoff
This is somewhat more convoluted than the simple hadException checks
we currently use. Instead we use special toNumber conversions that
select between the exception and ordinary vPC. This allows us to
remove any branches in the common case (incrementing a number).
- 11:49 PM Changeset in webkit [33737] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-16 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff.
- ensure that activations are kept in a register to protect them from GC
Also renamed OptionalCalleeScopeChain constant to OptionalCalleeActivation, since
that is what is now kept there, and there is no more need to keep the scope chain in
the register file.
- VM/Machine.cpp: (KJS::initializeCallFrame): (KJS::scopeChainForCall):
- VM/Machine.h: (KJS::Machine::):
- 11:49 PM Changeset in webkit [33736] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-16 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Made "this" work in program code / global scope.
The machine can initialize "this" prior to execution because it knows
that, for program code, "this" is always stored in lr1.
- VM/Machine.cpp: (KJS::Machine::execute):
- VM/Machine.h: (KJS::Machine::):
- kjs/interpreter.cpp: (KJS::Interpreter::evaluate):
- 11:49 PM Changeset in webkit [33735] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-16 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Fixed a codegen bug when returning from inside a dynamic scope (a with
or catch block): we need to pop any dynamic scope(s) that have been
added so op_ret can find the activation object at the top of the scope
chain.
- kjs/nodes.cpp: (KJS::ReturnNode::emitCode): If we're returning from inside a dynamic scope, emit a jmp_scopes to take care of popping any dynamic scope(s) and then branching to the return instruction.
- 11:49 PM Changeset in webkit [33734] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
2008-04-16 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff.
- document the add and get_prop_id opcodes
In addition to adding documentation in comments, I changed
references to register IDs or indices relating to these opcodes to
have meaningful names instead of r0 r1 r2.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitAdd):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- kjs/nodes.cpp: (KJS::DotAccessorNode::emitCode): (KJS::FunctionCallDotNode::emitCode): (KJS::PostIncDotNode::emitCode): (KJS::PostDecDotNode::emitCode): (KJS::PreIncDotNode::emitCode): (KJS::PreDecDotNode::emitCode): (KJS::AddNode::emitCode): (KJS::ReadModifyDotNode::emitCode):
- 11:49 PM Changeset in webkit [33733] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-15 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt and Maciej Stachowiak.
Fixed a codegen bug in with and switch, and added an ASSERT to
make sure it doesn't happen again.
emitCode() assumes that dst, if non-zero, is either referenced or
non-temporary (i.e., it assumes that newTemporary() will return a
register not equal to dst). Certain callers to emitCode() weren't
guaranteeing that to be so, so temporary register values were being
overwritten.
- VM/CodeGenerator.h: (KJS::CodeGenerator::emitNode): ASSERT that dst is referenced or non-temporary.
- kjs/nodes.cpp: (KJS::CommaNode::emitCode): Reference the dst we pass.
(KJS::WithNode::emitCode): No need to pass an explicit dst register.
(KJS::CaseBlockNode::emitCodeForBlock): No need to pass an explicit dst register.
(KJS::SwitchNode::emitCode): No need to pass an explicit dst register.
- kjs/nodes.h: Made dst the last parameter to emitCodeForBlock, to match emitCode.
- 11:48 PM Changeset in webkit [33732] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
Bug 18526: Throw exceptions when resolve fails for op_resolve_base_and_func.
<https://bugs.webkit.org/show_bug.cgi?id=18526>
Reviewed by Maciej
Very simple fix, sunspider shows a 0.7% progression, ubench shows a 0.4% regression.
- 11:48 PM Changeset in webkit [33731] by
-
- 2 edits in branches/squirrelfish/SunSpider
2008-04-15 Maciej Stachowiak <mjs@apple.com>
Rubber stamped by Oliver.
- add newly working tests to squirrelfish list
- tests/LIST-SQUIRRELFISH: Add 3d-raytrace and string-unpack-code
- 11:48 PM Changeset in webkit [33730] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-15 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- fix incorrect result on 3d-raytrace test
Oliver found and tracked down this bug, I just typed in the fix.
- VM/Machine.cpp: (KJS::slideRegisterWindowForCall): When setting omitted parameters to undefined, account for the space for local variables.
- 11:48 PM Changeset in webkit [33729] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-15 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- fix codegen handling of dst registers
1.006x speedup (not sure why).
Most emitCode functions take an optional "dst" parameter that says
where the output of the instruction should be written. I made some
functions for convenient handling of the dst register:
- VM/CodeGenerator.h: (KJS::CodeGenerator::tempDestination): Takes the dst register. Returns it if it is not null and is a temporary, otherwise allocates a new temporary. This is intended for cases where an intermediate value might be written into the dst
(KJS::CodeGenerator::finalDestination): Takes the dst register and an optional
register that was used as a temp destination. Picks the right thing for the final
output. Intended to be used as the output register for the instruction that generates
the final value of a particular node.
(KJS::CodeGenerator::moveToDestinationIfNeeded): Takes dst and a
RegisterID; moves from the register to dst if dst is defined and
different from the register. This is intended for cases where the
result of a node is already in a specific register (likely a
local), and so no code needs to be generated unless a specific
destination has been requested, in which case a move is needed.
I also applied these methods throughout emitCode functions. In
some cases this was just cleanup, in other cases I fixed actual
codegen bugs. Below I have given specific comments for the cases
where I believe I fixed a codegen bug, or improved quality of codegen.
- kjs/nodes.cpp: (KJS::NullNode::emitCode): (KJS::FalseNode::emitCode): (KJS::TrueNode::emitCode): (KJS::NumberNode::emitCode): (KJS::StringNode::emitCode): (KJS::RegExpNode::emitCode): (KJS::ThisNode::emitCode): Now avoids emitting a mov when dst is the same as the this register (the unlikely case of "this = this"); (KJS::ResolveNode::emitCode): Now avoids emitting a mov when dst is the same as the local regiester, in the local var case (the unlikely case of "x = x"); (KJS::ArrayNode::emitCode): Fixed a codegen bug where array literal element expressions may have observed an intermediate value of constructing the array. (KJS::ObjectLiteralNode::emitCode): (KJS::PropertyListNode::emitCode): Fixed a codegen bug where object literal property definition expressions may have obesrved an intermediate value of constructing the object. (KJS::BracketAccessorNode::emitCode): (KJS::DotAccessorNode::emitCode): (KJS::NewExprNode::emitCode): (KJS::FunctionCallValueNode::emitCode): (KJS::FunctionCallBracketNode::emitCode): (KJS::FunctionCallDotNode::emitCode): (KJS::PostIncResolveNode::emitCode): (KJS::PostDecResolveNode::emitCode): (KJS::PostIncBracketNode::emitCode): (KJS::PostDecBracketNode::emitCode): (KJS::PostIncDotNode::emitCode): (KJS::PostDecDotNode::emitCode): (KJS::DeleteResolveNode::emitCode): (KJS::DeleteBracketNode::emitCode): (KJS::DeleteDotNode::emitCode): (KJS::DeleteValueNode::emitCode): (KJS::VoidNode::emitCode): (KJS::TypeOfResolveNode::emitCode): (KJS::TypeOfValueNode::emitCode): (KJS::PreIncResolveNode::emitCode): Fixed a codegen bug where the final value would not be output to the dst register in the local var case. (KJS::PreDecResolveNode::emitCode): Fixed a codegen bug where the final value would not be output to the dst register in the local var case. (KJS::PreIncBracketNode::emitCode): (KJS::PreDecBracketNode::emitCode): (KJS::PreIncDotNode::emitCode): (KJS::PreDecDotNode::emitCode): (KJS::UnaryPlusNode::emitCode): (KJS::NegateNode::emitCode): (KJS::BitwiseNotNode::emitCode): (KJS::LogicalNotNode::emitCode): (KJS::MultNode::emitCode): (KJS::DivNode::emitCode): (KJS::ModNode::emitCode): (KJS::AddNode::emitCode): (KJS::SubNode::emitCode): (KJS::LeftShiftNode::emitCode): (KJS::RightShiftNode::emitCode): (KJS::UnsignedRightShiftNode::emitCode): (KJS::LessNode::emitCode): (KJS::GreaterNode::emitCode): (KJS::LessEqNode::emitCode): (KJS::GreaterEqNode::emitCode): (KJS::InstanceOfNode::emitCode): (KJS::InNode::emitCode): (KJS::EqualNode::emitCode): (KJS::NotEqualNode::emitCode): (KJS::StrictEqualNode::emitCode): (KJS::NotStrictEqualNode::emitCode): (KJS::BitAndNode::emitCode): (KJS::BitXOrNode::emitCode): (KJS::BitOrNode::emitCode): (KJS::LogicalAndNode::emitCode): (KJS::LogicalOrNode::emitCode): (KJS::ConditionalNode::emitCode): (KJS::emitReadModifyAssignment): Allow an out argument separate from the operands, needed for fixes below. (KJS::ReadModifyResolveNode::emitCode): Fixed a codegen bug where the right side of the expression may observe an intermediate value. (KJS::AssignResolveNode::emitCode): Fixed a codegen bug where the right side of the expression may observe an intermediate value. (KJS::ReadModifyDotNode::emitCode): Fixed a codegen bug where the right side of the expression may observe an intermediate value. (KJS::ReadModifyBracketNode::emitCode): Fixed a codegen bug where the right side of the expression may observe an intermediate value. (KJS::CommaNode::emitCode): Avoid writing temporary value to dst register. (KJS::ReturnNode::emitCode): Void return should return undefined, not null. (KJS::FuncExprNode::emitCode):
- 11:48 PM Changeset in webkit [33728] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-15 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff.
- fix huge performance regression (from trunk) in string-unpack-code
This restores string-unpack-code performance to parity with
trunk (2.27x speedup relative to previous SquirrelFish)
- VM/Machine.cpp: (KJS::Machine::execute): Shrink register file after call to avoid growing repeatedly.
- 11:48 PM Changeset in webkit [33727] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-15 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Fixed dumpCallFrame to match our new convention of passing around a
ScopeChainNode* instead of a ScopeChain*.
- JavaScriptCore.exp:
- VM/Machine.cpp: (KJS::Machine::dumpCallFrame):
- VM/Machine.h:
- 11:48 PM Changeset in webkit [33726] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
Bug 18436: Need to throw exception on read/modify/write or similar resolve for nonexistent property
<https://bugs.webkit.org/show_bug.cgi?id=18436>
Reviewed by Maciej.
Add op_resolve_base_and_property for read/modify/write operations,
this adds a "superinstruction" to resolve the base and value of a
property simultaneously. Just using resolveBase and resolve results
in an 5% regression in ubench, 30% in loop-empty-resolve (which is
expected). 1.3% progression in sunspider, 2.1% in ubench, with a
21% gain in loop-empty-resolve. The only outlier is function-missing-args
which gets a 3% regression that I could never resolve.
- 11:48 PM Changeset in webkit [33725] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-04-15 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- fixed "SquirrelFish crashes due to bad scope chain on some SunSpider tests" https://bugs.webkit.org/show_bug.cgi?id=18508
3d-raytrace and string-unpack-code now run.
The basic approach is to pass around ScopeChainNode* instead of
ScopeChain*, which in addition to not becoming suddenly an invalid
pointer also saves an indirection.
This is an 0.4% speedup on SunSpider --squirrelfish (1.8% on --ubench)
- VM/Machine.cpp: (KJS::resolve): (KJS::resolveBase): (KJS::resolveBaseAndFunc): (KJS::initializeCallFrame): (KJS::scopeChainForCall): (KJS::Machine::unwindCallFrame): (KJS::Machine::throwException): (KJS::Machine::execute): (KJS::Machine::privateExecute):
- VM/Machine.h:
- VM/Register.h: (KJS::Register::):
- kjs/nodes.cpp: (KJS::EvalNode::generateCode): (KJS::FunctionBodyNode::generateCode): (KJS::ProgramNode::generateCode): (KJS::ProgramNode::processDeclarations): (KJS::EvalNode::processDeclarations): (KJS::FuncDeclNode::makeFunction): (KJS::FuncExprNode::makeFunction):
- kjs/nodes.h: (KJS::ProgramNode::): (KJS::EvalNode::): (KJS::FunctionBodyNode::):
- kjs/object.h:
- kjs/scope_chain.h: (KJS::ScopeChainNode::ScopeChainNode): (KJS::ScopeChainNode::deref): (KJS::ScopeChainIterator::ScopeChainIterator): (KJS::ScopeChainIterator::operator*): (KJS::ScopeChainIterator::operator->): (KJS::ScopeChain::ScopeChain): (KJS::ScopeChain::node): (KJS::ScopeChain::deref): (KJS::ScopeChain::ref): (KJS::ScopeChainNode::ref): (KJS::ScopeChainNode::release): (KJS::ScopeChainNode::begin): (KJS::ScopeChainNode::end):
- 11:48 PM Changeset in webkit [33724] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-14 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Fixed crash when accessing registers in a torn-off activation object.
- kjs/JSActivation.cpp: (KJS::JSActivation::copyRegisters): Update our registerOffset after copying our registers, since our offset should now be relative to our private register array, not the shared register file.
- 11:48 PM Changeset in webkit [33723] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-14 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- fix a codegen flaw that makes some tests run way too fast or way too slow
The basic problem was that FunctionCallResolveNode results in
codegen which can incorrectly write an intermediate value into the
dst register even when that is a local. I added convenience
functions to CodeGenerator for getting this right, but for now I
only fixed FunctionCallResolve.
- VM/CodeGenerator.h: (KJS::CodeGenerator::tempDestination): (KJS::CodeGenerator::):
- kjs/nodes.cpp: (KJS::FunctionCallResolveNode::emitCode):
- 11:48 PM Changeset in webkit [33722] by
-
- 1 edit8 adds in branches/squirrelfish/SunSpider
2008-04-14 Maciej Stachowiak <mjs@apple.com>
Rubber stamped by Oliver.
- move ubench tests properly.
- tests/ubench: Added.
- tests/ubench/function-closure.js: Added.
- tests/ubench/function-empty.js: Added.
- tests/ubench/function-missing-args.js: Added.
- tests/ubench/function-sum.js: Added.
- tests/ubench/loop-empty-resolve.js: Added.
- tests/ubench/loop-empty.js: Added.
- tests/ubench/loop-sum.js: Added.
- 11:48 PM Changeset in webkit [33721] by
-
- 2 edits in branches/squirrelfish/WebKitTools
2008-04-14 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- added support for --ubench mode
- Scripts/run-sunspider:
- 11:48 PM Changeset in webkit [33720] by
-
- 2 edits in branches/squirrelfish/SunSpider
2008-04-14 Maciej Stachowiak <mjs@apple.com>
Rubber stamped by Oliver.
- sunspider: Don't force --runs=1 in squirrelfish mode any more.
- 11:48 PM Changeset in webkit [33719] by
-
- 12 edits in branches/squirrelfish
2008-04-14 Gabor Loki <loki@inf.u-szeged.hu>
Reviewed and slightly tweaked by Geoffrey Garen.
Bug 18489: Squirrelfish doesn't build on linux
<https://bugs.webkit.org/show_bug.cgi?id=18489>
- JavaScriptCore.pri: Add VM into include path and its files into source set
- VM/JSPropertyNameIterator.cpp: Fix include name
- VM/Machine.cpp: Add UNLIKELY macro for GCC
- VM/Machine.h: Add missing includes
- VM/RegisterFile.cpp: Add missing include
- kjs/testkjs.pro: Add VM into include path
WebCore:
2008-04-14 Gabor Loki <loki@inf.u-szeged.hu>
Reviewed by Geoffrey Garen.
Bug 18489: Squirrelfish doesn't build on linux
<https://bugs.webkit.org/show_bug.cgi?id=18489>
- WebCore.pro: Add JavaScriptCore/VM into include path
- 11:48 PM Changeset in webkit [33718] by
-
- 3 edits1 add7 deletes in branches/squirrelfish/SunSpider
2008-04-14 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- make --squirrelfish mode use the real harness, but a reduced set of tests
Also add a new ubench mode which runs the older squirrelfish microbenchmarks.
- sunspider:
- tests/LIST-SQUIRRELFISH:
- tests/LIST-UBENCH: Added.
- tests/squirrelfish: Moved to tests/ubench
- 11:48 PM Changeset in webkit [33717] by
-
- 1 edit1 delete in branches/squirrelfish/SunSpider
2008-04-14 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Removed an unused test.
- tests/squirrelfish/loop-resolve.js: Removed.
- 11:48 PM Changeset in webkit [33716] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-14 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Restored OwnPtr in some places where I had removed it previously. We
can have an OwnPtr to an undefined class in a header as long as the
class's destructor isn't in the header.
- 11:48 PM Changeset in webkit [33715] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-14 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Fixed access to "this" inside dynamic scopes.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::registerForLocal): Always return a register for "this", even if we're not optimizing access to other locals. Because "this" is a keyword, it's always in a register and always accessible.
- VM/CodeGenerator.h: (KJS::CodeGenerator::shouldOptimizeLocals): Factored out a function for determining whether we should optimize access to locals, since eval will need to make this test a little more complicated.
- 11:48 PM Changeset in webkit [33714] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-14 Maciej Stachowiak <mjs@apple.com>
Reviewed by Adam.
- fix crash when running SunSpider full harness
When growing the register file's buffer to make space for new globals,
make sure to copy accounting for the fact that the new space is logically
at the beginning of the buffer in this case, instead of at the end as when
growing for a new call frame.
- VM/RegisterFile.cpp: (KJS::RegisterFile::newBuffer): (KJS::RegisterFile::growBuffer): (KJS::RegisterFile::addGlobalSlots):
- VM/RegisterFile.h:
- 11:48 PM Changeset in webkit [33713] by
-
- 6 edits in branches/squirrelfish/JavaScriptCore
2008-04-11 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Mark constant pools for global and eval code (collectively known as
"program code"). (Constant pools for function code are already marked by
their functions.)
The global object is responsible for marking program code constant
pools. Code blocks add themselves to the mark set at creation time, and
remove themselves from the mark set at destruction time.
sunspider --squirrelfish reports a 1% speedup, perhaps because
generateCode() is now non-virtual.
- kjs/nodes.cpp: I had to use manual init and delete in this file because putting an OwnPtr into the header would have created a circular header dependency.
- 11:48 PM Changeset in webkit [33712] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
Bug 18231: Improve support for function call nodes in SquirrelFish
<https://bugs.webkit.org/show_bug.cgi?id=18231>
Reviewed by Maciej
Use correct value of 'this' for function calls.
- 11:48 PM Changeset in webkit [33711] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-10 Geoffrey Garen <ggaren@apple.com>
This time for sure.
- kjs/interpreter.cpp: (KJS::Interpreter::evaluate):
- 11:48 PM Changeset in webkit [33710] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-10 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Fixed Interpreter::execute to honor the new model for returning non-NULL
values when an exception is thrown.
- kjs/interpreter.cpp: (KJS::Interpreter::evaluate):
- 11:48 PM Changeset in webkit [33709] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
Fix SquirrelFish interpreter to pass internal exceptions back to
native code correctly.
Reviewed by Geoff
- 11:47 PM Changeset in webkit [33708] by
-
- 49 edits1 copy1 add in branches/squirrelfish
2008-04-10 Sam Weinig <sam@webkit.org>
Reviewed by Geoffrey Garen.
Replace the use of getCallData in op_construct with the new
getConstructData function that replaces implementsConstruct.
- API/JSCallbackConstructor.cpp: (KJS::JSCallbackConstructor::getConstructData):
- API/JSCallbackConstructor.h:
- API/JSCallbackObject.h:
- API/JSCallbackObjectFunctions.h: (KJS::::getConstructData): (KJS::::construct):
- API/JSObjectRef.cpp: (JSObjectIsConstructor):
- JavaScriptCore.exp:
- JavaScriptCore.xcodeproj/project.pbxproj:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- kjs/CallData.h:
- kjs/ConstructData.h: Copied from JavaScriptCore/kjs/CallData.h. (KJS::):
- kjs/array_object.cpp: (KJS::ArrayObjectImp::getConstructData):
- kjs/array_object.h:
- kjs/bool_object.cpp: (KJS::BooleanObjectImp::getConstructData):
- kjs/bool_object.h:
- kjs/date_object.cpp: (KJS::DateObjectImp::getConstructData):
- kjs/date_object.h:
- kjs/error_object.cpp: (KJS::ErrorObjectImp::getConstructData): (KJS::NativeErrorImp::getConstructData):
- kjs/error_object.h:
- kjs/function.cpp: (KJS::FunctionImp::getCallData): (KJS::FunctionImp::getConstructData): (KJS::FunctionImp::construct):
- kjs/function.h:
- kjs/function_object.cpp: (KJS::FunctionObjectImp::getConstructData):
- kjs/function_object.h:
- kjs/nodes.cpp: (KJS::NewExprNode::inlineEvaluate):
- kjs/number_object.cpp: (KJS::NumberObjectImp::getConstructData):
- kjs/number_object.h:
- kjs/object.cpp:
- kjs/object.h:
- kjs/object_object.cpp: (KJS::ObjectObjectImp::getConstructData):
- kjs/object_object.h:
- kjs/regexp_object.cpp: (KJS::RegExpObjectImp::getConstructData):
- kjs/regexp_object.h:
- kjs/string_object.cpp: (KJS::StringObjectImp::getConstructData):
- kjs/string_object.h:
- kjs/value.cpp: (KJS::JSCell::getConstructData):
- kjs/value.h: (KJS::JSValue::getConstructData):
WebCore:
2008-04-10 Sam Weinig <sam@webkit.org>
Reviewed by Geoffrey Garen.
Adjusted WebCore JS functions to the new "getConstructData" calling convention.
- 11:47 PM Changeset in webkit [33707] by
-
- 4 edits4 adds in branches/squirrelfish/JavaScriptCore
Bug 18420: SquirrelFish: need to throw Reference and Type errors
when attempting invalid operations on JSValues
Reviewed by Geoff
Add validation and exception checks to SquirrelFish so that the
correct exceptions are thrown for undefined variables, type errors
and toObject failure. Also handle exceptions thrown by native
function calls.
- 11:47 PM Changeset in webkit [33706] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-10 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Pass a function body node its function's scope chain, rather than the
current execution context's scope chain, when compiling it.
This doesn't matter yet, but it will once we start using the scope
chain during compilation.
sunspider --squirrelfish notes a tiny speedup.
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- 11:47 PM Changeset in webkit [33705] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-10 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Fix two bugs when throwing exceptions from re-entrant JS calls:
(1) Don't shrink the register file to 0, since our caller may still
be using it.
(2) In case of exception, return jsNull() instead of 0 because,
surprisingly, some JavaScriptCore clients rely on a function's return
value being safe to operate on even if the function threw an exception.
Also:
- Changed FunctionImp::callAsFunction to honor the new semantics of exceptions not returning 0.
- Renamed "handlerPC" to "handlerVPC" to match other uses of "VPC".
- Renamed "exceptionData" to "exceptionValue", because "data" seemed to imply something more than just a JSValue.
- Merged prepareException into throwException, since throwException was its only caller, and it seemed weird that throwException didn't take an exception as an argument.
sunspider --squirrelfish does not seem to complain on my machine, but it
complains a little (.6%) on Oliver's.
- 11:47 PM Changeset in webkit [33704] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-10 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Fixed op_construct for CallTypeNative to reacquire "r" before setting
its return value, since registerBase can theoretically change during the
execution of arbitrary code. (Not sure if any native constructors
actually make this possible.)
sunspider --squirrelfish does not seem to complain.
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- 11:47 PM Changeset in webkit [33703] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
2008-04-10 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt and Sam Weinig.
Re-entrant execution of function code (global code -> built-in function
-> JS function):
Miraculously, sunspider --squirrelfish does not seem to complain.
A re-entrant function call is the same as a normal function call with
one exception: the re-entrant call leaves everything except for
CallerCodeBlock in the call frame header uninitialized, since the call
doesn't need to return to JS code. (It sets CallerCodeBlock to 0, to
indicate that the call shouldn't return to JS code.)
Also fixed a few issues along the way:
- Fixed two bugs in the read-write List implementation that caused m_size and m_buffer to go stale.
- Changed native call code to update "r" *before* setting the return value, since the call may in turn call JS code, which changes the value of "r".
- Migrated initialization of "r" outside of Machine::privateExecute, because global code and function code initialize "r" differently.
- Migrated a codegen warning from Machine::privateExecute to the wiki.
- Removed unnecessary "r" parameter from slideRegisterWindowForCall
- VM/Machine.cpp: (KJS::slideRegisterWindowForCall): (KJS::scopeChainForCall): (KJS::Machine::execute): (KJS::Machine::privateExecute):
- VM/Machine.h:
- kjs/function.cpp: (KJS::FunctionImp::callAsFunction):
- kjs/list.cpp: (KJS::List::getSlice):
- kjs/list.h: (KJS::List::clear):
- 11:47 PM Changeset in webkit [33702] by
-
- 2 edits in branches/squirrelfish/SunSpider
2008-04-10 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
Add newly runnable tests to --squirrelfish mode.
- tests/LIST-SQUIRRELFISH:
- 11:47 PM Changeset in webkit [33701] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-10 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- fix problem with code generation for return with no argument
3d-cube now runs
- kjs/nodes.cpp: (KJS::ReturnNode::emitCode):
- 11:47 PM Changeset in webkit [33700] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-10 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- Implement support for JS constructors
access-binary-trees and access-nbody now run.
Inexplicably a 1% speedup.
- VM/Machine.cpp: (KJS::initializeCallFrame): (KJS::Machine::privateExecute):
- VM/Machine.h: (KJS::Machine::):
- 11:47 PM Changeset in webkit [33699] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-10 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- More code cleanup in preparation for JS constructors
Factor the remaining interesting parts of JS function calls into
slideRegisterWindowForCall and scopeChainForCall.
- VM/Machine.cpp: (KJS::slideRegisterWindowForCall): (KJS::scopeChainForCall): (KJS::Machine::privateExecute):
- 11:47 PM Changeset in webkit [33698] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-10 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff.
- Code cleanup in preparation for JS constructors
- Renamed returnInfo to callFrame.
- Made an enum which defines what goes where in the call frame.
- Factored out initializeCallFrame function from op_call
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitCall): (KJS::CodeGenerator::emitConstruct):
- VM/Machine.cpp: (KJS::Machine::dumpRegisters): (KJS::initializeCallFrame): (KJS::Machine::unwindCallFrame): (KJS::Machine::execute): (KJS::Machine::privateExecute):
- VM/Machine.h: (KJS::Machine::):
- 11:47 PM Changeset in webkit [33697] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-10 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Fixed two bugs in register allocation for function calls:
(1) op_call used to allocate codeBlock->numVars too many registers for
each call frame, due to duplicated math. Fixing this revealed...
(2) By unconditionally calling resize(), op_call used to truncate the
register file when calling a function whose registers fit wholly within
the register file already allocated by its caller.
sunspider --squirrelfish reports no regression.
I also threw in a little extra formatting to dumpCallFrame, because it
helped me debug these issues.
- VM/Machine.cpp: (KJS::Machine::dumpRegisters): (KJS::Machine::execute): (KJS::Machine::privateExecute):
- VM/RegisterFile.h: (KJS::RegisterFile::shrink): (KJS::RegisterFile::grow):
- VM/RegisterFileStack.cpp: (KJS::RegisterFileStack::popRegisterFile):
- 11:47 PM Changeset in webkit [33696] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-09 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Next step toward re-entrant execution of function code (global code ->
built-in function -> JS function):
Made op_ret return from Machine::privateExecute if its calling codeBlock
is NULL.
I'm checking this in by itself to demonstrate that a more clever
mechanism is not necessary for performance.
sunspider --squirrelfish reports no regression.
- ChangeLog:
- VM/Machine.cpp: (KJS::Machine::execute): (KJS::Machine::privateExecute):
- 11:47 PM Changeset in webkit [33695] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
2008-04-09 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Next step toward re-entrant execution of function code (global code ->
built-in function -> JS function):
Made Machine::execute return a value.
Sketched out some code for Machine::execute for functions -- still
doesn't work yet, though.
sunspider --squirrelfish reports no regression.
- VM/Machine.cpp: (KJS::Machine::execute): (KJS::Machine::privateExecute):
- VM/Machine.h:
- kjs/interpreter.cpp: (KJS::Interpreter::evaluate):
- kjs/testkjs.cpp: (runWithScripts):
- 11:47 PM Changeset in webkit [33694] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-09 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
First step toward re-entrant execution of function code (global code ->
built-in function -> JS function):
Tiny bit of refactoring in the Machine class.
sunspider --squirrelfish reports no regression.
- VM/Machine.cpp: (KJS::Machine::dumpRegisters): (KJS::Machine::unwindCallFrame): (KJS::Machine::execute): (KJS::Machine::privateExecute):
- VM/Machine.h: (KJS::Machine::isGlobalCallFrame):
- kjs/interpreter.cpp: (KJS::Interpreter::evaluate):
- 11:47 PM Changeset in webkit [33693] by
-
- 11 edits2 copies in branches/squirrelfish/JavaScriptCore
2008-04-08 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Support for re-entrant execution of global code (global code -> built-in
function -> global code).
Keep a stack of register files instead of just one. Globals propogate
between register files as the register files enter and exit the stack.
An activation still uses its own register file's base as its
registerBase, but the global object uses the register file *stack*'s
registerBase, which updates dynamically to match the register file at
the top of the stack.
sunspider --squirrelfish reports no regression.
- 11:47 PM Changeset in webkit [33692] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-08 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff.
- initial preparatory work for JS constructors
1) Allocate registers for the returnInfo block and "this" value when generating code for
op_construct. These are not used yet, but the JS branch of op_construct will use them.
2) Adjust argc and argv appropriately for native constructor calls.
3) Assign return value in a more straightforward way in op_ret since this is actually
a bit faster (and makes up for the allocation of extra registers above).
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitConstruct):
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- 11:47 PM Changeset in webkit [33691] by
-
- 3 edits1 add in branches/squirrelfish/SunSpider
2008-04-06 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
A little more love for --squirrelfish mode:
Fixed a misplaced sort. Results properly sort now.
Added a test list just for squirrelfish, and updated it to include
all currently passing SunSpider tests.
Fixed the pruning regexp to match 3d-morph.js.
- sunspider:
- 11:47 PM Changeset in webkit [33690] by
-
- 1 edit in branches/squirrelfish/JavaScriptCore/ChangeLog
fix changelog, bokay?
- 11:47 PM Changeset in webkit [33689] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-07 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Fixed crasing SunSpider tests.
Let's just pretend this never happened, bokay?
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::CodeGenerator):
- VM/CodeGenerator.h:
- VM/RegisterFile.cpp: (KJS::RegisterFile::addGlobals):
- 11:47 PM Changeset in webkit [33688] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
2008-04-07 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Restored dumping of generated code as a command-line switch:
run-testkjs -d will do it.
- 11:47 PM Changeset in webkit [33687] by
-
- 12 edits2 adds in branches/squirrelfish/JavaScriptCore
2008-04-07 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Next step toward supporting re-entrant evaluation: Moved register file
maintenance code into a proper "RegisterFile" class.
There's a subtle change to the register file's internal layout: for
global code / the global object, registerOffset is always 0 now. In
other words, all register counting starts at 0, not 0 + (number of
global variables). The helps simplify accounting when the number of
global variables changes.
- 11:47 PM Changeset in webkit [33686] by
-
- 13 edits in branches/squirrelfish/JavaScriptCore
Bug 18338: Support exceptions in SquirrelFish <http://bugs.webkit.org/show_bug.cgi?id=18338>
Reviewed by Geoff
Initial support for exceptions in SquirrelFish, only supports finalisers in the
simple cases (eg. exceptions and non-goto/return across finaliser boundaries).
This doesn't add the required exception checks to existing code, it merely adds
support for throw, catch, and the required stack unwinding.
- 11:46 PM Changeset in webkit [33685] by
-
- 12 edits in branches/squirrelfish/JavaScriptCore
2008-04-06 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
First step toward supporting re-entrant evaluation: Switch register
clients from using "registers", a pointer to a register vector, to
"registerBase", an indirect pointer to the logical first entry in the
register file. (The logical first entry is the first entry that is not
a global variable).
With a vector, offsets into the register file remain good when the
underlying buffer reallocates, but they go bad when the logical
first entry moves. (The logical first entry moves when new global
variables get added to the beginning of the register file.) With an
indirect pointer to the logical first entry, offsets will remain good
regardless.
1.4% speedup on sunspider --squirrelfish. I suspect this is due to
reduced allocation when creating closures, and reduced indirection
through the register vector.
- wtf/Vector.h: Added an accessor for an indirect pointer to the vector's buffer, which we currently use (incorrectly) for registerBase. This is temporary scaffolding to allow us to change client code without changing behavior.
- 11:46 PM Changeset in webkit [33684] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-06 Sam Weinig <sam@webkit.org>
Reviewed by Oliver Hunt.
Implement codegen for ReadModifyDotNode.
- kjs/nodes.cpp: (KJS::ReadModifyDotNode::emitCode):
- kjs/nodes.h:
- 11:46 PM Changeset in webkit [33683] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-06 Sam Weinig <sam@webkit.org>
Reviewed by Oliver Hunt.
Fix codegen for PostIncDotNode and implement codegen for PostIncBracketNode,
PostDecBracketNode and PostDecDotNode.
- kjs/nodes.cpp: (KJS::PostIncBracketNode::emitCode): (KJS::PostDecBracketNode::emitCode): (KJS::PostIncDotNode::emitCode): (KJS::PostDecDotNode::emitCode):
- kjs/nodes.h:
- 11:46 PM Changeset in webkit [33682] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-04-06 Sam Weinig <sam@webkit.org>
Reviewed by Geoffrey Garen.
Implement codegen for PreDecResolveNode, PreIncBracketNode, PreDecBracketNode,
PreIncDotNode and PreDecDotNode. This required adding one new op code, op_pre_dec.
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitPreDec):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Opcode.h:
- kjs/nodes.cpp: (KJS::PreDecResolveNode::emitCode): (KJS::PreIncBracketNode::emitCode): (KJS::PreDecBracketNode::emitCode): (KJS::PreIncDotNode::emitCode): (KJS::PreDecDotNode::emitCode):
- kjs/nodes.h:
- 11:46 PM Changeset in webkit [33681] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
2008-04-06 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Improved register dumping, plus a liberal smattering of "const". Here's
what the new format looks like:
(gdb) call (void)dumpCallFrame(codeBlock, scopeChain, registers->begin(), r)
4 instructions; 48 bytes at 0x509210; 3 locals (2 parameters); 1 temporaries
[ 0] load lr1, undefined(@k0)
[ 3] load lr1, 2(@k1)
[ 6] add tr0, lr2, lr1
[ 10] ret tr0
Constants:
k0 = undefined
k1 = 2
Register frame:
----------------------------------------
use | address | value
----------------------------------------
[return info] | 0x80ac08 | 0x5081c0
[return info] | 0x80ac0c | 0x508e90
[return info] | 0x80ac10 | 0x504acc
[return info] | 0x80ac14 | 0x2
[return info] | 0x80ac18 | 0x0
[return info] | 0x80ac1c | 0x7
[return info] | 0x80ac20 | 0x0
----------------------------------------
[param] | 0x80ac24 | 0x1
[param] | 0x80ac28 | 0x7
[var] | 0x80ac2c | 0xb
[temp] | 0x80ac30 | 0xf
- 11:46 PM Changeset in webkit [33680] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
2008-04-06 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Support for evaluating multiple scripts in the same global environment.
(Still don't support re-entrant evaluation yet.)
The main changes here are:
(1) Obey the ECMA 10.1.3 rules regarding how to resolve collisions when
a given symbol is declared more than once. (This patch fixes the same
issue for function code, too.)
(2) In the case of var and/or function collisions, reuse the existing
storage slot. For global code, this is required for previously
generated instructions to continue to work. For function code, it's
more of a "nice to have": it makes register layout in the case of
collisions easier to understand, and has the added benefit of saving
memory.
(3) Allocate slots in the CodeGenerator's m_locals vector in parallel
to register indexes in the symbol table. This ensures that, given an
index in the symbol table, we can find the corresponding RegisterID
without hashing, which speeds up codegen.
I moved responsibility for emitting var and function initialization
instructions into the CodeGenerator, because bookkeeping in cases where
var, function, and/or parameter names collide requires a lot of
internal knowledge about the CodeGenerator.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::addVar): Removed responsibility for checking whether a var declaration overwrites "arguments", because the check is inappropriate for global code, which may not have a pre-existing "arguments" symbol in scope. Also changed this function to return a boolean indicating whether addVar actually created a new RegisterID, or just reused an old one.
(KJS::CodeGenerator::CodeGenerator): Split out the constructors for
function code and global code, since they're quite different now.
(KJS::CodeGenerator::registerForLocal): This function does its job
without any hashing now.
- VM/Machine.cpp: Move old globals and update "r" before executing a new script. That way, old globals stay at a constant offset from "r", and previously optimized code still works.
- VM/RegisterID.h: Added the ability to allocate a RegisterID before initializing its index field. We use this for parameters now.
- kjs/JSVariableObject.h: (KJS::JSVariableObject::symbolTableGet): Changed the ungettable getter ASSERT to account for the fact that symbol indexes are all negative.
- 11:46 PM Changeset in webkit [33679] by
-
- 1 edit in branches/squirrelfish/JavaScriptCore/ChangeLog
Fix ChangeLog
- 11:46 PM Changeset in webkit [33678] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-04-05 Sam Weinig <sam@webkit.org>
Reviewed by Geoffrey Garen.
Implement codegen for ForInNode.
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitIn):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Opcode.h:
- kjs/nodes.cpp: (KJS::InNode::emitCode):
- kjs/nodes.h:
- 11:46 PM Changeset in webkit [33677] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-04-05 Sam Weinig <sam@webkit.org>
Reviewed by Oliver Hunt.
- Implement codegen for DeleteResolveNode, DeleteBracketNode, DeleteDotNode and DeleteValueNode.
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitGetPropId): (KJS::CodeGenerator::emitPutPropId): (KJS::CodeGenerator::emitDeletePropId): (KJS::CodeGenerator::emitDeletePropVal): (KJS::CodeGenerator::emitPutPropIndex):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Opcode.h:
- kjs/nodes.cpp: (KJS::DeleteResolveNode::emitCode): (KJS::DeleteBracketNode::emitCode): (KJS::DeleteDotNode::emitCode): (KJS::DeleteValueNode::emitCode):
- kjs/nodes.h:
- 11:46 PM Changeset in webkit [33676] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
2008-04-04 Sam Weinig <sam@webkit.org>
Reviewed by Oliver Hunt.
- Implement codegen for Switch statements.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::pushJumpContext): (KJS::CodeGenerator::popJumpContext): (KJS::CodeGenerator::jumpContextForLabel):
- VM/CodeGenerator.h: Rename LoopContext to JumpContext now that it used of Switch statements in addition to loops.
- kjs/nodes.cpp: (KJS::DoWhileNode::emitCode): (KJS::WhileNode::emitCode): (KJS::ForNode::emitCode): (KJS::ForInNode::emitCode): (KJS::ContinueNode::emitCode): (KJS::BreakNode::emitCode): (KJS::CaseBlockNode::emitCodeForBlock): (KJS::SwitchNode::emitCode):
- kjs/nodes.h: (KJS::CaseClauseNode::expr): (KJS::CaseClauseNode::children): (KJS::CaseBlockNode::):
- 11:46 PM Changeset in webkit [33675] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-03 Maciej Stachowiak <mjs@apple.com>
Reviewed by Sam.
- fix crash in codegen from new nodes
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitConstruct):
- kjs/nodes.h:
- 11:46 PM Changeset in webkit [33674] by
-
- 1 edit in branches/squirrelfish/JavaScriptCore/kjs/nodes.h
File I forgot in my last commit.
- 11:46 PM Changeset in webkit [33673] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-03 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff.
- kjs/nodes.cpp: (KJS::ReadModifyResolveNode::emitCode): (KJS::ReadModifyBracketNode::emitCode):
- kjs/nodes.h:
- 11:46 PM Changeset in webkit [33672] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-02 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff.
- take a shot at marking constant pools for global and eval code
Geoff says this won't really work in all cases but is an ok stopgap.
- kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::mark):
- 11:46 PM Changeset in webkit [33671] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-02 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff.
- fix 2x perf regression in 3d-morph
- VM/Machine.cpp: (KJS::Machine::privateExecute): If we subbed in null for the global object, don't toObject it, since that will throw an exception (very slowly).
- 11:46 PM Changeset in webkit [33670] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-02 Maciej Stachowiak <mjs@apple.com>
Rubber stamped by Geoff
- fix Release build
- kjs/nodes.cpp: (KJS::getNonLocalSymbol):
- 11:46 PM Changeset in webkit [33669] by
-
- 10 edits in branches/squirrelfish/JavaScriptCore
2008-04-02 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Removed the last vestiges of LocalStorage from JSVariableObject and
JSGlobalObject.
- kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::saveLocalStorage): Save and restore from/to registers. Use stub isReadOnly and isDontEnum methods for now, until we really implement attributes in the symbol table. (KJS::JSGlobalObject::restoreLocalStorage): (KJS::JSGlobalObject::reset):
- kjs/JSVariableObject.cpp: (KJS::JSVariableObject::getPropertyNames): Use stub isDontEnum method for now, as above. (KJS::JSVariableObject::getPropertyAttributes): ditto
- kjs/JSVariableObject.h: Removed LocalStorage from JSVariableObjectData. Removed mark method, because subclasses implement different strategies for marking registers. (KJS::JSVariableObject::isReadOnly): Stub method (KJS::JSVariableObject::isDontEnum): ditto
Changed the code below to ASSERT_NOT_REACHED() and return 0, since it
can no longer retrieve LocalStorage from the ExecState. (Eventually,
we'll just remove this code and all its friends, but that's a task for
later.)
- kjs/ExecState.cpp: (KJS::ExecState::ExecState):
- kjs/function.cpp: (KJS::ActivationImp::markChildren):
- kjs/function.h:
- kjs/nodes.cpp: (KJS::getNonLocalSymbol): (KJS::ScopeNode::optimizeVariableAccess): (KJS::ProgramNode::processDeclarations):
- 11:46 PM Changeset in webkit [33668] by
-
- 1 edit in branches/squirrelfish/JavaScriptCore/ChangeLog
reverse order of last two ChangeLog entries (oops)
- 11:46 PM Changeset in webkit [33667] by
-
- 6 edits in branches/squirrelfish/JavaScriptCore
2008-04-01 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff.
- mark the constant pool (at least for function code blocks)
- VM/CodeBlock.cpp: (KJS::CodeBlock::mark):
- VM/CodeBlock.h:
- kjs/function.cpp: (KJS::FunctionImp::mark):
- kjs/nodes.cpp: (KJS::ScopeNode::mark):
- kjs/nodes.h: (KJS::FuncExprNode::body): (KJS::FuncDeclNode::body):
- 11:46 PM Changeset in webkit [33666] by
-
- 6 edits in branches/squirrelfish/JavaScriptCore
2008-04-01 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff.
- mark the constant pool (at least for function code blocks)
- VM/CodeBlock.cpp: (KJS::CodeBlock::mark):
- VM/CodeBlock.h:
- kjs/function.cpp: (KJS::FunctionImp::mark):
- kjs/nodes.cpp: (KJS::ScopeNode::mark):
- kjs/nodes.h: (KJS::FuncExprNode::body): (KJS::FuncDeclNode::body):
- 11:46 PM Changeset in webkit [33665] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-04-01 Geoffrey Garen <ggaren@apple.com>
Reviewed by Beth Dakin.
Cleaned up a few loose ends.
- JavaScriptCore.exp: Export dumpRegisters, so it's visible to gdb even if we don't explicitly call it in the source text.
- VM/Machine.cpp: (KJS::Machine::privateExecute): No need to call dumpRegisters anymore, since that was just a hack for gdb's sake.
- kjs/JSActivation.h: Removed obsolete comment.
- VM/CodeGenerator.cpp: Added ASSERTs to verify that the localCount we're given matches the number of locals actually allocated.
- VM/CodeGenerator.h: (KJS::CodeGenerator::CodeGenerator): Changed "localCount" to include the parameter count, since we're using the word "local" to mean parameter, var, function, or "this". Renamed "m_nextLocal" to "m_nextVar", since "m_nextLocal" doesn't contrast well with "m_nextParameter".
Also moved tracking of implicit "this" parameter from here...
- kjs/nodes.cpp: (KJS::FunctionBodyNode::generateCode): ... to here (KJS::ProgramNode::generateCode): ... and here
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump): Added missing "\n".
- 11:46 PM Changeset in webkit [33664] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-01 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Bug 18274: ResolveNode::emitCode() doesn't make a new temporary when dst
is 0, leading to incorrect codegen
- 11:46 PM Changeset in webkit [33663] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-01 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- fix bug in for..in codegen (gotta use ident, not m_ident)
- kjs/nodes.cpp: (KJS::ForInNode::emitCode):
- 11:46 PM Changeset in webkit [33662] by
-
- 9 edits in branches/squirrelfish/JavaScriptCore
2008-04-01 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- Add suport for regexp literals
- VM/CodeBlock.cpp: (KJS::regexpToSourceString): (KJS::regexpName): (KJS::CodeBlock::dump):
- VM/CodeBlock.h:
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::addRegExp): (KJS::CodeGenerator::emitNewRegExp):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Opcode.h:
- kjs/nodes.cpp: (KJS::RegExpNode::emitCode):
- kjs/nodes.h:
- 11:45 PM Changeset in webkit [33661] by
-
- 12 edits1 copy1 add in branches/squirrelfish/JavaScriptCore
Add support for for..in nodes
Reviewed by Geoff
Added two new opcodes to get_pnames and next_pname to handle iterating
over the set of properties on an object. This iterator is explicitly
invalidated and the property name array is released on standard exit
from the loop, otherwise we rely on GC to do the clean up for us.
- 11:45 PM Changeset in webkit [33660] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-01 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Change CodeGenerator::emitCall() so it increments the reference count of
registers passed to it, and change its callers so they don't needlessly
increment the reference count of the registers they are passing.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitCall):
- kjs/nodes.cpp: (KJS::FunctionCallResolveNode::emitCode): (KJS::FunctionCallDotNode::emitCode):
- 11:45 PM Changeset in webkit [33659] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-01 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- generate call for PostIncDotNode
- kjs/nodes.cpp: (KJS::PostIncDotNode::emitCode):
- kjs/nodes.h:
- 11:45 PM Changeset in webkit [33658] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-01 Maciej Stachowiak <mjs@apple.com>
Build fix.
- fix build (not sure how this ever worked?)
- kjs/nodes.cpp: (KJS::FunctionCallBracketNode::emitCode):
- 11:45 PM Changeset in webkit [33657] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-01 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff.
- generate code for FunctionCallBracketNode
- kjs/nodes.cpp: (KJS::FunctionCallBracketNode::emitCode):
- kjs/nodes.h:
- 11:45 PM Changeset in webkit [33656] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-01 Maciej Stachowiak <mjs@apple.com>
Reviewed by Geoff.
- Fix two crashing SunSpider tests
- VM/Machine.cpp: (KJS::Machine::privateExecute): set up 'this' properly for native calls.
- kjs/list.h: (KJS::List::List): Fix intialization of buffer and size from vector, the initialization order was wrong.
- 11:45 PM Changeset in webkit [33655] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-01 Geoffrey Garen <ggaren@apple.com>
Build fix: marked ASSERT-only variables as UNUSED_PARAMs.
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- kjs/JSVariableObject.h: (KJS::JSVariableObject::symbolTableInitializeVariable):
- 11:45 PM Changeset in webkit [33654] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-04-01 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Next step toward global code: Moved get, put, and initializeVariable
functionality up into JSVariableObject, and changed JSActivation to
rely on it.
- kjs/JSActivation.cpp: (KJS::JSActivation::JSActivation): (KJS::JSActivation::getOwnPropertySlot): (KJS::JSActivation::put): (KJS::JSActivation::initializeVariable):
- kjs/JSVariableObject.h: (KJS::JSVariableObject::valueAt): (KJS::JSVariableObject::isReadOnly): (KJS::JSVariableObject::symbolTableGet): (KJS::JSVariableObject::symbolTablePut): (KJS::JSVariableObject::symbolTableInitializeVariable):
- 11:45 PM Changeset in webkit [33653] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-01 Maciej Stachowiak <mjs@apple.com>
Reviewed by Sam.
- fix HashTable assertion on some SunSpider tests
Don't use -1 as the deleted value for JSValue*-keyed hashtables,
since it is a valid value (it's the immediate for -1).
- VM/CodeGenerator.h: (KJS::CodeGenerator::JSValueHashTraits::emptyValue): (KJS::CodeGenerator::JSValueHashTraits::deletedValue):
- kjs/JSImmediate.h: (KJS::JSImmediate::impossibleValue):
- 11:45 PM Changeset in webkit [33652] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-04-01 Sam Weinig <sam@webkit.org>
Reviewed by Maciej Stachowiak.
Add support for calling Native constructors like new Array().
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitConstruct):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Opcode.h:
- kjs/nodes.cpp: (KJS::NewExprNode::emitCode):
- kjs/nodes.h:
- 11:45 PM Changeset in webkit [33651] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-04-01 Maciej Stachowiak <mjs@apple.com>
Reviewed by Sam.
- add some missing toOpbject calls to avoid crashing when calling methods on primitives
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- 11:45 PM Changeset in webkit [33650] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-04-01 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Changed Machine::dumpRegisters to take a pointer instead of a reference,
so gdb understands how to call it.
- VM/Machine.cpp: (KJS::Machine::dumpRegisters): (KJS::Machine::privateExecute):
- VM/Machine.h:
- 11:45 PM Changeset in webkit [33649] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Fix CodeGenerator::addConstant() so it uses the functionExpressions
counter for function expressions, not the functions counter.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::addConstant):
- 11:45 PM Changeset in webkit [33648] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Sam Weinig <sam@webkit.org>
Reviewed by Geoffrey Garen.
Add emitCode support for TypeOfResolveNode and TypeOfValueNode.
Added new opcode op_type_of to handle them.
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitNot): (KJS::CodeGenerator::emitInstanceOf): (KJS::CodeGenerator::emitTypeOf):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::jsTypeStringForValue): (KJS::Machine::privateExecute):
- VM/Opcode.h:
- kjs/nodes.cpp: (KJS::TypeOfResolveNode::emitCode): (KJS::TypeOfValueNode::emitCode):
- kjs/nodes.h:
- 11:45 PM Changeset in webkit [33647] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Sam Weinig <sam@webkit.org>
Reviewed by Oliver Hunt.
Fix non-computed goto version of isOpcode. op_end is a valid opcode.
- VM/Machine.cpp: (KJS::Machine::isOpcode):
- 11:45 PM Changeset in webkit [33646] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Added op_post_dec.
- 11:45 PM Changeset in webkit [33645] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Geoffrey Garen.
Add support for FunctionCallDotNode.
- kjs/nodes.cpp: (KJS::FunctionCallDotNode::emitCode):
- kjs/nodes.h:
- 11:45 PM Changeset in webkit [33644] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Geoffrey Garen <ggaren@apple.com>
Reviewed by Beth Dakin.
Next step toward global code: Removed more obsolete API, moved
saveLocalStorage and restoreLocalStorage to JSGlobalObject subclass,
since it's only intended for use there.
- ChangeLog:
- JavaScriptCore.exp:
- kjs/Activation.h:
- kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::saveLocalStorage): (KJS::JSGlobalObject::restoreLocalStorage):
- kjs/JSGlobalObject.h:
- kjs/JSVariableObject.cpp:
- kjs/JSVariableObject.h: (KJS::JSVariableObject::JSVariableObjectData::JSVariableObjectData):
- kjs/function.cpp: (KJS::ActivationImp::ActivationImp):
- 11:45 PM Changeset in webkit [33643] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Geoffrey Garen <ggaren@apple.com>
Reviewed by Beth Dakin.
Next step toward global code: subclass JSActivation + JSActivationData
from JSVariableObject + JSVariableObjectData.
JSActivation now relies on JSVariableObject for access to registers and
symbol table, and for some delete functionality, but not for anything
else yet.
(KJS::JSActivation::mark): Cleaned up the style here a little bit.
- 11:45 PM Changeset in webkit [33642] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Geoffrey Garen <ggaren@apple.com>
Reviewed by Beth Dakin.
Next step toward global code: store "rOffset" in JSVariableObjectData.
- kjs/JSGlobalObject.h: (KJS::JSGlobalObject::JSGlobalObjectData::JSGlobalObjectData):
- kjs/JSVariableObject.h: (KJS::JSVariableObject::JSVariableObjectData::JSVariableObjectData):
- 11:45 PM Changeset in webkit [33641] by
-
- 4 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Next steps toward global code:
- Moved access to the register file into JSVariableObject.
- Added more ASSERTs to indicate obsolete APIs there are just hanging around to stave off build failures.
- kjs/JSGlobalObject.h: (KJS::JSGlobalObject::JSGlobalObjectData::JSGlobalObjectData):
- kjs/JSVariableObject.h: (KJS::JSVariableObject::registers): (KJS::JSVariableObject::JSVariableObjectData::JSVariableObjectData): (KJS::JSVariableObject::JSVariableObject):
- 11:45 PM Changeset in webkit [33640] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Sam Weinig <sam@webkit.org>
Reviewed by Oliver. Tweaked somewhat by Maciej.
- implement codegen for ReadModifyResolveNode
- kjs/nodes.cpp: (KJS::emitReadModifyAssignment): (KJS::ReadModifyResolveNode::emitCode):
- kjs/nodes.h:
- 11:45 PM Changeset in webkit [33639] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Geoff.
Fix the build -- r31492 removed activation tear-off, but r31493 used it.
- kjs/nodes.cpp: (KJS::FuncExprNode::makeFunction):
- 11:45 PM Changeset in webkit [33638] by
-
- 9 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Add support for FuncExprNode to SquirrelFish.
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/CodeBlock.h:
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::addConstant): (KJS::CodeGenerator::emitNewFunctionExpression):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Opcode.h:
- kjs/nodes.cpp: (KJS::FuncExprNode::emitCode): (KJS::FuncExprNode::makeFunction):
- kjs/nodes.h:
- 11:45 PM Changeset in webkit [33637] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
First step toward global code: removed some obsolete JSGlobalObject
APIs, changing clients to ASSERT_NOT_REACHED.
Activation tear-off and scope chain pushing is obsolete because we
statically detect whether an activation + scope node is required.
The variableObject() and activationObject() accessors are obsolete
because they haven't been maintained, and they're mostly used by
node evaluation code, anyway.
The localStorage() accessor is obsolete because everything is in
registers now, and it's mostly used by node evaluation code, anyway.
- 11:44 PM Changeset in webkit [33636] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Maciej Stachowiak <mjs@apple.com>
Reviewed by Darin.
- implement codegen for bracket accessor and bracket assign
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitGetPropVal): (KJS::CodeGenerator::emitPutPropVal):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Opcode.h:
- kjs/nodes.cpp: (KJS::BracketAccessorNode::emitCode): (KJS::AssignBracketNode::emitCode):
- kjs/nodes.h:
- 11:44 PM Changeset in webkit [33635] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Geoffrey Garen <ggaren@apple.com>
Not reviewed.
Removed FIXME that I just fixed.
Added ASSERT to cover an error previously only covered by a FIXME.
- kjs/JSActivation.cpp: (KJS::JSActivation::getOwnPropertySlot):
- 11:44 PM Changeset in webkit [33634] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Geoffrey Garen <ggaren@apple.com>
Not reviewed.
Fixed indentation inside op_call. (I had left this code badly indented
to make the behavior-changing diff clearer.)
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- 11:44 PM Changeset in webkit [33633] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Fixed up logging of jump instructions to follow the following style:
jump offset(->absoluteTarget)
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- 11:44 PM Changeset in webkit [33632] by
-
- 9 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig.
Changed the SymbolTable API to use int instead of size_t. It has been
using int internally for a while now (since squirrelfish symbols can
have negative indices).
- 11:44 PM Changeset in webkit [33631] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Add support for FunctionCallValueNode.
- kjs/nodes.cpp: (KJS::FunctionCallValueNode::emitCode):
- kjs/nodes.h:
- 11:44 PM Changeset in webkit [33630] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-03-31 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
1) Implemented array literals
2) Renamed op_object_get and op_object_put to op_get_prop_id and
op_put_prop_id in preparation for new variants.
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitNewArray): (KJS::CodeGenerator::emitGetPropId): (KJS::CodeGenerator::emitPutPropId): (KJS::CodeGenerator::emitPutPropIndex):
- VM/CodeGenerator.h: (KJS::CodeGenerator::CodeGenerator): (KJS::CodeGenerator::propertyNames):
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Opcode.h:
- kjs/nodes.cpp: (KJS::ArrayNode::emitCode): (KJS::PropertyListNode::emitCode): (KJS::DotAccessorNode::emitCode): (KJS::PostIncResolveNode::emitCode): (KJS::PreIncResolveNode::emitCode): (KJS::AssignResolveNode::emitCode): (KJS::AssignDotNode::emitCode):
- kjs/nodes.h:
- 11:44 PM Changeset in webkit [33629] by
-
- 27 edits6 adds in branches/squirrelfish
2008-03-30 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Implemented native function calls. (Re-entering from native code back
to JS doesn't work yet, though.)
0.2% speedup overall, due to some inlining tweaks. 3.6% regression on
function-empty.js, since we're making a new virtual call and taking a
new branch inside every op_call.
I adjusted the JavaScriptCore calling convention to minimize overhead,
like so:
The machine calls a single virtual function, "getCallData", to get all
the data it needs for a function call. Native code still uses the old
"isObject()" check followed by an "implementsCall()" check, which
aliases to "getCallData". (We can optimize native code to use getCallData
at our leisure.)
To supply a list of arguments, the machine calls a new List constructor
that just takes a pointer and a length, without copying. Native code
still appends to the list one argument at a time. (We can optimize
native code to use the new List constructor at our leisure.)
- VM/Machine.cpp: (KJS::Machine::privateExecute): Changed resize() call to grow() call, to encourage the compiler to inline the Vector code.
- kjs/CallData.h: Added. (KJS::): CallData is a union because eventually native calls will stuff a function pointer into it, to eliminate the callAsFunction virtual call.
- kjs/function.cpp: (KJS::FunctionImp::callAsFunction): Changed this to an ASSERT since it's not implemented yet.
- kjs/list.h: Made the List class two-faced, to support the old way and the new way during this transition phase: lists can be made read-only with just a pointer and a legnth, or you can append to them one item at a time.
- kjs/value.h: (KJS::jsUndefined): Marked this function ALWAYS_INLINE for the benefit of a certain compiler that doesn't know what's best for it.
JavaScriptGlue:
2008-03-30 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Build fix.
- ForwardingHeaders/wtf/UnusedParam.h: Copied from ForwardingHeaders/wtf/OwnPtr.h.
WebCore:
2008-03-30 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Adjusted WebCore JS functions to the new "getCallData" calling convention.
WebKit/mac:
2008-03-30 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Build fix.
- 11:44 PM Changeset in webkit [33628] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-03-30 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
Dump code that codegen can't handle yet, so it's easier to prioritize missing nodes.
- kjs/nodes.h: (KJS::Node::emitCode):
- 11:44 PM Changeset in webkit [33627] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-03-30 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
Improve dumping of bytecode and fix coding style accordingly.
Registers are printed as lr1 for locals, tr1 for temp registers. Identifiers print as
foobar(@id0) and constants print as "foo"(@k1) or 312.4(@k2) or the like. Constant and
identifier tables are dumped for reference.
- VM/CodeBlock.cpp: (KJS::escapeQuotes): (KJS::valueToSourceString): (KJS::registerName): (KJS::constantName): (KJS::idName): (KJS::printUnaryOp): (KJS::printBinaryOp): (KJS::CodeBlock::dump):
- VM/Machine.cpp: (KJS::resolve): (KJS::resolveBase): (KJS::Machine::privateExecute):
- 11:44 PM Changeset in webkit [33626] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-03-30 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
Implement StringNode and VoidNode (both pretty trivial).
- kjs/nodes.cpp: (KJS::StringNode::emitCode): (KJS::VoidNode::emitCode):
- kjs/nodes.h:
- 11:44 PM Changeset in webkit [33625] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-03-30 Maciej Stachowiak <mjs@apple.com>
Reviewed by Sam.
Implement CommaNode.
- kjs/nodes.cpp: (KJS::CommaNode::emitCode):
- kjs/nodes.h:
- 11:44 PM Changeset in webkit [33624] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-03-30 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej.
Adds support for dot notation and object literals.
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitNewObject):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Opcode.h:
- kjs/nodes.cpp: (KJS::ObjectLiteralNode::emitCode): (KJS::PropertyListNode::emitCode): (KJS::DotAccessorNode::emitCode): (KJS::AssignDotNode::emitCode):
- kjs/nodes.h:
- 11:44 PM Changeset in webkit [33623] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
2008-03-29 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Mark the register file.
It's a conservative mark for now, but once registers are typed, we can
do an exact mark.
1.4% regression regardless of whether we actually do the marking.
GCC is is worth every penny.
- VM/Machine.cpp: (KJS::Machine::privateExecute): Most of the changes here are just for the fact that "registers" is a pointer now.
- kjs/JSGlobalObject.cpp: The global object owns the register file now.
- 11:44 PM Changeset in webkit [33622] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
Bug 18204: SquirrelFish: continue/break do not correctly handle scope popping
<http://bugs.webkit.org/show_bug.cgi?id=18204>
Reviewed by Maciej.
We now track the scope depth as part of a loop context, and add an
extra instruction op_jump_scopes that is used to perform a jump across
dynamic scope boundaries.
- 11:44 PM Changeset in webkit [33621] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-03-28 Sam Weinig <sam@webkit.org>
Reviewed by Geoffrey Garen.
Add emitCode support for ConditionalNode.
- kjs/nodes.cpp: (KJS::ConditionalNode::emitCode):
- kjs/nodes.h:
- 11:44 PM Changeset in webkit [33620] by
-
- 7 edits in branches/squirrelfish/JavaScriptCore
2008-03-28 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Responding to feedback, added some comments, fixed up a few names, and
clarified that "locals" always means all local variables, functions,
and parameters.
- 11:44 PM Changeset in webkit [33619] by
-
- 9 edits in branches/squirrelfish/JavaScriptCore
2008-03-28 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Added support for "this".
Supply an implicit "this" value as the first argument to every function.
Alias the "this" keyword to that argument.
1% regression overall, 2.5% regression on empty function calls. Seems
like a reasonable cost for now, since we're doing more work.
(Eventually, we might decide to create a version of op_call specialized
for a known null "this" value.)
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitCall):
- VM/CodeGenerator.h: (KJS::CodeGenerator::CodeGenerator):
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- kjs/CommonIdentifiers.cpp: (KJS::CommonIdentifiers::CommonIdentifiers):
- kjs/CommonIdentifiers.h:
- kjs/nodes.cpp: (KJS::ThisNode::emitCode): (KJS::FunctionCallResolveNode::emitCode):
- kjs/nodes.h:
- 11:44 PM Changeset in webkit [33618] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
Bug 18192: Squirrelfish needs support for break and continue
<http://bugs.webkit.org/show_bug.cgi?id=18192>
Reviewed by Geoff
Added a loop context stack to the code generator to provide the
correct jump labels for continue and goto. Added logic to the
currently implemented loop constructs to manage entry and exit
from the loop contexts. Finally, implemented codegen for break
and continue (and a pass through for LabelNode)
- 11:44 PM Changeset in webkit [33617] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-03-27 Sam Weinig <sam@webkit.org>
Reviewed by Geoffrey Garen.
Add emitCode support for UnaryPlusNode, NegateNode, BitwiseNotNode and LogicalNotNode.
- VM/CodeBlock.cpp: (KJS::printUnaryOp): (KJS::CodeBlock::dump):
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitToJSNumber): (KJS::CodeGenerator::emitNegate): (KJS::CodeGenerator::emitBitNot): (KJS::CodeGenerator::emitNot):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Opcode.h:
- kjs/nodes.cpp: (KJS::UnaryPlusNode::emitCode): (KJS::NegateNode::emitCode): (KJS::BitwiseNotNode::emitCode): (KJS::LogicalNotNode::emitCode):
- kjs/nodes.h:
- 11:44 PM Changeset in webkit [33616] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-03-27 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Maciej Stachowiak.
Add support for LogicalAndNode and LogicalOrNode.
- kjs/nodes.cpp: (KJS::LogicalAndNode::emitCode): (KJS::LogicalOrNode::emitCode):
- kjs/nodes.h:
- 11:43 PM Changeset in webkit [33615] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-03-27 Sam Weinig <sam@webkit.org>
Clean up code and debug output.
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- 11:43 PM Changeset in webkit [33614] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-03-27 Geoffrey Garen <ggaren@apple.com>
Moved an ASSERT to a more logical place.
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- 11:43 PM Changeset in webkit [33613] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-03-27 Sam Weinig <sam@webkit.org>
Reviewed by Oliver Hunt.
Add emitCode support for InstanceOfNode.
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitInstanceOf):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- VM/Opcode.h:
- kjs/nodes.cpp: (KJS::InstanceOfNode::emitCode):
- kjs/nodes.h:
- 11:43 PM Changeset in webkit [33612] by
-
- 9 edits in branches/squirrelfish/JavaScriptCore
Bug 18142: squirrelfish needs to support dynamic scoping/with
<http://bugs.webkit.org/show_bug.cgi?id=18142>
Reviewed by Maciej
Add support for dynamic scoping and add code to handle 'with'
statements.
- 11:43 PM Changeset in webkit [33611] by
-
- 8 edits in branches/squirrelfish/JavaScriptCore
2008-03-27 Sam Weinig <sam@webkit.org>
Reviewed by Geoffrey Garen.
Add emitCode support for NullNode, FalseNode, TrueNode, IfNode, IfElseNode, DoWhileNode and WhileNode
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump): Dump op_jfalse opcode.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitJumpIfFalse): Identical to emitJumpIfTrue except it emits the op_jfalse opcode. (KJS::CodeGenerator::emitLoad): Add and emitLoad override for booleans.
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::Machine::privateExecute): Adds execution of op_jfalse. It is identical to op_jtrue, except the the condition is reversed.
- VM/Opcode.h: Add op_jfalse.
- kjs/nodes.cpp: (KJS::NullNode::emitCode): Added. (KJS::FalseNode::emitCode): Added. (KJS::TrueNode::emitCode): Added. (KJS::IfNode::emitCode): Added. (KJS::IfElseNode::emitCode): Added. (KJS::DoWhileNode::emitCode): Added. (KJS::WhileNode::emitCode): Added.
- kjs/nodes.h:
- 11:43 PM Changeset in webkit [33610] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-03-26 Geoffrey Garen <ggaren@apple.com>
Nixed an unused List.
The calm before my stormy war against the List class.
- kjs/function_object.cpp: (KJS::FunctionObjectImp::construct):
- 11:43 PM Changeset in webkit [33609] by
-
- 5 edits9 adds in branches/squirrelfish
SunSpider:
2008-03-26 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
--squirrelfish mode: pared down tests for squirrelfish to chew on.
- sunspider:
- tests/LIST:
- tests/squirrelfish: Added.
- tests/squirrelfish/function-closure.js: Added.
- tests/squirrelfish/function-empty.js: Added.
- tests/squirrelfish/function-missing-args.js: Added.
- tests/squirrelfish/function-sum.js: Added.
- tests/squirrelfish/loop-empty-resolve.js: Added.
- tests/squirrelfish/loop-empty.js: Added.
- tests/squirrelfish/loop-resolve.js: Added.
- tests/squirrelfish/loop-sum.js: Added.
WebKitTools:
2008-03-26 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
--squirrelfish mode: pared down tests for squirrelfish to chew on.
- Scripts/run-sunspider:
- 11:43 PM Changeset in webkit [33608] by
-
- 9 edits in branches/squirrelfish/JavaScriptCore
2008-03-26 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Geoffrey Garen.
Adds support for EqualNode, NotEqualNode, StrictEqualNode, NotStrictEqualNode,
LessEqNode, GreaterNode, GreaterEqNode, MultNode, DivNode, ModNode, SubNode,
LeftShiftNode, RightShiftNode, UnsignedRightShiftNode, BitAndNode, BitXOrNode,
and BitOrNode.
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitEqual): (KJS::CodeGenerator::emitNotEqual): (KJS::CodeGenerator::emitStrictEqual): (KJS::CodeGenerator::emitNotStrictEqual): (KJS::CodeGenerator::emitLessEq): (KJS::CodeGenerator::emitMult): (KJS::CodeGenerator::emitDiv): (KJS::CodeGenerator::emitMod): (KJS::CodeGenerator::emitSub): (KJS::CodeGenerator::emitLeftShift): (KJS::CodeGenerator::emitRightShift): (KJS::CodeGenerator::emitUnsignedRightShift): (KJS::CodeGenerator::emitBitAnd): (KJS::CodeGenerator::emitBitXOr): (KJS::CodeGenerator::emitBitOr):
- VM/CodeGenerator.h:
- VM/Machine.cpp: (KJS::jsLessEq): (KJS::Machine::privateExecute):
- VM/Opcode.h:
- kjs/nodes.cpp: (KJS::MultNode::emitCode): (KJS::DivNode::emitCode): (KJS::ModNode::emitCode): (KJS::SubNode::emitCode): (KJS::LeftShiftNode::emitCode): (KJS::RightShiftNode::emitCode): (KJS::UnsignedRightShiftNode::emitCode): (KJS::GreaterNode::emitCode): (KJS::LessEqNode::emitCode): (KJS::GreaterEqNode::emitCode): (KJS::EqualNode::emitCode): (KJS::NotEqualNode::emitCode): (KJS::StrictEqualNode::emitCode): (KJS::NotStrictEqualNode::emitCode): (KJS::BitAndNode::emitCode): (KJS::BitXOrNode::emitCode): (KJS::BitOrNode::emitCode):
- kjs/nodes.h:
- 11:43 PM Changeset in webkit [33607] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-03-26 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Only print debug dumps in debug builds.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::generate):
- VM/Machine.cpp: (KJS::Machine::privateExecute):
- 11:43 PM Changeset in webkit [33606] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-03-26 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Moved a few files around in the XCode project.
- JavaScriptCore.xcodeproj/project.pbxproj:
- 11:43 PM Changeset in webkit [33605] by
-
- 11 edits2 adds in branches/squirrelfish/JavaScriptCore
2008-03-26 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Made closures work.
An activation object aliases to the register file until its associated
function returns, at which point it copies the registers for locals and
parameters into an independent storage buffer.
- 11:43 PM Changeset in webkit [33604] by
-
- 3 edits in branches/squirrelfish/JavaScriptCore
2008-03-24 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Fixed recent 25% regression on simple for loop test. GCC seems to be
very finicky about the code that gets inlined into
Machine::privateExecute.
Everything in this patch is simply the result of experiment.
The resolve and resolve_base opcodes do not seem to have gotten slower
from this change.
- VM/Machine.cpp: (KJS::resolve): (KJS::resolveBase): (KJS::Machine::privateExecute):
- kjs/nodes.h:
- 11:43 PM Changeset in webkit [33603] by
-
- 5 edits in branches/squirrelfish/JavaScriptCore
Bug 18059: squirrelfish needs to compile on platforms without computed goto
<http://bugs.webkit.org/show_bug.cgi?id=18059>
Reviewed by Geoff Garen
"Standard" macro style support for conditionalising the use of computed goto.
- 11:43 PM Changeset in webkit [33602] by
-
- 2 edits in branches/squirrelfish/JavaScriptCore
2008-03-24 Geoffrey Garen <ggaren@apple.com>
Moved my notes from nodes.h to the wiki.
- kjs/nodes.h:
- 11:43 PM Changeset in webkit [33601] by
-
- 9 edits10 copies7 adds in branches/squirrelfish/JavaScriptCore
2008-03-24 Geoffrey Garen <ggaren@apple.com>
Reviewed by NOBODY.
SquirrelFish lives.
Initial check-in of the code I've been carrying around. Lots of stuff
doesn't work. Plus a bunch of empty files.
- 11:31 PM Changeset in webkit [33600] by
-
- 1 copy in branches/squirrelfish
Re-create squirrelfish branch.
- 11:28 PM Changeset in webkit [33599] by
-
- 1 move in branches/old/squirrelfish-2008-05-19
Move aside squirrelfish branch in prepration for rebasing it on trunk.
- 9:00 PM Changeset in webkit [33598] by
-
- 2 edits in trunk/WebKit/win
Make WebKit.idl rebuild whenever any of its included interfaces are changed
Reviewed by Tim Hatcher.
- WebKit.vcproj/DerivedSources.make: Touch WebKit.idl whenever any other IDL file is changed. This will force VS to rebuild WebKit.idl.
- 8:42 PM Changeset in webkit [33597] by
-
- 4 edits in trunk/LayoutTests
Reviewed by Adam Roben.
- update test results following <http://trac.webkit.org/changeset/33395>
- platform/mac/fast/frames/viewsource-attribute-expected.checksum:
- platform/mac/fast/frames/viewsource-attribute-expected.png:
- platform/mac/fast/frames/viewsource-attribute-expected.txt:
- 8:31 PM Changeset in webkit [33596] by
-
- 5 edits in trunk/JavaScriptCore
2008-05-19 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/5770054> JavaScript profiler (10928)
- Implement sorting by function name.
- JavaScriptCore.exp:
- profiler/Profile.h: (KJS::Profile::sortFileNameDescending): (KJS::Profile::sortFileNameAscending):
- profiler/ProfileNode.cpp: (KJS::fileNameDescendingComparator): (KJS::ProfileNode::sortFileNameDescending): (KJS::fileNameAscendingComparator): (KJS::ProfileNode::sortFileNameAscending):
- profiler/ProfileNode.h:
- 8:23 PM Changeset in webkit [33595] by
-
- 5 edits in trunk/WebCore
2008-05-19 Kevin McCullough <kmccullough@apple.com>
Reviewed by Adam.
-build fix.
- bindings/js/JSConsoleCustom.cpp: (WebCore::JSConsole::profile):
- page/Console.cpp: (WebCore::Console::profile):
- page/Console.h:
- page/Console.idl:
- 8:19 PM Changeset in webkit [33594] by
-
- 2 edits in trunk/WebCore
2008-05-19 Alp Toker <alp@nuanti.com>
Reviewed by Maciej.
GTK+/soup fixes:
Remove the fragment part of the URL since the file backend doesn't
deal with it.
Fix a typo in the cleanup function.
- platform/network/soup/ResourceHandleSoup.cpp: (WebCore::cleanupGioOperation): (WebCore::ResourceHandle::startGio):
- 7:03 PM Changeset in webkit [33593] by
-
- 8 edits in trunk
2008-05-19 Kevin McCullough <kmccullough@apple.com>
Reviewed by Adam.
<rdar://problem/5770054> JavaScript profiler (10928)
- Pass the exec state to profiler when calling startProfiling so that if profiling is started within an execution context that location is recorded correctly.
- JavaScriptCore.exp:
- profiler/ProfileNode.cpp: (KJS::ProfileNode::printDataInspectorStyle): Dump more info for debugging purposes.
- profiler/Profiler.cpp: (KJS::Profiler::startProfiling):
- profiler/Profiler.h:
WebCore:
2008-05-19 Kevin McCullough <kmccullough@apple.com>
Reviewed by Adam.
<rdar://problem/5770054> JavaScript profiler (10928)
- Send the executing context to the profiler so it can attribute time correctly to parent functions when calling profile() and profileEnd() while nested.
- page/Console.cpp: (WebCore::Console::profile): (WebCore::Console::profileEnd):
- page/Console.h:
- 6:14 PM Changeset in webkit [33592] by
-
- 2 edits in trunk/JavaScriptCore
2008-05-19 Kevin McCullough <kmccullough@apple.com>
Rubberstamped by Geoff.
Turn off the profiler because it is a performance regression.
- kjs/config.h:
- 6:12 PM Changeset in webkit [33591] by
-
- 8 edits3 adds in trunk
2008-05-19 Alp Toker <alp@nuanti.com>
Reviewed by Anders and Beth.
http://bugs.webkit.org/show_bug.cgi?id=16495
[GTK] Accessibility support with ATK/AT-SPI
Initial ATK/AT-SPI accessibility support for the GTK+ port.
- 5:46 PM Changeset in webkit [33590] by
-
- 5 edits1 add in trunk
WebCore:
2008-05-19 Anders Carlsson <andersca@apple.com>
Reviewed by Adam.
<rdar://problem/5946454>
Support navigator.onLine from HTML5.
Add Windows NetworkStateNotifier implementation using the IP Helper API.
- WebCore.vcproj/WebCore.vcproj:
- platform/network/NetworkStateNotifier.h: (WebCore::updateState):
- platform/network/win/NetworkStateNotifierWin.cpp: Added. (WebCore::NetworkStateNotifier::updateState): (WebCore::NetworkStateNotifier::addressChanged): (WebCore::NetworkStateNotifier::callAddressChanged): (WebCore::NetworkStateNotifier::addrChangeCallback): (WebCore::NetworkStateNotifier::registerForAddressChange): (WebCore::NetworkStateNotifier::NetworkStateNotifier):
WebKit/win:
2008-05-19 Anders Carlsson <andersca@apple.com>
Reviewed by Adam.
<rdar://problem/5946454>
Support navigator.onLine from HTML5.
Link with iphlpapi.lib, and make iphlpapi.dll a delay loaded library.
- WebKit.vcproj/WebKit.vcproj:
- 5:07 PM Changeset in webkit [33589] by
-
- 2 edits in tags/Safari-6526.6.2/WebCore
Merged fix from r33587.
- 5:02 PM Changeset in webkit [33588] by
-
- 1 copy in tags/Safari-6526.6.2
New tag.
- 5:00 PM Changeset in webkit [33587] by
-
- 2 edits in trunk/WebCore
Disable C4273, C4565 for CSSGrammar.cpp, XPathGrammar.cpp to fix build.
Reviewed by Adam Roben.
- WebCore.vcproj/WebCore.vcproj:
- 4:52 PM Changeset in webkit [33586] by
-
- 2 edits1 add in trunk/WebCore
Fix Bug 19065: Resources with a space in their URL don't get error/warning bubbles
Reviewed by Dan Bernstein.
Test: manual-tests/inspector/errors-with-space in-url.html
- manual-tests/inspector/errors-with-space in-url.html: Added.
- page/Console.cpp: (WebCore::Console::error): (WebCore::Console::info): (WebCore::Console::log): (WebCore::Console::warn): Pass the raw URL to the Inspector, not the pretty URL, to match the URL that was used when initially telling the Inspector about this resource. We continue to pass the pretty URL to the ChromeClient for backwards compatibility.
- 4:22 PM Changeset in webkit [33585] by
-
- 9 edits in trunk
2008-05-19 Stephanie Lewis <Stephanie Lewis>
Reviewed by Darin.
more fast teardown performance work
- Misc/WebDownload.m: (-[WebDownloadInternal downloadDidBegin:]): (-[WebDownloadInternal downloadDidFinish:]): (-[WebDownloadInternal download:didFailWithError:]):
- WebCoreSupport/WebChromeClient.h:
- WebCoreSupport/WebChromeClient.mm: (WebChromeClient::disableSuddenTermination): (WebChromeClient::enableSuddenTermination):
more fast teardown performance work, WebCore plumbing
- page/Chrome.cpp: (WebCore::Chrome::disableSuddenTermination): (WebCore::Chrome::enableSuddenTermination): (WebCore::ChromeClient::disableSuddenTermination): (WebCore::ChromeClient::enableSuddenTermination):
- page/Chrome.h:
- page/ChromeClient.h:
- page/Page.cpp: (WebCore::Page::changePendingUnloadEventCount): (WebCore::Page::changePendingBeforeUnloadEventCount):
- 4:06 PM Changeset in webkit [33584] by
-
- 3 edits in trunk
2008-05-19 Alp Toker <alp@nuanti.com>
GTK+ build fix for Mac/Win. Don't check for FreeType/FontConfig when
the Pango font backend is selected.
- GNUmakefile.am:
- configure.ac:
- 3:44 PM Changeset in webkit [33583] by
-
- 2 edits in trunk/WebCore
2008-05-19 Kuchhal <kuchal@yahoo.com>
Reviewed by Justin.
<rdar://problem/5863412> Crash when Ctrl C is pressed after a series of specific mouse events (18506)
- editing/markup.cpp: (WebCore::createMarkup): Null check.
- 3:17 PM Changeset in webkit [33582] by
-
- 2 edits in trunk/WebCore
<rdar://problem/5912195> CrashTracer: [USER] 1 crash in Mail at -[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]
- 3:15 PM Changeset in webkit [33581] by
-
- 5 edits in trunk/JavaScriptCore
2008-05-19 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/5770054> JavaScript profiler (10928)
-In an effort to make the profiler as efficient as possible instead of
prepending to a vector we keep the vector in reverse order and operate
over it backwards.
- profiler/Profile.cpp: (KJS::Profile::willExecute): (KJS::Profile::didExecute):
- profiler/ProfileNode.cpp: (KJS::ProfileNode::didExecute): (KJS::ProfileNode::endAndRecordCall):
- profiler/ProfileNode.h:
- profiler/Profiler.cpp: (KJS::getStackNames):
- 1:44 PM Changeset in webkit [33580] by
-
- 2 edits in trunk/WebKit/win
2008-05-19 Anders Carlsson <andersca@apple.com>
Reviewed by Darin, Alexey, Jess and Brady.
Set the application cache path.
- WebView.cpp: (WebKitSetApplicationCachePathIfNecessary): New function that sets the cache path.
(WebView::initWithFrame):
Set the application cache path.
- 12:55 PM Changeset in webkit [33579] by
-
- 11 edits5 adds in trunk
Added methods to get/set current cookie storage.
WebCore:
Added CookieStorageWin.h/cpp, introducing methods to get/set the current CFHTTPCookieStorageRef.
When setting cookies-related attributes in CFURLRequest, make sure we get them from the
current CFHTTPCookieStorageRef. Also, set the cookie storage in CFURLRequest.
Reviewed by Steve Falkenburg.
- WebCore.vcproj/WebCore.vcproj:
- platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::makeFinalRequest):
- platform/network/cf/ResourceRequestCFNet.cpp: (WebCore::ResourceRequest::doUpdatePlatformRequest):
- platform/network/win/CookieJarCFNetWin.cpp: (WebCore::setCookies): (WebCore::cookies): (WebCore::cookiesEnabled):
- platform/network/win/CookieStorageWin.cpp: Added. (WebCore::currentCookieStorage): (WebCore::setCurrentCookieStorage):
- platform/network/win/CookieStorageWin.h: Added.
WebKit/win:
Added IWebCookieManager interface which allows client to set the
CFHTTPCookieStorageRef that WebCore should use.
Implement IWebCookieManager interface in WebCookieManager.
Update the cookie accept policy in the current cookie storage.
Reviewed by Steve Falkenburg.
- ForEachCoClass.h:
- Interfaces/IWebCookieManager.idl: Added.
- Interfaces/WebKit.idl:
- WebCookieManager.cpp: Added. (WebCookieManager::createInstance): (WebCookieManager::WebCookieManager): (WebCookieManager::~WebCookieManager): (WebCookieManager::QueryInterface): (WebCookieManager::AddRef): (WebCookieManager::Release): (WebCookieManager::cookieStorage): (WebCookieManager::setCookieStorage):
- WebCookieManager.h: Added.
- WebKit.vcproj/WebKit.vcproj:
- WebKitClassFactory.cpp:
- WebView.cpp: (updateSharedSettingsFromPreferencesIfNeeded):
- 12:21 PM Changeset in webkit [33578] by
-
- 3 edits6 adds in trunk
Reviewed by Darin.
http://bugs.webkit.org/show_bug.cgi?id=18308
SVG Encoding error with fill attribute
This is caused by problems with data: URL loading. Besides what is fixed by this patch,
I filed <rdar://problem/5845875> for CFNetwork.
While at it, fixed a related javascript: URL issue.
Tests: fast/loader/data-url-encoding-html.html
fast/loader/data-url-encoding-svg.html
fast/loader/javascript-url-encoding.html
- platform/KURL.cpp: (WebCore::KURL::parse): Fix a FIXME, use UTF-8 instead of dropping high bytes. This fixes javascript: URL handling. (WebCore::encodeRelativeString): Like mailto: URLs, data: ones are all UTF-8. Restructured the code to not search for "#" if both parts are to be encoded as UTF-8 anyway.
- 12:12 PM Changeset in webkit [33577] by
-
- 20 edits2 adds in trunk
Reviewed by Darin.
https://bugs.webkit.org/show_bug.cgi?id=18421
<rdar://problem/5857369> XMLHttpRequest does not properly encode & and < in outgoing messages
Test: http/tests/xmlhttprequest/serialize-document.html
- bindings/js/JSXMLHttpRequestCustom.cpp: (WebCore::JSXMLHttpRequest::send): Use createMarkup() instead of Document::toString().
- dom/Attr.cpp:
- dom/Attr.h:
- dom/Document.cpp:
- dom/Document.h:
- dom/DocumentFragment.cpp:
- dom/DocumentFragment.h:
- dom/Element.cpp:
- dom/Element.h:
- dom/Entity.cpp:
- dom/Entity.h:
- dom/EntityReference.cpp:
- dom/EntityReference.h:
- dom/Node.h:
- dom/Text.cpp:
- dom/Text.h:
- html/HTMLElement.cpp:
- html/HTMLElement.h: Removed most Node::toString() methods, which were massively wrong, and only used for XMLHttpRequest::send(). The remanining ones are still used in markup.cpp, but should probably be folded into it for consistency.
- 11:33 AM Changeset in webkit [33576] by
-
- 2 edits in trunk/WebCore
2008-05-19 Anders Carlsson <andersca@apple.com>
Fix Windows build.
- plugins/win/PluginViewWin.cpp: (WebCore::PluginView::userAgentStatic): (WebCore::PluginView::getValueStatic): (WebCore::PluginView::getValue):
- 11:22 AM Changeset in webkit [33575] by
-
- 2 edits in trunk/WebCore
<rdar://problem/5935694> AX: crash in text marker range
- 10:43 AM Changeset in webkit [33574] by
-
- 2 edits in trunk/WebCore
2008-05-19 Darin Adler <Darin Adler>
- fix WebKit build
- WebCore.xcodeproj/project.pbxproj: Make CSSReflectionDirection.h "private" instead of "project".
- 9:56 AM Changeset in webkit [33573] by
-
- 2 edits in trunk/WebCore
<rdar://problem/5700830> VO: VoiceOver should fall back to title attr if form element is not labeled
- 9:42 AM Changeset in webkit [33572] by
-
- 7 edits1 add in trunk/WebCore
2008-05-19 Darin Adler <Darin Adler>
Reviewed by Mitz.
- tweak CSSReflectValue, possibly fixing the leaks seen on the buildbot
- WebCore.vcproj/WebCore.vcproj: Added CSSReflectionDirection.h.
- WebCore.xcodeproj/project.pbxproj: Ditto.
- css/CSSReflectionDirection.h: Added.
- css/CSSComputedStyleDeclaration.cpp: (WebCore::valueForReflection): Changed to use CSSReflectValue::create.
- css/CSSParser.cpp: (WebCore::CSSParser::parseReflect): Ditto.
- css/CSSReflectValue.h: Added a create function. Got rid of the setter functions, which had const PassRefPtr& arguments -- those probably caused the leaks although I'm not exactly sure why. Made the contructor and all the data members private.
- rendering/style/RenderStyle.h: Changed to include CSSReflectionDirection.h instead of CSSReflectValue.h so we can tweak CSSReflectValue without recompiling the world.
- 3:17 AM Changeset in webkit [33571] by
-
- 4 edits in trunk/WebCore
2008-05-19 Holger Hans Peter Freyther <zecke@selfish.org>
Rubber Stamped by Simon.
Enforce the WebKit Coding Style.
- plugins/PluginView.cpp: (WebCore::PluginView::load): (WebCore::PluginView::setValue):
- plugins/gtk/PluginViewGtk.cpp: (WebCore::PluginView::setFocus): (WebCore::PluginView::show): (WebCore::PluginView::hide): (WebCore::PluginView::attachToWindow): (WebCore::PluginView::detachFromWindow): (WebCore::PluginView::getValueStatic): (WebCore::PluginView::getValue):
- plugins/qt/PluginViewQt.cpp: (WebCore::PluginView::updateWindow): (WebCore::PluginView::detachFromWindow): (WebCore::PluginView::handlePostReadFile): (WebCore::PluginView::getValueStatic): (WebCore::PluginView::getValue):
- 3:09 AM Changeset in webkit [33570] by
-
- 7 edits in trunk/WebCore
2008-05-14 Marc Ordinas i Llopis <marc.ordinasillopis@collabora.co.uk>
Reviewed by Holger.
https://bugs.webkit.org/show_bug.cgi?id=18882
https://bugs.webkit.org/show_bug.cgi?id=18892
Based also on work by Chris Lord.
Provides support for NPAPI plugins that pass NULL as their instance
info. There are two kinds:
- Some call NPN_UserAgent and NPN_GetValue before a PluginView has been created. For those we provide static versions of those functions.
- Others call NPN_* functions with a NULL instance inside NPP_* calls, for those we've added extra currentPluginView guards.
- plugins/PluginView.cpp: Add additional currentPluginView guards and some small style changes. (WebCore::PluginView::start): (WebCore::PluginView::performRequest): (WebCore::PluginView::bindingInstance): (WebCore::PluginView::handlePost):
- plugins/PluginView.h: Added static versions of NPN_UserAgent and NPN_GetValue.
- plugins/gtk/PluginViewGtk.cpp: Add additional currentPluginView guards and some small style changes. (WebCore::PluginView::setNPWindowRect): (WebCore::PluginView::stop): (WebCore::PluginView::userAgentStatic): Added to deal with plugins that query this before having a PluginView. (WebCore::PluginView::getValueStatic): Added to deal with plugins that call this before we have created a PluginView. (WebCore::PluginView::getValue): Moved some code to getValueStatic. (WebCore::PluginView::init):
- plugins/npapi.cpp: Call PluginView::userAgentStatic and PluginView::getValueStatic if no PluginView is present. (NPN_UserAgent): (NPN_GetValue):
- plugins/qt/PluginPackageQt.cpp: (WebCore::PluginPackage::fetchInfo): Corrected split args because ignoring empty entries crashed. (WebCore::PluginPackage::load): Resolve all symbols when loading plugins to protect against XPCOM dependencies.
- plugins/qt/PluginViewQt.cpp: Add additional currentPluginView guards and some small style changes. (WebCore::PluginView::updateWindow): (WebCore::PluginView::setNPWindowRect): (WebCore::PluginView::stop): (WebCore::PluginView::userAgentStatic): Added to deal with plugins that query this before having a PluginView. (WebCore::PluginView::handlePostReadFile): (WebCore::PluginView::getValueStatic): Added to deal with plugins that call this before we have created a PluginView. (WebCore::PluginView::getValue): Moved some code to getValueStatic. (WebCore::PluginView::init): m_needsXEmbed init was moved to constructor.
- 1:59 AM Changeset in webkit [33569] by
-
- 3 edits in trunk/WebCore
2008-05-19 Alp Toker <alp@nuanti.com>
GTK+ build fix on Mac. Conditionalize XP_UNIX use.
- plugins/gtk/PluginPackageGtk.cpp: (WebCore::PluginPackage::fetchInfo): (WebCore::PluginPackage::load):
- plugins/gtk/PluginViewGtk.cpp:
May 18, 2008:
- 8:58 PM Changeset in webkit [33568] by
-
- 2 edits in trunk/WebCore
<rdar://problem/5942076> WebKit can no longer find URL links with VoiceOVer-U command (19100)
- 5:42 PM Changeset in webkit [33567] by
-
- 4 edits3 adds in trunk
WebCore:
2008-05-18 Darin Adler <Darin Adler>
Reviewed by Sam.
- fix <rdar://problem/5943569> crash due to stale ownerNode pointer
Test: fast/dom/StyleSheet/ownerNode-lifetime.html
- bindings/js/JSStyleSheetCustom.cpp: (WebCore::JSStyleSheet::mark): Added code to mark ownerNode. Includes a comment about how it would be even better to solve this in the DOM rather than just in the JavaScript binding.
- css/StyleSheet.idl: Added CustomMarkFunction attribute.
LayoutTests:
2008-05-18 Darin Adler <Darin Adler>
Reviewed by Sam.
- test for <rdar://problem/5943569> crash due to stale ownerNode pointer
- fast/dom/StyleSheet: Added.
- fast/dom/StyleSheet/ownerNode-lifetime-expected.txt: Added.
- fast/dom/StyleSheet/ownerNode-lifetime.html: Added.
- 5:36 PM Changeset in webkit [33566] by
-
- 3 edits3 adds in branches/squirrelfish
Bug 18752: SQUIRRELFISH: exceptions are not always handled by the vm
<https://bugs.webkit.org/show_bug.cgi?id=18752>
Reviewed by Maciej
Handle exceptions thrown by toString conversion in subscript operators,
this should basically complete exception handling in SquirrelFish.
Sunspider reports no regression.
- 4:51 PM Changeset in webkit [33565] by
-
- 4 edits4 adds in trunk
WebCore:
2008-05-18 Brady Eidson <beidson@apple.com>
Reviewed by Sam Weinig
Fix for https://bugs.webkit.org/show_bug.cgi?id=19111
Allowdelete storage.itemNamesyntax as an alias forstorage.removeItem("itemName")
Tests: storage/domstorage/localstorage/delete-removal.html
storage/domstorage/sessionstorage/delete-removal.html
- bindings/js/JSStorageCustom.cpp: (WebCore::JSStorage::deleteProperty): Only do the delete for non-built in properties
- storage/Storage.idl:
LayoutTests:
2008-05-18 Brady Eidson <beidson@apple.com>
Reviewed by Sam Weinig
Fix for https://bugs.webkit.org/show_bug.cgi?id=19111
Allowdelete storage.itemNamesyntax as an alias forstorage.removeItem("itemName")
- storage/domstorage/localstorage/delete-removal-expected.txt: Added.
- storage/domstorage/localstorage/delete-removal.html: Added.
- storage/domstorage/sessionstorage/delete-removal-expected.txt: Added.
- storage/domstorage/sessionstorage/delete-removal.html: Added.
- 12:08 PM Changeset in webkit [33564] by
-
- 2 edits in trunk/WebKit/mac
Reviewed by Sam Weinig.
- fix <rdar://problem/5944596> IDNs are displayed as punycode in the authentication panel
- Panels/WebAuthenticationPanel.m: (-[WebAuthenticationPanel setUpForChallenge:]):
- 1:49 AM Changeset in webkit [33563] by
-
- 22 edits1 copy3 adds in branches/squirrelfish
Reapplying debugging support from r33553, this time with all the files.
2008-05-17 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Behold: debugging.
SunSpider reports no change.
- JavaScriptCore.xcodeproj/project.pbxproj: Added DebuggerCallFrame.h/.cpp, and created a debugger folder.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::generate): If the debugger is attached, always generate full scope chains for its sake.
- VM/Machine.cpp: (KJS::Machine::unwindCallFrame): Notify the debugger when unwinding due to an exception, so it doesn't keep stale call frames around.
(KJS::Machine::execute): Set Callee to 0 in eval frames, so the
debugger can distinguish them from function call frames.
(KJS::Machine::debug): Simplified this function, since the debugger
doesn't actually need all the information we used to provide.
(KJS::Machine::privateExecute): Treat debugging hooks like other function
calls, so the code we hook into (the debugger UI) can be optimized.
- kjs/debugger.cpp: Nixed these default callback implementations and made the callbacks pure virtual instead, so the compiler could tell me if I made a mistake in one of the subclasses.
- kjs/debugger.h: Removed a bunch of irrelevent data from the debugger callbacks. Changed from passing an ExecState* to passing a DebuggerCallFrame*, since an ExecState* doesn't contain sufficient information anymore.
- kjs/function.cpp: (KJS::globalFuncEval): Easiest bug fix evar!
[Previously missing files from r33553]
- kjs/DebuggerCallFrame.cpp: Copied from JavaScriptCore/profiler/FunctionCallProfile.h. (KJS::DebuggerCallFrame::functionName): (KJS::DebuggerCallFrame::thisObject): (KJS::DebuggerCallFrame::evaluateScript):
- kjs/DebuggerCallFrame.h: Copied from JavaScriptCore/VM/Register.h. (KJS::DebuggerCallFrame::DebuggerCallFrame): (KJS::DebuggerCallFrame::scopeChain): (KJS::DebuggerCallFrame::exception):
WebCore:
2008-05-17 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Updated for API changes in KJS::Debugger.
WebKit/mac:
2008-05-17 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Re-enabled previously disabled debugging functionality.
There are two major changes from how the WebKit debugger used to work:
(1) All the interesting bits are implemented down in JavaScriptCore. The
debugger just calls through to KJS::DebuggerCallFrame for everything.
(2) Instead of copyihng a pointer to an ExecState once, the debugger
copies the DebuggerCallFrame passed to it in each callback. This is
because the VM no longer maintains a fully transparent execution state
to which you can hold a pointer, and the DebuggerCallFrames it vends
are temporaries.
Also, we NULL out a WebScriptCallFrame's DebuggerCallFrame upon return
from its function. This is safer than the old method, which was to
hold a stale ExecState* and hope for the best.
May 17, 2008:
- 9:53 PM Changeset in webkit [33562] by
-
- 6 edits in branches/squirrelfish
2008-05-17 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Bug 18991: SquirrelFish: Major codegen issue in a.b=expr, a[b]=expr
<https://bugs.webkit.org/show_bug.cgi?id=18991>
Fix the last remaining blocking cases of this bug.
- kjs/grammar.y:
- kjs/nodes.cpp: (KJS::ReadModifyResolveNode::emitCode):
LayoutTests:
- fast/js/codegen-temporaries-expected.txt:
- fast/js/resources/codegen-temporaries.js:
- 8:41 PM Changeset in webkit [33561] by
-
- 3 edits in trunk/WebCore
2008-05-17 Sam Weinig <sam@webkit.org>
Reviewed by Mark Rowe.
Re-factor core setRequestHeader logic into setRequestHeaderInternal.
- xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::sameOriginRequest): (WebCore::XMLHttpRequest::setRequestHeader): (WebCore::XMLHttpRequest::setRequestHeaderInternal):
- xml/XMLHttpRequest.h:
- 8:00 PM Changeset in webkit [33560] by
-
- 22 edits2 deletes in branches/squirrelfish
Reverting r33553 as the patch is incomplete so breaks the build
- 6:21 PM Changeset in webkit [33559] by
-
- 10 edits in trunk
WebCore:
2008-05-17 Sam Weinig <sam@webkit.org>
Reviewed by Mark Rowe.
Differentiate between cancelation errors and generic network error in XHR.
- loader/FrameLoader.cpp: (WebCore::FrameLoader::requestFromDelegate): (WebCore::FrameLoader::cancelledError):
- platform/network/ResourceErrorBase.h: (WebCore::ResourceErrorBase::setIsCancelation): (WebCore::ResourceErrorBase::isCancelation): (WebCore::ResourceErrorBase::ResourceErrorBase): Add state that differentiates between errors created by cancelation and those made by all other generic network errors as this differentiation is needed by some specs.
- xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::open): (WebCore::XMLHttpRequest::loadRequestSynchronously): (WebCore::XMLHttpRequest::clearResponseEntityBody): (WebCore::XMLHttpRequest::genericError): (WebCore::XMLHttpRequest::networkError): (WebCore::XMLHttpRequest::abortError): (WebCore::XMLHttpRequest::didFail):
- xml/XMLHttpRequest.h:
- xml/XMLHttpRequestException.h: (WebCore::XMLHttpRequestException::):
- xml/XMLHttpRequestException.idl: Add ABORT_ERR. This error cannot be raised with the current WebKit architecture as it requires the ability to cancel a synchronous XHR, which we cannot currently do. It may be possible in the future though.
LayoutTests:
2008-05-17 Sam Weinig <sam@webkit.org>
Reviewed by Mark Rowe.
Update expected results for new ABORT_ERR.
- fast/dom/Window/window-properties-expected.txt:
- 5:47 PM Changeset in webkit [33558] by
-
- 4 edits in tags/Safari-6526.6.1
Versioning.
- 5:46 PM Changeset in webkit [33557] by
-
- 2 edits in tags/Safari-6526.6.1/WebCore
Merge r33555.
- 5:12 PM Changeset in webkit [33556] by
-
- 1 copy in tags/Safari-6526.6.1
New tag.
- 5:08 PM Changeset in webkit [33555] by
-
- 2 edits in trunk/WebCore
2008-05-17 Mark Rowe <mrowe@apple.com>
Reviewed by Sam Weinig.
Including wtf/Platform.h or using any of the macros it defines in headers that may be
included from outside of the WebKit project causes any project using those headers to
fail to build.
- page/mac/WebDashboardRegion.h:
- 3:45 PM Changeset in webkit [33554] by
-
- 3 edits in trunk/WebCore
2008-05-17 Sam Weinig <sam@webkit.org>
Reviewed by Brady Eidson.
Re-factor send() logic a little to make adding cross-site requests easier.
- xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::send): (WebCore::XMLHttpRequest::sameOriginRequest): (WebCore::XMLHttpRequest::loadRequestSynchronously): (WebCore::XMLHttpRequest::loadRequestAsynchronously):
- xml/XMLHttpRequest.h:
- 11:58 AM Changeset in webkit [33553] by
-
- 22 edits2 copies in branches/squirrelfish
2008-05-17 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Behold: debugging.
SunSpider reports no change.
- JavaScriptCore.xcodeproj/project.pbxproj: Added DebuggerCallFrame.h/.cpp, and created a debugger folder.
- VM/CodeGenerator.cpp: (KJS::CodeGenerator::generate): If the debugger is attached, always generate full scope chains for its sake.
- VM/Machine.cpp: (KJS::Machine::unwindCallFrame): Notify the debugger when unwinding due to an exception, so it doesn't keep stale call frames around.
(KJS::Machine::execute): Set Callee to 0 in eval frames, so the
debugger can distinguish them from function call frames.
(KJS::Machine::debug): Simplified this function, since the debugger
doesn't actually need all the information we used to provide.
(KJS::Machine::privateExecute): Treat debugging hooks like other function
calls, so the code we hook into (the debugger UI) can be optimized.
- kjs/debugger.cpp: Nixed these default callback implementations and made the callbacks pure virtual instead, so the compiler could tell me if I made a mistake in one of the subclasses.
- kjs/debugger.h: Removed a bunch of irrelevent data from the debugger callbacks. Changed from passing an ExecState* to passing a DebuggerCallFrame*, since an ExecState* doesn't contain sufficient information anymore.
- kjs/function.cpp: (KJS::globalFuncEval): Easiest bug fix evar!
WebCore:
2008-05-17 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Updated for API changes in KJS::Debugger.
WebKit/mac:
2008-05-17 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Re-enabled previously disabled debugging functionality.
There are two major changes from how the WebKit debugger used to work:
(1) All the interesting bits are implemented down in JavaScriptCore. The
debugger just calls through to KJS::DebuggerCallFrame for everything.
(2) Instead of copyihng a pointer to an ExecState once, the debugger
copies the DebuggerCallFrame passed to it in each callback. This is
because the VM no longer maintains a fully transparent execution state
to which you can hold a pointer, and the DebuggerCallFrames it vends
are temporaries.
Also, we NULL out a WebScriptCallFrame's DebuggerCallFrame upon return
from its function. This is safer than the old method, which was to
hold a stale ExecState* and hope for the best.
- 4:00 AM Changeset in webkit [33552] by
-
- 10 edits in branches/squirrelfish
2008-05-17 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver.
Bug 18991: SquirrelFish: Major codegen issue in a.b=expr, a[b]=expr
<https://bugs.webkit.org/show_bug.cgi?id=18991>
Ensure that the code generated for assignments uses temporaries whenever
necessary. This patch covers the vast majority of situations, but there
are still a few left.
This patch also adds some missing cases to CodeBlock::dump().
- VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
- VM/CodeGenerator.h: (KJS::CodeGenerator::destinationForAssignResult): (KJS::CodeGenerator::leftHandSideNeedsCopy): (KJS::CodeGenerator::emitNodeForLeftHandSide):
- kjs/NodeInfo.h:
- kjs/grammar.y:
- kjs/nodes.cpp: (KJS::AssignDotNode::emitCode): (KJS::ReadModifyDotNode::emitCode): (KJS::AssignBracketNode::emitCode): (KJS::ReadModifyBracketNode::emitCode): (KJS::ForInNode::ForInNode):
- kjs/nodes.h: (KJS::ReadModifyResolveNode::): (KJS::AssignResolveNode::): (KJS::ReadModifyBracketNode::): (KJS::AssignBracketNode::): (KJS::AssignDotNode::): (KJS::ReadModifyDotNode::):
LayoutTests:
- fast/js/codegen-temporaries-expected.txt:
- fast/js/resources/codegen-temporaries.js:
- 1:37 AM Changeset in webkit [33551] by
-
- 1 edit2 adds in branches/squirrelfish/LayoutTests
Forgot to check in the results to the activation gc tests
- 12:22 AM Changeset in webkit [33550] by
-
- 3 edits4 adds in branches/squirrelfish
Bug 19106: SquirrelFish: Activation is not marked correctly
<https://bugs.webkit.org/show_bug.cgi?id=19106>
Reviewed by Maciej
We can't rely on the symbol table for a count of the number of globals
we need to mark as that misses duplicate parameters and 'this'. Now we
use the actual local register count from the codeBlock.
May 16, 2008:
- 11:43 PM Changeset in webkit [33549] by
-
- 6 edits in trunk
2008-05-16 Stephanie Lewis <Stephanie Lewis>
Reviewed by Steve.
Get pending unload event count from WebCore.
- Interfaces/IWebFramePrivate.idl:
- WebFrame.cpp: (WebFrame::pendingFrameUnloadEventCount):
- WebFrame.h:
Print out pending unload event count. Also print out main framename to match Mac. +
- DumpRenderTree/win/FrameLoadDelegate.cpp:
(descriptionSuitableForTestResult):
(FrameLoadDelegate::didFinishDocumentLoadForFrame):
- 10:34 PM Changeset in webkit [33548] by
-
- 2 edits in trunk/WebKit/win
2008-05-16 Matt Lilek <webkit@mattlilek.com>
Rubber stamped by Oliver.
Remove the Drosera sub-project.
- WebKit.vcproj/WebKit.sln:
- 9:21 PM Changeset in webkit [33547] by
-
- 4 edits104 deletes in trunk/WebKitTools
Remove the Drosera project, code and resources since it has been
replaced with the Web Inspector's debugger. Removes references to
Drosera in various scripts and makefiles.
Rubber-stamped by Mark Rowe.
- BuildSlaveSupport/build-launcher-app:
- Drosera/DebuggerDocument.cpp: Removed.
- Drosera/DebuggerDocument.h: Removed.
- Drosera/Drosera.icns: Removed.
- Drosera/DroseraWin.make: Removed.
- Drosera/English.lproj/Debugger.nib/classes.nib: Removed.
- Drosera/English.lproj/Debugger.nib/info.nib: Removed.
- Drosera/English.lproj/Debugger.nib/keyedobjects.nib: Removed.
- Drosera/English.lproj/MainMenu.nib/classes.nib: Removed.
- Drosera/English.lproj/MainMenu.nib/info.nib: Removed.
- Drosera/English.lproj/MainMenu.nib/keyedobjects.nib: Removed.
- Drosera/ForwardingHeaders/wtf/Assertions.h: Removed.
- Drosera/ForwardingHeaders/wtf/HashTraits.h: Removed.
- Drosera/ForwardingHeaders/wtf/Noncopyable.h: Removed.
- Drosera/ForwardingHeaders/wtf/OwnPtr.h: Removed.
- Drosera/ForwardingHeaders/wtf/Platform.h: Removed.
- Drosera/ForwardingHeaders/wtf/RetainPtr.h: Removed.
- Drosera/Images/Drosera.ico: Removed.
- Drosera/Images/SourceArrow.png: Removed.
- Drosera/Images/SourceArrowBlank.png: Removed.
- Drosera/Images/SourceArrowOpen.png: Removed.
- Drosera/Images/background_stripe.png: Removed.
- Drosera/Images/breakPoint.tif: Removed.
- Drosera/Images/breakPointDisabled.tif: Removed.
- Drosera/Images/breakpointeditor.png: Removed.
- Drosera/Images/close.tif: Removed.
- Drosera/Images/close_active.tif: Removed.
- Drosera/Images/close_hover.tif: Removed.
- Drosera/Images/console.png: Removed.
- Drosera/Images/continue.tif: Removed.
- Drosera/Images/fileIcon.jpg: Removed.
- Drosera/Images/finishFunction.tif: Removed.
- Drosera/Images/glossyFooterFill.tif: Removed.
- Drosera/Images/glossyHeader.png: Removed.
- Drosera/Images/glossyHeaderPressed.png: Removed.
- Drosera/Images/gradientBackground.png: Removed.
- Drosera/Images/gutter.png: Removed.
- Drosera/Images/navLeftDisabled.png: Removed.
- Drosera/Images/navLeftNormal.png: Removed.
- Drosera/Images/navLeftPressed.png: Removed.
- Drosera/Images/navRightDisabled.png: Removed.
- Drosera/Images/navRightNormal.png: Removed.
- Drosera/Images/navRightPressed.png: Removed.
- Drosera/Images/pause.tif: Removed.
- Drosera/Images/popUpArrows.png: Removed.
- Drosera/Images/programCounter.tif: Removed.
- Drosera/Images/programCounterBreakPoint.tif: Removed.
- Drosera/Images/programCounterBreakPointDisabled.tif: Removed.
- Drosera/Images/run.tif: Removed.
- Drosera/Images/siteCollapsed.tif: Removed.
- Drosera/Images/siteExpanded.tif: Removed.
- Drosera/Images/siteIcon.tif: Removed.
- Drosera/Images/small.ico: Removed.
- Drosera/Images/splitterBar.tif: Removed.
- Drosera/Images/splitterDimple.tif: Removed.
- Drosera/Images/step.tif: Removed.
- Drosera/Images/stepOut.tif: Removed.
- Drosera/Images/stepOver.tif: Removed.
- Drosera/Images/stop.tif: Removed.
- Drosera/Images/toolbarBackground.png: Removed.
- Drosera/Images/verticalSplitterBar.tiff: Removed.
- Drosera/Images/verticalSplitterDimple.tiff: Removed.
- Drosera/Makefile: Removed.
- Drosera/breakpointEditor.html: Removed.
- Drosera/config.h: Removed.
- Drosera/console.css: Removed.
- Drosera/console.html: Removed.
- Drosera/console.js: Removed.
- Drosera/debugger.css: Removed.
- Drosera/debugger.html: Removed.
- Drosera/debugger.js: Removed.
- Drosera/mac/DebuggerApplication.h: Removed.
- Drosera/mac/DebuggerApplication.mm: Removed.
- Drosera/mac/DebuggerClient.h: Removed.
- Drosera/mac/DebuggerClient.mm: Removed.
- Drosera/mac/DebuggerDocumentPlatform.mm: Removed.
- Drosera/mac/Drosera.xcodeproj/project.pbxproj: Removed.
- Drosera/mac/Info.plist: Removed.
- Drosera/mac/LauncherInfo.plist: Removed.
- Drosera/mac/Makefile: Removed.
- Drosera/mac/ServerConnection.h: Removed.
- Drosera/mac/ServerConnection.mm: Removed.
- Drosera/mac/launcher.m: Removed.
- Drosera/mac/main.m: Removed.
- Drosera/viewer.css: Removed.
- Drosera/viewer.html: Removed.
- Drosera/win/BaseDelegate.h: Removed.
- Drosera/win/DebuggerClient.cpp: Removed.
- Drosera/win/DebuggerClient.h: Removed.
- Drosera/win/DebuggerDocumentPlatform.cpp: Removed.
- Drosera/win/Drosera.cpp: Removed.
- Drosera/win/Drosera.h: Removed.
- Drosera/win/Drosera.vcproj/Drosera.rc: Removed.
- Drosera/win/Drosera.vcproj/Drosera.vcproj: Removed.
- Drosera/win/DroseraPrefix.cpp: Removed.
- Drosera/win/DroseraPrefix.h: Removed.
- Drosera/win/Info.plist: Removed.
- Drosera/win/ServerConnection.cpp: Removed.
- Drosera/win/ServerConnection.h: Removed.
- Drosera/win/resource.h: Removed.
- Makefile:
- Scripts/build-drosera: Removed.
- Scripts/gdb-drosera: Removed.
- Scripts/run-drosera: Removed.
- Scripts/run-drosera-nightly.cmd: Removed.
- Scripts/run-drosera.cmd: Removed.
- Scripts/webkitdirs.pm:
- 6:46 PM SquirrelFish edited by
- (diff)
- 6:46 PM Changeset in webkit [33546] by
-
- 6 edits in trunk/WebKit/win
2008-05-16 Brady Eidson <beidson@apple.com>
Reviewed by Steve Falkenburg
<rdar://problem/5942624> - Get LocalStorage persistence working on Windows
- WebPreferenceKeysPrivate.h: Add the LocalStorageDirectory defaults key
- WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): (WebPreferences::localStorageDatabasePath): (WebPreferences::setLocalStorageDatabasePath):
- WebPreferences.h:
- Interfaces/IWebPreferencesPrivate.idl:
- WebView.cpp: (WebView::initWithFrame): Set the path in the WebCore::Settings after new Page creation
- 6:16 PM Changeset in webkit [33545] by
-
- 2 edits in trunk/WebCore
2008-05-16 Anders Carlsson <andersca@apple.com>
Reviewed by Mitz.
Copy appcache headers.
- WebCore.vcproj/WebCore.vcproj:
- 5:50 PM Changeset in webkit [33544] by
-
- 3 edits2 adds in trunk
WebCore:
2008-05-16 Antti Koivisto <Antti Koivisto>
Reviewed by Anders.
Fix <rdar://problem/5934400>
Movie controller does not update on first load of http://www.apple.com/getamac/ads/
The issue is that we execute scripts while there are still pending stylesheet loads.
If the script depends on a stylesheet having been applied it may fail.
This will make external script execution block on external stylesheet loads. A full
fix (as discussed with Hyatt) will also need to block inline script execution.
Test: http/tests/local/stylesheet-and-script-load-order-http.html
- html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::notifyFinished):
LayoutTests:
2008-05-16 Antti Koivisto <Antti Koivisto>
Reviewed by Anders.
Test for <rdar://problem/5934400>
Movie controller does not update on first load of http://www.apple.com/getamac/ads/
- http/tests/local/stylesheet-and-script-load-order-http-expected.txt: Added.
- http/tests/local/stylesheet-and-script-load-order-http.html: Added.
- 5:36 PM Changeset in webkit [33543] by
-
- 2 edits in tags/Safari-6526.6/WebCore
Merge r33497.
- 5:28 PM Changeset in webkit [33542] by
-
- 2 edits in trunk/WebCore
<rdar://problem/5582483> Mail compose area needs to allow AXValue to be settable
- 5:27 PM Changeset in webkit [33541] by
-
- 9 edits2 adds in branches/squirrelfish
Bug 19076: SquirrelFish: RegisterFile can be corrupted if implictly reenter global scope with no declared vars
<https://bugs.webkit.org/show_bug.cgi?id=19076>
Reviewed by Geoff
Don't delay allocation of initial global RegisterFile, as we can't guarantee we will be able
to allocate the global 'this' register safely at any point after initialisation of the Global
Object.
Unfortunately this initial allocation caused a regression of 0.2-0.3%, however this patch adds
support for the static slot optimisation for the global Math object which brings it to a 0.3%
progression.
- 5:23 PM Changeset in webkit [33540] by
-
- 4 edits in trunk
Versioning.
- 5:21 PM Changeset in webkit [33539] by
-
- 1 copy in tags/Safari-6526.6
New tag.
- 5:18 PM Changeset in webkit [33538] by
-
- 9 edits in trunk/WebCore
2008-05-16 Stephanie Lewis <Stephanie Lewis>
Reviewed by Maciej.
track onbeforeunlaod event counts. Pretty much identical to unload event tracking.
Also rename methods from onunload tracking to be more clear.
increment/decrement event counts when onunload and onbeforeunload events are added/removed
- dom/Document.cpp: (WebCore::Document::removeHTMLWindowEventListener): (WebCore::Document::addWindowEventListener): (WebCore::Document::removeWindowEventListener): (WebCore::Document::addPendingFrameUnloadEventCount): (WebCore::Document::removePendingFrameUnloadEventCount): (WebCore::Document::addPendingFrameBeforeUnloadEventCount): (WebCore::Document::removePendingFrameBeforeUnloadEventCount):
- dom/Document.h:
clear onunload count after unload events are dispatched
- loader/FrameLoader.cpp: (WebCore::FrameLoader::stopLoading):
track onunload and onbeforeunload event counts for each frame
- page/EventHandler.cpp: (WebCore::EventHandler::EventHandler): (WebCore::EventHandler::addPendingFrameUnloadEventCount): (WebCore::EventHandler::removePendingFrameUnloadEventCount): (WebCore::EventHandler::clearPendingFrameUnloadEventCount): (WebCore::EventHandler::pendingFrameBeforeUnloadEventCount): (WebCore::EventHandler::addPendingFrameBeforeUnloadEventCount): (WebCore::EventHandler::removePendingFrameBeforeUnloadEventCount): (WebCore::EventHandler::clearPendingFrameBeforeUnloadEventCount):
- page/EventHandler.h:
clear unbeforeunload count after unbeforeunload events are detached
- page/Frame.cpp: (WebCore::Frame::shouldClose):
track total event count at page level
- page/Page.cpp: (WebCore::Page::Page): (WebCore::Page::changePendingUnloadEventCount): (WebCore::Page::pendingBeforeUnloadEventCount): (WebCore::Page::changePendingBeforeUnloadEventCount):
- page/Page.h:
- 5:07 PM Changeset in webkit [33537] by
-
- 4 edits in trunk
WebCore:
2008-05-16 Anders Carlsson <andersca@apple.com>
Reviewed by Mitz.
<rdar://problem/5787788>
REGRESSION: fast/loader/xmlhttprequest-missing-file-exception.html fails on Windows.
Replicate the Mac behavior when a sync load fails.
- platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandle::loadResourceSynchronously):
LayoutTests:
2008-05-16 Anders Carlsson <andersca@apple.com>
Reviewed by Mitz.
<rdar://problem/5787788>
REGRESSION: fast/loader/xmlhttprequest-missing-file-exception.html fails on Windows.
Remove test from skipped list.
- platform/win/Skipped:
- 5:02 PM SquirrelFish edited by
- (diff)
- 4:26 PM Changeset in webkit [33536] by
-
- 2 edits in trunk/WebCore
2008-05-16 Anders Carlsson <andersca@apple.com>
Reviewed by Brady.
Parse and set the headers on the response.
- loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::store): (WebCore::parseHeader): (WebCore::parseHeaders): (WebCore::ApplicationCacheStorage::loadCache):
- 3:53 PM Changeset in webkit [33535] by
-
- 10 edits3 deletes in trunk/WebKit
Removes WebScriptDebugServer files and related calls. This removes
the hooks that Drosera uses for debugging. Now that the Web Inspector
has a better debugger, we don't need these anymore.
Reviewed by Sam Weinig.
- DefaultDelegates/WebScriptDebugServer.h: Removed.
- DefaultDelegates/WebScriptDebugServer.m: Removed.
- DefaultDelegates/WebScriptDebugServerPrivate.h: Removed.
- WebCoreSupport/WebFrameLoaderClient.mm:
- WebKit.exp:
- WebView/WebScriptDebugDelegate.mm:
- WebView/WebScriptDebugger.mm:
(WebScriptDebugger::sourceParsed):
(WebScriptDebugger::callEvent):
(WebScriptDebugger::atStatement):
(WebScriptDebugger::returnEvent):
(WebScriptDebugger::exception):
- WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
- WebView/WebViewPrivate.h:
- 3:30 PM Changeset in webkit [33534] by
-
- 7 edits in trunk/WebCore
Adds the "this" object to the Local scope section of the
Scope Variables pane.
<rdar://problem/5774773> Web Inspector doesn't show the "this"
object in its variables list (10438)
Reviewed by Oliver Hunt.
- bindings/js/JSJavaScriptCallFrameCustom.cpp:
(WebCore::JSJavaScriptCallFrame::thisObject): Returns the thisObject
of the JavaScriptCallFrame impl. Returns jsNull if the impl is invalid.
- page/JavaScriptCallFrame.cpp:
(WebCore::JavaScriptCallFrame::thisObject): Return the thisValue from
the ExecState. Return 0 if m_exec is null.
- page/JavaScriptCallFrame.h:
- page/JavaScriptCallFrame.idl: Add thisObject.
- page/inspector/ObjectPropertiesSection.js:
(WebInspector.ObjectPropertiesSection): Adds two new arguments.
The ignoreHasOwnProperty tells the section to show all properties,
including inherited ones. And extraProperties is an object of
additional properties to show.
(WebInspector.ObjectPropertiesSection.prototype): Honor the
extraProperties and ignoreHasOwnProperty properties.
- page/inspector/ScopeChainSidebarPane.js:
(WebInspector.ScopeChainSidebarPane.prototype.update): Add a this
property to an extra object that is passed to the ObjectPropertiesSection.
Also pass true for ignoreHasOwnProperty since we want to show all properties.
- 3:26 PM Changeset in webkit [33533] by
-
- 2 edits in trunk/WebCore
2008-05-16 Anders Carlsson <andersca@apple.com>
Reviewed by Brady.
Add mimeType and textEncodingName to the resource table.
- loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::openDatabase): (WebCore::ApplicationCacheStorage::store): (WebCore::ApplicationCacheStorage::loadCache):
- 3:23 PM Changeset in webkit [33532] by
-
- 9 edits in trunk
2008-05-16 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/5770054> JavaScript profiler (10928)
Implement sorting for the profiler.
I chose to sort the profileNodes in place since there is no reason they
need to retain their original order.
- JavaScriptCore.exp: Export the symbols.
- profiler/Profile.h: Add the different ways a profile can be sorted. (KJS::Profile::sortTotalTimeDescending): (KJS::Profile::sortTotalTimeAscending): (KJS::Profile::sortSelfTimeDescending): (KJS::Profile::sortSelfTimeAscending): (KJS::Profile::sortCallsDescending): (KJS::Profile::sortCallsAscending):
- profiler/ProfileNode.cpp: Implement those ways. (KJS::totalTimeDescendingComparator): (KJS::ProfileNode::sortTotalTimeDescending): (KJS::totalTimeAscendingComparator): (KJS::ProfileNode::sortTotalTimeAscending): (KJS::selfTimeDescendingComparator): (KJS::ProfileNode::sortSelfTimeDescending): (KJS::selfTimeAscendingComparator): (KJS::ProfileNode::sortSelfTimeAscending): (KJS::callsDescendingComparator): (KJS::ProfileNode::sortCallsDescending): (KJS::callsAscendingComparator): (KJS::ProfileNode::sortCallsAscending):
- profiler/ProfileNode.h: No longer use a Deque since it cannot be sorted by std::sort and there was no reason not to use a Vector. I previously had though I would do prepending but am not. (KJS::ProfileNode::selfTime): (KJS::ProfileNode::totalPercent): (KJS::ProfileNode::selfPercent): (KJS::ProfileNode::children):
- profiler/Profiler.cpp: Removed these functions as they can be called directoy on the Profile object after getting the Vector of them. (KJS::getStackNames):
- profiler/Profiler.h:
WebCore:
2008-05-16 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/5770054> JavaScript profiler (10928)
Use a Vector instead of a Deque since we don't use the extra capabilities
of the Deque.
- page/JavaScriptProfileNode.cpp: (WebCore::getChildren): (WebCore::toJS):
- 3:19 PM Changeset in webkit [33531] by
-
- 2 edits in trunk/WebKit/mac
2008-05-16 Brady Eidson <beidson@apple.com>
Reviewed by Anders
<rdar://problem/5942616> - Need to standardize LocalStorage persistence path
Took the opportunity to touch up another pref that needs the same standardization.
That pref is currently not in use on Mac.
- WebView/WebPreferences.m: (-[WebPreferences _setFTPDirectoryTemplatePath:]): (-[WebPreferences _localStorageDatabasePath]): (-[WebPreferences _setLocalStorageDatabasePath:]): (-[WebPreferences _ftpDirectoryTemplatePath]):
- 2:30 PM Changeset in webkit [33530] by
-
- 2 edits in trunk/WebCore
Fix the build.
- 2:24 PM Changeset in webkit [33529] by
-
- 3 edits in trunk/WebCore
2008-05-16 Anders Carlsson <andersca@apple.com>
Reviewed by Brady.
Add a version table to the database.
- loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::verifySchemaVersion): (WebCore::ApplicationCacheStorage::openDatabase):
- loader/appcache/ApplicationCacheStorage.h:
- 2:10 PM Changeset in webkit [33528] by
-
- 1 edit in trunk/WebCore/ChangeLog
Restore some ChangeLog entries I nuked in the previous commits.
- 1:47 PM Changeset in webkit [33527] by
-
- 7 edits in trunk
Adds the ability to evaluate expressions in the local scope
of the selected call frame.
https://bugs.webkit.org/show_bug.cgi?id=19052
Reviewed by Geoff Garen.
- bindings/js/JSJavaScriptCallFrameCustom.cpp:
(WebCore::JSJavaScriptCallFrame::evaluate): Pass the exception
from evaluate to the calling ExecState.
- page/JavaScriptCallFrame.cpp:
(WebCore::JavaScriptCallFrame::evaluate): Added an exception out
argument. Simplified the code by calling KJS:eval directly.
- page/JavaScriptCallFrame.h: Change evalutate to take an exception
out argument.
- page/inspector/Console.js: Check if the debugger is paused and
call evaluateInSelectedCallFrame on the Scripts panel.
- page/inspector/ScriptsPanel.js: Added a paused getter and
evaluateInSelectedCallFrame which does the evaluation and updates
the scope variables pane afterwards.
- 1:47 PM Changeset in webkit [33526] by
-
- 2 edits in trunk/WebCore
Fixed the bug where the Inspector node highlight would not show
in the correct place for nodes in frames.
<rdar://problem/5712834> Elements in iframes are highlighted incorrectly (14408)
Reviewed by John Sullivan.
- page/InspectorController.cpp:
(WebCore::convertFromFrameToMainFrame): Helper function to convert
IntRect coordinates from one frame to the main frame.
(WebCore::InspectorController::drawNodeHighlight): Call the
convertFromFrameToMainFrame helper for all the rects we get from
the node since they are in the owner frame's coordinate space.
- 1:46 PM Changeset in webkit [33525] by
-
- 8 edits1 add in trunk/WebCore
Adds an error and warning count indicator at the bottom right in the
Inspector's status bar.
https://bugs.webkit.org/show_bug.cgi?id=18650
Initial implementation by Adam Roben.
Reviewed by Sam Weinig.
Test: manual-tests/inspector/error-warning-count.html
- English.lproj/localizedStrings.js: Added new strings.
- manual-tests/inspector/error-warning-count.html: Added.
- page/inspector/Console.js:
(WebInspector.Console.prototype.show): Don't do anything if visible.
(WebInspector.Console.prototype.hide): Don't do anything if hidden.
Temporally set properties and classes to mimic the post-animation
values so panels like Elements in their updateStatusBarItems call will
size things to fit the final location.
- page/inspector/ElementsPanel.js:
(WebInspector.ElementsPanel.prototype.updateBreadcrumbSizes):
Account for the #error-warning-count width when sizing breadcrumbs.
- page/inspector/Resource.js:
(WebInspector.Resource.prototype.set errors): Update the global error count.
(WebInspector.Resource.prototype.set warnings): Update the global warning count.
- page/inspector/inspector.css: Make .hidden's display property
!important to ensure things really hide, and added styling for the new
- page/inspector/inspector.html: Added an #error-warning-count div
in the #anchored-status-bar-items div.
- page/inspector/inspector.js:
(WebInspector.get errors): Added.
(WebInspector.set errors): Added. Calls _updateErrorAndWarningCounts.
(WebInspector.get warnings): Added.
(WebInspector.set warnings): Added. Calls _updateErrorAndWarningCounts.
(WebInspector._updateErrorAndWarningCounts): Added. Update the
(WebInspector.loaded): Add a click event listener to the
_updateErrorAndWarningCounts to display the initial error/warning counts.
- 1:38 PM Changeset in webkit [33524] by
-
- 9 edits in trunk
WebCore:
2008-05-16 Julien Chaffraix <jchaffraix@webkit.org>
Reviewed by Eric.
Preparatory work for bug 9191: JS*ElementWrapperFactory should be autogenerated
Make video tags use a header guard so that make_names.pl for factory generation.
- Add video tag guard in HTMLTagNames.in & give an extraDefines parameter to make_names.pl when generating HTMLNames.
- Modify the different build systems to accomodate the new parameter.
- Small make_names.pl clean up (mainly code generated coding style issue).
- DerivedSources.make: Add HTML_FLAGS and pass it to make_names.pl if it is defined (similar to SVG)
- GNUmakefile.am: Add HTML_FEATURES & HTML_FLAGS and pass it to make_names.pl if HTML_FLAGS is defined.
- WebCore.pro: Pass $${DEFINES} to make_names.pl.
- dom/make_names.pl:
- html/HTMLElement.cpp: (WebCore::inlineTagList): Add ENABLE(VIDEO) guard.
- html/HTMLTagNames.in: Ditto.
2008-05-16 Julien Chaffraix <jchaffraix@webkit.org>
Reviewed by Eric.
Preparatory work for bug 9191: JS*ElementWrapperFactory should be autogenerated
- configure.ac: Add HTML_FLAGS and set it when video is enabled.
- 12:17 PM UsingGitWithWebKit edited by
- (diff)
- 11:47 AM Changeset in webkit [33523] by
-
- 2 edits in trunk/WebCore
2008-05-16 Anders Carlsson <andersca@apple.com>
Reviewed by Mitz.
Fire progress events.
- loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::startLoadingEntry):
- 10:28 AM Changeset in webkit [33522] by
-
- 2 edits in trunk/WebKitSite
2008-05-16 Anders Carlsson <andersca@apple.com>
Reviewed by Jess.
Add manifest MIME type.
- .htaccess:
- 10:27 AM Changeset in webkit [33521] by
-
- 4 edits in trunk/WebCore
2008-05-16 Anders Carlsson <andersca@apple.com>
Reviewed by John.
Handle the case where the main resource load is cancelled while the cache attempt is in progress.
- loader/DocumentLoader.cpp: (WebCore::DocumentLoader::mainReceivedError): Tell the group that the main resource failed to load.
- loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::failedLoadingMainResource): Call cacheUpdateFailed.
(WebCore::ApplicationCacheGroup::cacheUpdateFailed):
Stop loading if the update failed.
- loader/appcache/ApplicationCacheGroup.h:
- 10:26 AM Changeset in webkit [33520] by
-
- 10 edits in trunk
<rdar://problem/5710317> REGRESSION:Selecting ranges of text should be possible using the keyboard (15310)
Adds support to select text ranges when enhanced accessibility is turned on
- 10:25 AM Changeset in webkit [33519] by
-
- 2 edits in trunk/LayoutTests
2008-05-15 Anders Carlsson <andersca@apple.com>
Update test results now that navigator.onLine exists.
- fast/dom/Window/window-properties-expected.txt:
- 7:25 AM Changeset in webkit [33518] by
-
- 8 edits in trunk
2008-05-15 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Simon.
Since WebKitGtk is fully using autotools now, clean-up the .pro/.pri files
from gtk-port.
- 5:06 AM Changeset in webkit [33517] by
-
- 3 edits3 adds in branches/squirrelfish
Bug 19098: SquirrelFish: Ref'd temporaries can be clobbered
<https://bugs.webkit.org/show_bug.cgi?id=19098>
Patch from Cameron Zwarich
Reviewed by Oliver
When doing code generation for a statement list, increase the reference
count on a register that might eventually be returned, so that it doesn't
get clobbered by a request for a new temporary.
- 2:51 AM Changeset in webkit [33516] by
-
- 3 edits6 adds in branches/squirrelfish
2008-05-16 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- fixed Bug 19044: SquirrelFish: Bogus values enter evaluation when closing over scope with parameter and var with same name https://bugs.webkit.org/show_bug.cgi?id=19044
- kjs/JSActivation.cpp: (KJS::JSActivation::copyRegisters): Use numLocals from the code block rather than the size of the symbol table for the number of registers to copy, to account for duplicate parameters and vars with the same name as parameters (we still have potentially suboptimal codegen in that we allocate a local register for the var in the latter case but it is never used).
LayoutTests:
2008-05-16 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver.
- fixed Bug 19044: SquirrelFish: Bogus values enter evaluation when closing over scope with parameter and var with same name https://bugs.webkit.org/show_bug.cgi?id=19044
- fast/js/duplicate-param-crash-expected.txt: Added.
- fast/js/duplicate-param-crash.html: Added.
- fast/js/resources/duplicate-param-crash.js: Added.
- fast/js/resources/var-shadows-arg-crash.js: Added.
- fast/js/var-shadows-arg-crash-expected.txt: Added.
- fast/js/var-shadows-arg-crash.html: Added.
- 12:22 AM Changeset in webkit [33515] by
-
- 2 edits in trunk/WebCore
Fix the Gtk build.
- 12:12 AM Changeset in webkit [33514] by
-
- 3 edits in trunk/WebCore
Fix the Qt build.
- 12:10 AM Changeset in webkit [33513] by
-
- 3 edits2 adds in trunk
Reviewed by Dave Hyatt.
https://bugs.webkit.org/show_bug.cgi?id=17433
getComputedStyle() -> clip returns empty string
Make getComputedStyle return a shape value for clip
if it is set.
Tests: fast/css/getPropertyValue-clip.html