⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Oct 29, 2007:

11:29 PM Changeset in webkit [27256] by mjs
  • 1 edit
    1 add in trunk/SunSpider

Reviewed by Eric.


  • Added list of ECMAScript3 features that SunSpider does not cover currently.
  • UNCOVERED: Added.
10:36 PM Changeset in webkit [27255] by oliver
  • 5 edits in trunk/JavaScriptCore

Debranching remaining assignment nodes, and miscellaneous cleanup

Reviewed by Maciej.

Split read-modify code paths out of AssignBracketNode and AssignDotNode
Removed now unnecessary check for write-only assignment in ReadModifyLocalVarNode
and ReadModifyResolveNode evaluate methods

Leads to a 1% gain in SunSpider.

10:27 PM Changeset in webkit [27254] by bdakin
  • 11 edits
    30 adds
    1 delete in trunk

WebCore:

Reviewed by Hyatt.

Fix for <rdar://problem/5399614> anchor tag is not rendered without
text content, works in Firefox with CSS background-image (13237)

This patch allows empty inlines that have box decorations or width
from border/padding/margin to have line boxes.

  • rendering/bidi.cpp: (WebCore::inlineFlowAllowsLineBox): Convenience function that defines when we allow an inline flow to have a line box. (WebCore::requiresLineBox): Call inlineFlowAllowsLineBox. (WebCore::shouldSkipWhitespaceAfterStartObject): New function to merge some shared code between list markers and empty inline flows that fall at the beginning of a line. (WebCore::RenderBlock::findNextLineBreak): Make flows more like list markers.

One interesting side effect of this bug appeared in our xhtml/svg
tests that generate parser error tags. The tag we generate was
actually an empty inline with box decorations. This patch causes
those inlines to draw now, and the parser errors looked strange. So
I changed it so that the parsererror tag is display:block. This
matches Firefox, and I think was the original intent of the tag
since that causes its red background and border to show up.

  • dom/XMLTokenizer.cpp: (WebCore::createXHTMLParserErrorHeader):

LayoutTests:

Reviewed by Hyatt.

New tests and new results for old tests for <rdar://problem/
5399614> anchor tag is not rendered without text content, works in
Firefox with CSS background-image (13237)

New tests:

  • fast/inline/drawStyledEmptyInlines.html: Added.
  • fast/inline/drawStyledEmptyInlinesWithWS.html: Added.
  • fast/inline/emptyInlinesWithinLists.html: Added.
  • fast/inline/styledEmptyInlinesWithBRs.html: Added.
  • platform/mac/fast/inline/drawStyledEmptyInlines-expected.checksum: Added.
  • platform/mac/fast/inline/drawStyledEmptyInlines-expected.png: Added.
  • platform/mac/fast/inline/drawStyledEmptyInlines-expected.txt: Added.
  • platform/mac/fast/inline/drawStyledEmptyInlinesWithWS-expected.checksum: Added.
  • platform/mac/fast/inline/drawStyledEmptyInlinesWithWS-expected.png: Added.
  • platform/mac/fast/inline/drawStyledEmptyInlinesWithWS-expected.txt: Added.
  • platform/mac/fast/inline/emptyInlinesWithinLists-expected.checksum: Added.
  • platform/mac/fast/inline/emptyInlinesWithinLists-expected.png: Added.
  • platform/mac/fast/inline/emptyInlinesWithinLists-expected.txt: Added.
  • platform/mac/fast/inline/styledEmptyInlinesWithBRs-expected.checksum: Added.
  • platform/mac/fast/inline/styledEmptyInlinesWithBRs-expected.png: Added.
  • platform/mac/fast/inline/styledEmptyInlinesWithBRs-expected.txt: Added.


New results for tests with <paserererrors> since <parsererror> is
now block.

  • platform/mac/fast/invalid/junk-data-expected.checksum: Replaced.
  • platform/mac/fast/invalid/junk-data-expected.png: Replaced.
  • platform/mac/fast/invalid/junk-data-expected.txt:
  • platform/mac/fast/invalid/missing-end-tag-expected.checksum: Replaced.
  • platform/mac/fast/invalid/missing-end-tag-expected.png: Replaced.
  • platform/mac/fast/invalid/missing-end-tag-expected.txt:
  • platform/mac/fast/parser/xhtml-alternate-entities-expected.checksum: Replaced.
  • platform/mac/fast/parser/xhtml-alternate-entities-expected.png: Replaced.
  • platform/mac/fast/parser/xhtml-alternate-entities-expected.txt:
  • platform/mac/fast/xsl/xslt-extra-content-at-end-expected.checksum: Replaced.
  • platform/mac/fast/xsl/xslt-extra-content-at-end-expected.png: Replaced.
  • platform/mac/fast/xsl/xslt-extra-content-at-end-expected.txt: Removed.
  • platform/mac/svg/custom/junk-data-expected.checksum: Replaced.
  • platform/mac/svg/custom/junk-data-expected.png: Replaced.
  • platform/mac/svg/custom/junk-data-expected.txt:
  • platform/mac/svg/custom/missing-xlink-expected.checksum: Replaced.
  • platform/mac/svg/custom/missing-xlink-expected.png: Replaced.
  • platform/mac/svg/custom/missing-xlink-expected.txt:
  • platform/mac/svg/hixie/error/012-expected.checksum: Replaced.
  • platform/mac/svg/hixie/error/012-expected.png: Replaced.
  • platform/mac/svg/hixie/error/012-expected.txt:
8:48 PM Changeset in webkit [27253] by mitz
  • 3 edits in trunk/WebCore

Reviewed by Dave Hyatt.

  • fix crashing tests fast/frames/inline-object-inside-frameset.html and fast/forms/form-hides-table.html
  • rendering/RenderBox.cpp: (WebCore::RenderBox::destroy):
  • rendering/RenderWidget.cpp: (WebCore::RenderWidget::destroy):
8:14 PM Changeset in webkit [27252] by oliver
  • 6 edits in trunk/JavaScriptCore

Debranching various Node::evaluate implementations

Reviewed by Maciej.

Split the read-modify-write assignment cases out of AssignResolveNode and into ReadModifyResolveNode
Split the increment and decrement cases for Prefix- and Postfix- ResolveNode, BracketNode, and DotNode

Gains 1.6% on SunSpider

7:56 PM Changeset in webkit [27251] by mitz
  • 4 edits
    5 adds in trunk

WebCore:

Reviewed by Adam Roben.

Test: fast/backgrounds/size/zero.html

  • platform/graphics/cg/ImageCG.cpp: (WebCore::Image::drawPattern): Added an ASSERT and an early return to guard against singular pattern transforms.
  • rendering/RenderBox.cpp: (WebCore::cacluateBackgroundSize): Changed to ensure a minimum tile size of 1x1.

LayoutTests:

Reviewed by Adam Roben.

  • fast/backgrounds/size/zero.html: Added.
  • platform/mac/fast/backgrounds/size/zero-expected.checksum: Added.
  • platform/mac/fast/backgrounds/size/zero-expected.png: Added.
  • platform/mac/fast/backgrounds/size/zero-expected.txt: Added.
7:44 PM Changeset in webkit [27250] by kmccullo
  • 8 edits
    3 adds in trunk/WebKit/win

Reviewed by Adam and Maciej.

  • Added the IWebScriptScope interface which is used by Drosera to get information and run contextually significant code with respect to the current JS stack frame.
  • Interfaces/IWebScriptCallFrame.idl: Line endings changed, not sure why but the real changes were to change the return type of scopeChain() and the return type and name of evaluateWebScript() to stringByEvaluatingJavaScriptFromString().
  • Interfaces/IWebScriptScope.idl: Added.
  • WebKit.vcproj/Interfaces.vcproj: Added the new interface.
  • WebKit.vcproj/WebKit.vcproj: Added the files for the new class.
  • WebKit.vcproj/WebKitGUID.vcproj: Added the new interfaces.
  • WebScriptCallFrame.cpp: Changed the return type to E_NOTIMPL and asserted so it would be obvious if I accidentally try to use one of these functions before it's implemented. (WebScriptCallFrame::caller): (WebScriptCallFrame::scopeChain): (WebScriptCallFrame::functionName): (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString):
  • WebScriptCallFrame.h: Changed the return types mentioned above.
  • WebScriptDebugServer.cpp: Also changed the return type to E_NOTIMPL. (WebScriptDebugServer::addListener): (WebScriptDebugServer::removeListener): (WebScriptDebugServer::step): (WebScriptDebugServer::pause): (WebScriptDebugServer::resume): (WebScriptDebugServer::isPaused):
  • WebScriptScope.cpp: Added. (WebScriptScope::WebScriptScope): (WebScriptScope::~WebScriptScope): (WebScriptScope::QueryInterface): (WebScriptScope::AddRef): (WebScriptScope::Release): (WebScriptScope::getVariableNames): (WebScriptScope::getValueForVariable):
  • WebScriptScope.h: Added.
7:18 PM Changeset in webkit [27249] by mjs
  • 2 edits in trunk/JavaScriptCore

Not reviewed, build fix.


  • Include Vector.h in a way that actually works.
  • kjs/LocalStorage.h:
7:12 PM Changeset in webkit [27248] by mjs
  • 2 edits in trunk/JavaScriptCore

Not reviewed, build fix.


  • Install LocalStorage.h as a private header.
6:55 PM Changeset in webkit [27247] by mjs
  • 2 edits in trunk/SunSpider

Reviewed by Oliver.


  • Give better error messages when sunspider-compare-results fails
  • sunspider-compare-results:
6:54 PM Changeset in webkit [27246] by alp
  • 2 edits in trunk/WebKit/gtk

Reviewed by Maciej.

Do not allow control to reach end of non-void functions

6:46 PM Changeset in webkit [27245] by alp
  • 1 edit in trunk/WebCore/ChangeLog

ChangeLog entry for r27244

6:44 PM Changeset in webkit [27244] by alp
  • 4 edits
    3 adds in trunk/WebCore

Reviewed by Maciej.

Add GTK+ convenience conversions for various primitives

6:37 PM Changeset in webkit [27243] by mjs
  • 3 edits in trunk/SunSpider

Reviewed by Darin.


  • fix Date tests to work in command-line SpiderMonkey
  • tests/date-format-tofte.js:
  • tests/date-format-xparb.js:
6:34 PM Changeset in webkit [27242] by mjs
  • 5 edits
    1 add in trunk/JavaScriptCore

Reviewed by Darin.


  • Define good VectorTraits for LocalStorage entry for 0.5% speed improvement on SunSpider.
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • kjs/LocalStorage.h: Added. (KJS::LocalStorageEntry::LocalStorageEntry): (WTF::):
  • kjs/function.h:
  • kjs/nodes.cpp: (KJS::FunctionBodyNode::processDeclarationsForFunctionCode):
6:31 PM Changeset in webkit [27241] by kmccullo
  • 1 edit in trunk/WebKitTools/ChangeLog

updated reviewers for my previous changelog.

6:30 PM Changeset in webkit [27240] by kmccullo
  • 6 edits in trunk/WebKitTools

Reviewed by Maciej and Adam.

  • Minor mac-side improvements including moving a function to a more appropriate location, fixing a warning, and correctly checking exceptions.
  • Drosera/DebuggerDocument.cpp: Corrected the exception checking. (DebuggerDocument::willExecuteStatement): (DebuggerDocument::didEnterCallFrame): (DebuggerDocument::willLeaveCallFrame): (DebuggerDocument::windowScriptObjectAvailable): (DebuggerDocument::callFunctionOnObject):
  • Drosera/mac/DebuggerClient.mm: Fixes a warning.
  • Drosera/mac/DebuggerDocumentPlatform.mm: Moved webScriptAttributeKeysForScriptObject to DebuggerDocumentPlatform because it doesn't require the ServerConnection at all. (NSStringCreateWithJSStringRef): Made an argument const. (JSValueRefCreateWithNSString): Made an argument const. (+[WebScriptObject webScriptAttributeKeysForScriptObject:]): (DebuggerDocument::getPlatformLocalScopeVariableNamesForCallFrame):
  • Drosera/mac/ServerConnection.h: Moved aforementioned function.
  • Drosera/mac/ServerConnection.mm: Ditto. (-[ServerConnection webView:didLoadMainResourceForDataSource:]):
5:49 PM Changeset in webkit [27239] by weinig
  • 17 edits in trunk/LayoutTests

Rubber-stamped by Adam Roben.

Simplify the dataURL xxs tests.

  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-2-level-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-2-level.html:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-to-data-url-sub-frame-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-to-data-url-sub-frame.html:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame.html:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-to-data-url-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-to-data-url.html:
  • http/tests/security/dataURL/xss-DENIED-from-javascript-url-window-open-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-javascript-url-window-open.html:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-from-data-url-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-from-data-url.html:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-2-level-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-2-level.html:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-window-open-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-window-open.html:
5:34 PM Changeset in webkit [27238] by weinig
  • 3 edits in trunk/WebKitTools

Reviewed by Adam Roben.

Add a globalFlag property to the LayoutTestController to allow cross-domain indications.

  • DumpRenderTree/LayoutTestController.cpp: (LayoutTestController::LayoutTestController): (getGlobalFlagCallback): (setGlobalFlagCallback): (LayoutTestController::getJSClass): (LayoutTestController::staticValues):
  • DumpRenderTree/LayoutTestController.h: (LayoutTestController::globalFlag): (LayoutTestController::setGlobalFlag):
5:28 PM Changeset in webkit [27237] by darin
  • 4 edits in trunk

SunSpider:

Reviewed by Maciej.

  • sunspider: Added --shark20 option, to run Shark at its highest sample resolution instead of its default.

WebKitTools:

Reviewed by Maciej.

  • Scripts/run-sunspider: Added --shark20 option, to run Shark at its highest sample resolution instead of its default.
4:13 PM Changeset in webkit [27236] by honeycutt
  • 4 edits in trunk/WebCore

2007-10-29 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Anders.

Speculative fix for <rdar://5538489> Safari 3.0.4 seed hangs at
http://tgmonline.futuregamer.it/ (works fine on Safari 2.0.4 and Safari
Beta for Mac)


I cannot reproduce this hang, but it is likely due to our not limiting
WM_USER+1 messages or InvalidateRect calls for a plugin with initially-
unknown MIME type. The embed tag on the page is missing a type
attribute, so as fallback, we choose to load the Flash plugin based on
the file extension of "swf." However, we do not record this determined
MIME type, and so our quirks cannot be established.


Changed findPlugin() so that, if it fails to find a plugin for the
given MIME type, it will lookup the MIME type for the file extension -
overwriting its passed MIME type parameter - and search for a plugin
for that MIME type.

  • plugins/win/PluginDatabaseWin.cpp: (WebCore::PluginDatabaseWin::pluginForMIMEType): Added an early return if the MIME type is empty (WebCore::PluginDatabaseWin::MIMETypeForExtension): Added to replace pluginForExtension. Returns a String with the MIME type for the file extension. Also, changed to use case-insensitive compares (WebCore::PluginDatabaseWin::findPlugin): If we fail to find a plugin for the given extension, overwrite the incoming MIME type parameter with the MIME type for the file extension, and search for a plugin for that MIME type. Also, changed the way that the extension is determined (WebCore::PluginDatabaseWin::createPluginView): Pass a mutable String to findPlugin() so that it can be updated if necessary
  • plugins/win/PluginDatabaseWin.h: Changed findPlugin() to take a non- const String, removed definition of pluginForExtension, added definition for MIMETypeForExtension
  • plugins/win/PluginPackageWin.cpp: (WebCore::PluginPackageWin::fetchInfo): Store the MIME type in lowercase for easier compares
3:55 PM Changeset in webkit [27235] by andrew
  • 2 edits in trunk/WebCore

Not reviewed - build fix

Fix Mac Build.


WebKit/WebCore/xml/XSLTProcessor.cpp:79: warning: 'level' may be used uninitialized
in this function

  • xml/XSLTProcessor.cpp: (WebCore::XSLTProcessor::parseErrorFunc):
3:28 PM Changeset in webkit [27234] by alp
  • 2 edits in trunk/WebCore

Reviewed by Adam Roben.

http://bugs.webkit.org/show_bug.cgi?id=15725
[GTK] WebCore.pro header dependencies are incorrect

Fix header dependencies in the build system

INCLUDEPATH and DEPENDPATH are now up to date.

3:16 PM Changeset in webkit [27233] by mrowe@apple.com
  • 180 edits
    62 adds
    99 deletes in trunk/WebKitSite

Upgrade WordPress.

2:46 PM Changeset in webkit [27232] by bdash
  • 2 edits
    6 adds in trunk/WebKitSite

Files that have been added or modified on the server without making it in to SVN.

12:17 PM Changeset in webkit [27231] by ggaren
  • 3 edits in trunk/JavaScriptCore

Reviewed by Oliver Hunt.


Some small tweaks that I notice while reviewing Oliver's last patch.


Includes removal of an unnecessary KJS_CHECKEXCEPTIONVALUE.


No change in SunSpider because SunSpider doesn't take the code path that
would execute the unnecessary KJS_CHECKEXCEPTIONVALUE much.

  • kjs/nodes.cpp: (KJS::LocalVarPostfixNode::evaluate): (KJS::TypeOfResolveNode::optimizeVariableAccess): (KJS::LocalVarTypeOfNode::evaluate): (KJS::PrefixResolveNode::optimizeVariableAccess): (KJS::LocalVarPrefixNode::evaluate): (KJS::AssignResolveNode::optimizeVariableAccess): (KJS::LocalVarAssignNode::evaluate):
  • kjs/nodes.h: (KJS::LocalVarTypeOfNode::): (KJS::PrefixResolveNode::): (KJS::LocalVarPrefixNode::): (KJS::AssignResolveNode::): (KJS::LocalVarAssignNode::):
11:57 AM Changeset in webkit [27230] by timothy@apple.com
  • 1 edit in trunk/WebCore/css/CSSParser.cpp

A better build fix.

11:50 AM Changeset in webkit [27229] by bdakin
  • 3 edits in trunk/WebCore

Build fix.

  • css/CSSParser.cpp: (WebCore::CSSParser::parseTimingFunctionValue):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::mapTransitionTimingFunction):
11:22 AM Changeset in webkit [27228] by hyatt
  • 21 edits
    4 adds in trunk/WebCore

Land the back end for CSS animated property transitions. I am landing this in stages, so the AnimationController
class is deliberately left empty.

Reviewed by darin/aroben

  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSPropertyNames.in:
  • css/CSSTimingFunctionValue.cpp: Added. (WebCore::CSSTimingFunctionValue::cssText):
  • css/CSSTimingFunctionValue.h: Added. (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue): (WebCore::CSSTimingFunctionValue::firstPoint): (WebCore::CSSTimingFunctionValue::secondPoint):
  • css/CSSValueKeywords.in:
  • history/CachedPage.cpp: (WebCore::CachedPage::restore):
  • page/AnimationController.cpp: Added. (WebCore::AnimationController::AnimationController): (WebCore::AnimationController::~AnimationController): (WebCore::AnimationController::cancelTransitions): (WebCore::AnimationController::updateTransitions): (WebCore::AnimationController::suspendAnimations): (WebCore::AnimationController::resumeAnimations):
  • page/AnimationController.h: Added.
  • page/Frame.cpp: (WebCore::Frame::animationController): (WebCore::Frame::clearTimers):
  • page/Frame.h:
  • page/FramePrivate.h:
  • rendering/RenderBox.cpp: (WebCore::RenderBox::setStyle): (WebCore::RenderBox::destroy):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::animationController):
  • rendering/RenderObject.h:
  • rendering/RenderStyle.cpp: (WebCore::Transition::Transition): (WebCore::Transition::~Transition): (WebCore::Transition::operator=): (WebCore::Transition::operator==): (WebCore::Transition::fillUnsetProperties): (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::~StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::operator==): (WebCore::StyleRareNonInheritedData::transitionDataEquivalent): (WebCore::RenderStyle::diff): (WebCore::RenderStyle::adjustTransitions): (WebCore::RenderStyle::accessTransitions):
  • rendering/RenderStyle.h: (WebCore::BackgroundLayer::next): (WebCore::): (WebCore::TimingFunction::TimingFunction): (WebCore::TimingFunction::operator==): (WebCore::Transition::next): (WebCore::Transition::isTransitionDurationSet): (WebCore::Transition::isTransitionRepeatCountSet): (WebCore::Transition::isTransitionTimingFunctionSet): (WebCore::Transition::isTransitionPropertySet): (WebCore::Transition::isEmpty): (WebCore::Transition::clearTransitionDuration): (WebCore::Transition::clearTransitionRepeatCount): (WebCore::Transition::clearTransitionTimingFunction): (WebCore::Transition::clearTransitionProperty): (WebCore::Transition::transitionDuration): (WebCore::Transition::transitionRepeatCount): (WebCore::Transition::transitionTimingFunction): (WebCore::Transition::transitionProperty): (WebCore::Transition::setTransitionDuration): (WebCore::Transition::setTransitionRepeatCount): (WebCore::Transition::setTransitionTimingFunction): (WebCore::Transition::setTransitionProperty): (WebCore::Transition::setNext): (WebCore::Transition::operator!=): (WebCore::RenderStyle::transitions): (WebCore::RenderStyle::clearTransitions): (WebCore::RenderStyle::inheritTransitions): (WebCore::RenderStyle::initialTransitionDuration): (WebCore::RenderStyle::initialTransitionRepeatCount): (WebCore::RenderStyle::initialTransitionTimingFunction): (WebCore::RenderStyle::initialTransitionProperty):
  • rendering/RenderWidget.cpp: (WebCore::RenderWidget::destroy):
10:02 AM Changeset in webkit [27227] by ap
  • 5 edits in trunk/WebCore

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=6040
XSLT does not report errors to the user

Made parseErrorFunc a static member function of XSLTProcessor to be reusable from XSLStylesheet.
Switched to xmlSetStructuredErrorFunc to get an error structure instead of pre-formatted console
output. Got rid of DeprecatedString in XSLTProcessor.

  • dom/Document.cpp: (WebCore::Document::applyXSLTransform):
  • xml/XSLStyleSheet.cpp: (WebCore::XSLStyleSheet::parseString):
  • xml/XSLTProcessor.cpp: (WebCore::XSLTProcessor::parseErrorFunc): (WebCore::docLoaderFunc): (WebCore::setXSLTLoadCallBack): (WebCore::writeToString): (WebCore::saveResultToString): (WebCore::transformTextStringToXHTMLDocumentString): (WebCore::xsltParamArrayFromParameterMap): (WebCore::freeXsltParamArray): (WebCore::XSLTProcessor::createDocumentFromSource): (WebCore::createFragmentFromSource): (WebCore::xsltStylesheetPointer): (WebCore::xmlDocPtrFromNode): (WebCore::resultMIMEType): (WebCore::XSLTProcessor::transformToString): (WebCore::XSLTProcessor::transformToDocument): (WebCore::XSLTProcessor::transformToFragment):
  • xml/XSLTProcessor.h: (WebCore::XSLTProcessor::setXSLStylesheet): (WebCore::XSLTProcessor::importStylesheet): (WebCore::XSLTProcessor::xslStylesheet):
9:34 AM Changeset in webkit [27226] by ddkilzer
  • 2 edits in trunk/WebKitTools

Fixed showStatus() to print status for successfully resolved conflicts when using git.

Reviewed by Mark Rowe.

Previously showStatus() would run "git diff --name-status" after a ChangeLog conflict
was successfully resolved, but this would not show any status because the change had
already been cached in the index using "git add". The solution is to add an optional
second argument to showStatus() which adds the "--cached" switch to the command.

  • Scripts/resolve-ChangeLogs: (showStatus):
9:28 AM Changeset in webkit [27225] by ap
  • 1 edit
    4 adds in trunk/LayoutTests

Reviewed by Mitz.

Test for http://bugs.webkit.org/show_bug.cgi?id=10030
Star Alliance site is opened without the main frame

  • fast/frames/location-change-expected.txt: Added.
  • fast/frames/location-change.html: Added.
  • fast/frames/resources/location-change-frame-1.html: Added.
  • fast/frames/resources/location-change-frame-2.html: Added.
9:02 AM Changeset in webkit [27224] by mitz
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by John Sullivan.

  • fix <rdar://problem/5424455> REGRESSION (r21168-r21193, Tiger only): Safari scrollbar is clipped at top when loading particular RSS page

Test: fast/repaint/layout-state-only-posiitoned.html

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutOnlyPositionedObjects): Pop layout state before updating scroll info, which possibly repaints us.

LayoutTests:

Reviewed by John Sullivan,

  • repaint test for <rdar://problem/5424455> REGRESSION (r21168-r21193, Tiger only): Safari scrollbar is clipped at top when loading particular RSS page
  • fast/repaint/layout-state-only-posiitoned.html: Added.
  • platform/mac/fast/repaint/layout-state-only-posiitoned-expected.checksum: Added.
  • platform/mac/fast/repaint/layout-state-only-posiitoned-expected.png: Added.
  • platform/mac/fast/repaint/layout-state-only-posiitoned-expected.txt: Added.
3:31 AM Changeset in webkit [27223] by ddkilzer
  • 3 edits
    5 adds in trunk

WebCore:

REGRESSION (r17701): Favicons should be viewable as image documents
<http://bugs.webkit.org/show_bug.cgi?id=15640>

Reviewed by Darin.

On Tiger and Leopard, the image/x-icon MIME type is not returned from
CGImageSourceCopyTypeIdentifiers(), so opening a URL to a favicon caused
the icon to be downloaded instead being displayed in an image document.

Test: fast/images/favicon-as-image.html

  • platform/MIMETypeRegistry.cpp: (WebCore::initialiseSupportedImageMIMETypes): Manually add image/x-icon to supportedImageMIMETypes and supportedImageResourceMIMETypes. Also fixed comment about the image/bmp MIME type since it applies to both Tiger and Leopard.

LayoutTests:

Test for: REGRESSION (r17701): Favicons should be viewable as image documents
<http://bugs.webkit.org/show_bug.cgi?id=15640>

Reviewed by Darin.

  • fast/images/favicon-as-image.html: Added.
  • fast/images/resources/favicon.ico: Added.
  • platform/mac/fast/images/favicon-as-image-expected.checksum: Added.
  • platform/mac/fast/images/favicon-as-image-expected.png: Added.
  • platform/mac/fast/images/favicon-as-image-expected.txt: Added.
2:14 AM Changeset in webkit [27222] by eseidel
  • 2 edits in trunk/JavaScriptCore

2007-10-29 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.


SunSpider claims this was a 0.7% speedup.

  • kjs/string_object.cpp: (KJS::StringProtoFunc::callAsFunction): avoid mallocing a jsString in the common case
1:44 AM Changeset in webkit [27221] by mjs
  • 7 edits in trunk

JavaScriptCore:

Reviewed by Mark.


  • re-enable asserts for access to empty or deleted keys
  • wtf/HashTable.h: (WTF::::lookup): (WTF::::lookupForWriting): (WTF::::fullLookupForWriting): (WTF::::add):

WebCore:

Reviewed by Mark.

  • fixed assertion failures detected by the new assertions
  • bindings/objc/DOMRGBColor.mm: (-[DOMRGBColor dealloc]): Clear _internal before calling [super dealloc] because it's not a pointer and shouldn't be in the normal wrapper cache.
  • dom/Document.cpp: (WebCore::Document::addImageMap): Don't access hashmap if name is null. (WebCore::Document::removeImageMap): ditto
  • dom/StyledElement.cpp: (WebCore::StyledElement::parseMappedAttribute): Don't claim we have a class when the class attribute is empty.
  • platform/TextCodecICU.cpp: (WebCore::gbkCallbackEscape): Don't look up 0 code points.
1:32 AM Changeset in webkit [27220] by eseidel
  • 2 edits in trunk/JavaScriptCore

2007-10-29 Eric Seidel <eric@webkit.org>

Build fix only, no review.

  • JavaScriptCore.exp: Export symbol for new StringInstance::getOwnPropertySlot
1:31 AM Changeset in webkit [27219] by mrowe@apple.com
  • 3 edits in trunk/JavaScriptCore

2007-10-29 Mark Rowe <mrowe@apple.com>

Gtk build fix. Move struct declarations into nodes.h.

  • kjs/grammar.y:
  • kjs/nodes.h:
12:55 AM Changeset in webkit [27218] by eseidel
  • 4 edits in trunk/JavaScriptCore

2007-10-29 Eric Seidel <eric@webkit.org>

Reviewed by darin.


Give StringInstance a getOwnPropertySlot(ExecState, unsigned, PropertySlot) fastpath, just like Arrays.
Make it a compile time error to use toString(ExecState) on a StringInstance


SunSpider claims this was a 6.6% speedup overall (22% on string-base64)

  • kjs/internal.h: (KJS::StringImp::getLength):
  • kjs/string_object.cpp: (KJS::StringInstance::lengthGetter): (KJS::StringInstance::inlineGetOwnPropertySlot): (KJS::StringInstance::getOwnPropertySlot):
  • kjs/string_object.h:
12:21 AM Changeset in webkit [27217] by ap
  • 5 edits
    2 adds in trunk

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=10734
Made HTMLOptionElement.index read-only, matching IE and DOM standard.

Test: fast/dom/HTMLOptionElement/set-option-index-text.html

  • html/HTMLOptionElement.idl: Marked index as readonly.
  • html/HTMLOptionElement.cpp:
  • html/HTMLOptionElement.h: Removed setIndex().
12:05 AM Changeset in webkit [27216] by oliver
  • 3 edits in trunk/JavaScriptCore

Added nodes to allow Assignment, TypeOf, and prefix operators to
make use of the new optimised local variable look up.

5% gain on sunspider

Reviewed by Darin

Oct 28, 2007:

11:49 PM Changeset in webkit [27215] by mjs
  • 6 edits in trunk/JavaScriptCore

Reviewed by Darin.



Not a significant speedup or slowdown on SunSpider.

  • kjs/Parser.cpp: (KJS::clearNewNodes):
  • kjs/Parser.h:
  • kjs/grammar.y:
  • kjs/nodes.cpp: (KJS::BlockNode::BlockNode): (KJS::CaseBlockNode::CaseBlockNode): (KJS::FunctionBodyNode::FunctionBodyNode): (KJS::SourceElementsNode::SourceElementsNode): (KJS::ProgramNode::ProgramNode):
  • kjs/nodes.h: (KJS::ElementNode::): (KJS::ArrayNode::): (KJS::PropertyListNode::): (KJS::ObjectLiteralNode::): (KJS::ArgumentListNode::): (KJS::ArgumentsNode::): (KJS::VarDeclListNode::): (KJS::VarStatementNode::): (KJS::ForNode::): (KJS::ParameterNode::): (KJS::FuncExprNode::): (KJS::FuncDeclNode::): (KJS::SourceElementsNode::): (KJS::CaseClauseNode::): (KJS::ClauseListNode::):
11:25 PM Changeset in webkit [27214] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

2007-10-28 Mark Rowe <mrowe@apple.com>

Disable assertions in a manner that doesn't break the Qt Windows build.

  • wtf/HashTable.h: (WTF::::lookup): (WTF::::lookupForWriting): (WTF::::fullLookupForWriting):
11:14 PM Changeset in webkit [27213] by ggaren
  • 2 edits in trunk/JavaScriptCore

Temporarily disabling some ASSERTs I introduced in my last check-in
because of http://bugs.webkit.org/show_bug.cgi?id=15747
Lots of layout tests fail the !HashTranslator::equal(KeyTraits::emptyValue() ASSERT

  • wtf/HashTable.h: (WTF::::lookup): (WTF::::lookupForWriting): (WTF::::fullLookupForWriting): (WTF::::add):
11:13 PM Changeset in webkit [27212] by aroben
  • 2 edits in trunk/SunSpider

Fix SunSpider on Windows

Reviewed by Eric.

  • sunspider: Don't use colons in filenames.
10:53 PM Changeset in webkit [27211] by ggaren
  • 2 edits in trunk/JavaScriptCore

Reviewed by Darin Adler.


Fixed http://bugs.webkit.org/show_bug.cgi?id=15746
#ifndef ASSERT_DISABLED is no good!


Replaced with #if !ASSERT_DISABLED.

  • wtf/HashTable.h: (WTF::::lookup): (WTF::::lookupForWriting): (WTF::::fullLookupForWriting): (WTF::::add):
10:32 PM Changeset in webkit [27210] by ggaren
  • 5 edits in trunk/JavaScriptCore

Reviewed by Darin Adler.


Added FunctionCallResolveNode, PostfixResolveNode, and DeleteResolveNode
to the AST transfom that replaces slow resolve nodes with fast local
variable alternatives.


2.5% speedup on SunSpider.


Also added some missing copyright notices.


  • kjs/nodes.cpp: (KJS::FunctionCallResolveNode::optimizeVariableAccess): (KJS::FunctionCallResolveNode::evaluate): (KJS::LocalVarFunctionCallNode::evaluate): (KJS::PostfixResolveNode::optimizeVariableAccess): (KJS::PostfixResolveNode::evaluate): (KJS::LocalVarPostfixNode::evaluate): (KJS::DeleteResolveNode::optimizeVariableAccess): (KJS::DeleteResolveNode::evaluate): (KJS::LocalVarDeleteNode::evaluate):
  • kjs/nodes.h: (KJS::FunctionCallResolveNode::): (KJS::LocalVarFunctionCallNode::LocalVarFunctionCallNode): (KJS::PostfixResolveNode::): (KJS::LocalVarPostfixNode::LocalVarPostfixNode): (KJS::DeleteResolveNode::): (KJS::LocalVarDeleteNode::LocalVarDeleteNode):
9:53 PM Changeset in webkit [27209] by eseidel
  • 3 edits in trunk/JavaScriptCore

2007-10-28 Eric Seidel <eric@webkit.org>

Reviewed by darin.


Inline UString::Rep::deref() for a 0.8% improvement in SunSpider
Add virtual keyword to a few virtual functions previously unmarked.

  • kjs/internal.h: (KJS::StringImp::type): (KJS::NumberImp::type):
  • kjs/ustring.h: (KJS::UString::Rep::deref):
9:37 PM Changeset in webkit [27208] by darin
  • 3 edits in trunk/JavaScriptCore
  • fix "broken everything" from the storage leak fix
  • wtf/RefPtr.h: (WTF::RefPtr::RefPtr): Added a PlacementNewAdopt constructor.
  • kjs/ustring.h: (KJS::UString::UString): Pass PlacementNewAdopt along to RefPtr.
9:31 PM Changeset in webkit [27207] by darin
  • 7 edits in trunk/JavaScriptCore

Reviewed by Adam.

  • turn on unused parameter waring on Mac OS X because it's already on elsewhere
  • Configurations/Base.xcconfig: Took out -wno-unused-parameter.
  • API/JSNode.c:
  • API/JSNodeList.c:
  • API/minidom.c:
  • API/testapi.c: Fixed unused variables by using them or marked them with UNUSED_PARAM.
  • kjs/CollectorHeapIntrospector.h: (KJS::CollectorHeapIntrospector::zoneCalloc): Removed parameter names to indicate they are unused.
9:11 PM Changeset in webkit [27206] by darin
  • 4 edits in trunk/JavaScriptCore

Reviewed by Maciej.

  • fix a storage leak where we ref the UString every time we replace a ResolveNode with a LocalVarAccessNode
  • kjs/identifier.h: (KJS::Identifier::Identifier): Added a constructor that takes PlacementNewAdopt.
  • kjs/nodes.h: (KJS::ResolveNode::ResolveNode): Initialize the ident with PlacementNewAdopt instead of the old value of ident.
  • kjs/ustring.h: (KJS::UString::UString): Added a constructor that takes PlacementNewAdopt.
9:04 PM Changeset in webkit [27205] by eseidel
  • 2 edits in trunk/LayoutTests

2007-10-28 Eric Seidel <eric@webkit.org>

Reviewed by aroben.

  • platform/mac/svg/custom/path-bad-data-expected.txt: updated to better results
9:02 PM Changeset in webkit [27204] by darin
  • 3 edits in trunk/JavaScriptCore
  • Windows build fix; get rid of unused parameter
  • kjs/nodes.cpp: (KJS::ResolveNode::optimizeVariableAccess): Don't pass it.
  • kjs/nodes.h: (KJS::LocalVarAccessNode::LocalVarAccessNode): Remove it. The assertions weren't all that helpful.
8:48 PM Changeset in webkit [27203] by eseidel
  • 5 edits in trunk/WebCore

2007-10-28 Eric Seidel <eric@webkit.org>

Reviewed by darin.

Fix leaks on TOT and prevent Path code from logging to console so frequently

  • platform/graphics/svg/SVGResourceFilter.h: (WebCore::SVGResourceFilterPlatformData::SVGResourceFilterPlatformData): (WebCore::SVGResourceFilterPlatformData::~SVGResourceFilterPlatformData):
  • platform/graphics/svg/cg/CgSupport.cpp: (WebCore::strokeBoundingBox):
  • platform/graphics/svg/cg/SVGResourceFilterCg.mm:
  • platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h:
8:00 PM Changeset in webkit [27202] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

2007-10-28 Mark Rowe <mrowe@apple.com>

Gtk build fix. Add include of MathExtras.h.

  • kjs/string_object.cpp:
7:52 PM Changeset in webkit [27201] by mrowe@apple.com
  • 14 edits in trunk

2007-10-28 Mark Rowe <mrowe@apple.com>

Reviewed by Maciej and Tim.

Replace uses of isNaN and isInf with isnan and isinf, and
remove isNaN and isInf.

  • kjs/config.h: Remove unused HAVE_'s
  • kjs/date_object.cpp: (KJS::DateInstance::getTime): (KJS::DateInstance::getUTCTime): (KJS::DateProtoFunc::callAsFunction): (KJS::DateObjectImp::construct): (KJS::DateObjectFuncImp::callAsFunction):
  • kjs/function.cpp: (KJS::GlobalFuncImp::callAsFunction):
  • kjs/math_object.cpp: (MathFuncImp::callAsFunction):
  • kjs/nodes2string.cpp: (KJS::isParserRoundTripNumber):
  • kjs/number_object.cpp: (NumberProtoFunc::callAsFunction):
  • kjs/operations.cpp:
  • kjs/operations.h:
  • kjs/string_object.cpp: (KJS::StringProtoFunc::callAsFunction):
  • kjs/ustring.cpp: (KJS::UString::from):
  • kjs/value.cpp: (KJS::JSValue::toInteger): (KJS::JSValue::toInt32SlowCase): (KJS::JSValue::toUInt32SlowCase):

2007-10-28 Mark Rowe <mrowe@apple.com>

Reviewed by Maciej.

Replace uses of isNaN and isInf with isnan and isinf.

  • bindings/js/JSHTMLOptionsCollectionCustom.cpp: (WebCore::JSHTMLOptionsCollection::setLength):
7:08 PM Changeset in webkit [27200] by ggaren
  • 3 edits in trunk/JavaScriptCore

Build fix: use the new-fangled missingSymbolMarker().

  • kjs/nodes.cpp: (KJS::ResolveNode::optimizeVariableAccess):
  • kjs/nodes.h: (KJS::LocalVarAccessNode::LocalVarAccessNode):
7:00 PM Changeset in webkit [27199] by ggaren
  • 5 edits in trunk/JavaScriptCore

Reviewed by Maciej Stachowiak, Darin Adler.


Much supporting work done by Maciej Stachowiak, Maks Orlovich, and
Cameron Zwarich.


AST transfom to replace slow resolve nodes with fast local variable
alternatives that do direct memory access. Currently, only ResolveNode
provides a fast local variable alternative. 6 others are soon to come.


16.7% speedup on SunSpider.


Most of this patch is just scaffolding to support iterating all the
resolve nodes in the AST through optimizeResolveNodes(). In
optimizeResolveNodes(), most classes just push their child nodes onto
the processing stack, while ResolveNodes actually replace themselves in
the tree with more optimized alternatives, if possible.

Here are the interesting bits:

  • kjs/nodes.h: Added PlacementNewAdoptTag, along with implementations in Node and ResolveNode. This tag allows you to use placement new to swap out a base class Node in favor of a subclass copy that holds the same data. (Without this tag, default initialization would NULL out RefPtrs, change line numbers, etc.)
  • kjs/nodes.cpp: (KJS::ResolveNode::evaluate): Since we're taking the slow path, ASSERT that the fast path is impossible, to make sure we didn't leave anything on the table.

(KJS::FunctionBodyNode::optimizeResolveNodes): Here's where the AST
transformation happens.


(KJS::ResolveNode::optimizeResolveNodes): Here's where the ResolveNode
optimization happens.

  • kjs/function.h: Added symbolTable() accessor for, for the sake of an ASSERT.
6:56 PM Changeset in webkit [27198] by mrowe@apple.com
  • 3 edits in trunk/JavaScriptCore

2007-10-28 Mark Rowe <mrowe@apple.com>

Reviewed by Maciej.

Fix "AllInOneFile.o has a global initializer in it".

Some versions of gcc generate a global initializer for std::numeric_limits<size_t>::max().
We can avoid this by moving it inside an inline function.

  • kjs/SymbolTable.h: (KJS::missingSymbolMarker):
  • kjs/function.cpp: (KJS::ActivationImp::getOwnPropertySlot): (KJS::ActivationImp::put):
6:50 PM Changeset in webkit [27197] by eseidel
  • 2 edits in trunk/WebKitTools

2007-10-28 Eric Seidel <eric@webkit.org>

Reviewed by Maciej and Geoff, in unison.

  • Scripts/run-webkit-tests: remove broken --svg option
6:29 PM Changeset in webkit [27196] by mjs
  • 4 edits
    1 add in trunk

JavaScriptCore:

Reviewed by Mark.


  • Added assertions to protect against adding empty or deleted keys to a HashTable
  • wtf/HashTable.h: (WTF::HashTable::lookup): (WTF::HashTable::lookupForWriting): (WTF::HashTable::fullLookupForWriting): (WTF::HashTable::add):

WebCore:

Reviewed by Mark.

  • bindings/js/kjs_window.cpp: (KJS::Window::installTimeout): Avoid putting in or accessing empty or deleted keys. (KJS::Window::clearTimeout): ditto
  • manual-tests/bad-clearTimeout-crash.html: Added. Automated test not possible.
5:14 PM Changeset in webkit [27195] by timothy@apple.com
  • 1 edit in trunk/WebCore/WebCore.xcodeproj/project.pbxproj

Remove IDLs from the Copy Bundle Resources phase.

4:08 PM Changeset in webkit [27194] by darin
  • 4 edits in trunk/SunSpider

Reviewed by Adam.

  • resources/sunspider-analyze-results.js: Tweak the output format a little. Change so that when there's only one run we don't write out confidence intervals at all rather than writing "NaN" over and over again.
  • sunspider: Use the time and date as a suffix on the results file, that way all the results are left behind in the tmp directory. This will make it easy for us to add features that compare past results in the future. Also rename the .mshark files using the same scheme.
  • sunspider-compare-results: Relax the parsing rules so we can parse the results file exactly as it's emitted from sunspider.
4:06 PM Changeset in webkit [27193] by darin
  • 2 edits in trunk/JavaScriptCore
  • fix GTK build
  • kjs/nodes2string.cpp: (KJS::isParserRoundTripNumber): Use isNaN and isInf instead of isnan and isinf.
4:00 PM Changeset in webkit [27192] by darin
  • 3 edits in trunk/WebKitTools

Reviewed by Adam.

  • Scripts/run-sunspider: Default to "Release" configuration rather than defaulting to the last configuration used as other scripts do. This can still be overriden on the command line with "--debug" if there's some reason to do so. Also fix a typo.
  • Scripts/sunspider-compare-results: Fix a typo.
3:50 PM Changeset in webkit [27191] by darin
  • 8 edits
    6 adds in trunk

JavaScriptCore:

Reviewed by Maciej.

This patch removes 4 node types: GroupNode, PropertyNameNode,
FunctionCallParenBracketNode, and FunctionCallParenDotNode.

To remove GroupNode, we add knowledge of precedence to the tree nodes,
and use that when serializing to determine where parentheses are needed.
This means we no longer have to represent parentheses in the tree.

The precedence values are named after productions in the grammar from the
JavaScript standard.

SunSpider says this is an 0.4% speedup.

  • kjs/function.h:
  • kjs/function.cpp: Removed escapeStringForPrettyPrinting -- it's part of serialization, so I moved it to the file that takes care of that.
  • kjs/grammar.y: Changed makeGetterOrSetterPropertyNode to use 0 to indicate failure instead of a separate boolean. Got rid of PropertyNameNode by merging the PropertyName rule into the Property rule (which was easier than figuring out how to pass the Identifier from one node to another). Got rid of GroupNode, nodeInsideAllParens(), FunctionCallParenBracketNode, and FunctionCallParenDotNode.
  • kjs/nodes.h: Removed unused forward declarations and Operator values. Added Precedence enum, and precedence function to all nodes. Removed nodeInsideAllParens. Added streamBinaryOperator function for serialization. Removed GroupNode and PropertyNameNode. Made PropertyNode store an Identifier. Removed FunctionCallParenBracketNode and FunctionCallParenDotNode.
  • kjs/nodes.cpp: Removed Node::nodinsideAllParens, GroupNode, and PropertyNameNode. (KJS::PropertyListNode::evaluate): Changed code to get name directly instead of converting it from an Identifier to a jsString then back to a UString then into an Identifier again!
  • kjs/nodes2string.cpp: Changed special-token implementation to use a separate function for each of Endl, Indent, Unindent, and DotExpr instead of using a single function with a switch. Added a precedence that you can stream in, to cause the next node serialized to add parentheses based on that precedence value. (KJS::operatorString): Moved to the top of the file. (KJS::escapeStringForPrettyPrinting): Moved here from function.cpp. Removed old workaround for snprintf, since StringExtras.h takes care of that. (KJS::operator<<): Made the char and char* versions faster by using UString's character append functions instead of constructing a UString. Added the logic to the Node* version to add parentheses if needed. (KJS::Node::streamLeftAssociativeBinaryOperator): Added helper function. (KJS::ElementNode::streamTo): Use PrecAssignment for the elements. (KJS::BracketAccessorNode::streamTo): Use PrecCall for the expression before the bracket. (KJS::DotAccessorNode::streamTo): Use PrecCall for the expression before the dot. (KJS::ArgumentListNode::streamTo): Use PrecAssignment for the arguments. (KJS::NewExprNode::streamTo): Use PrecMember for the expression. (KJS::FunctionCallValueNode::streamTo): Use PrecCall. (KJS::FunctionCallBracketNode::streamTo): Ditto. (KJS::FunctionCallDotNode::streamTo): Ditto. (KJS::PostfixBracketNode::streamTo): Ditto. (KJS::PostfixDotNode::streamTo): Ditto. (KJS::PostfixErrorNode::streamTo): Use PrecLeftHandSide. (KJS::DeleteBracketNode::streamTo): Use PrecCall. (KJS::DeleteDotNode::streamTo): Ditto. (KJS::DeleteValueNode::streamTo): Use PrecUnary. (KJS::VoidNode::streamTo): Ditto. (KJS::TypeOfValueNode::streamTo): Ditto. (KJS::PrefixBracketNode::streamTo): Use PrecCall. (KJS::PrefixDotNode::streamTo): Ditto. (KJS::PrefixErrorNode::streamTo): Use PrecUnary. (KJS::UnaryPlusNode::streamTo): Ditto. (KJS::NegateNode::streamTo): Ditto. (KJS::BitwiseNotNode::streamTo): Ditto. (KJS::LogicalNotNode::streamTo): Ditto. (KJS::MultNode::streamTo): Use streamLeftAssociativeBinaryOperator. (KJS::DivNode::streamTo): Ditto. (KJS::ModNode::streamTo): Ditto. (KJS::AddNode::streamTo): Ditto. (KJS::SubNode::streamTo): Ditto. (KJS::LeftShiftNode::streamTo): Ditto. (KJS::RightShiftNode::streamTo): Ditto. (KJS::UnsignedRightShiftNode::streamTo): Ditto. (KJS::LessNode::streamTo): Ditto. (KJS::GreaterNode::streamTo): Ditto. (KJS::LessEqNode::streamTo): Ditto. (KJS::GreaterEqNode::streamTo): Ditto. (KJS::InstanceOfNode::streamTo): Ditto. (KJS::InNode::streamTo): Ditto. (KJS::EqualNode::streamTo): Ditto. (KJS::NotEqualNode::streamTo): Ditto. (KJS::StrictEqualNode::streamTo): Ditto. (KJS::NotStrictEqualNode::streamTo): Ditto. (KJS::BitAndNode::streamTo): Ditto. (KJS::BitXOrNode::streamTo): Ditto. (KJS::BitOrNode::streamTo): Ditto. (KJS::LogicalAndNode::streamTo): Ditto. (KJS::LogicalOrNode::streamTo): Ditto. (KJS::ConditionalNode::streamTo): Ditto. (KJS::AssignResolveNode::streamTo): Use PrecAssignment for the right side. (KJS::AssignBracketNode::streamTo): Use PrecCall for the expression before the bracket and PrecAssignment for the right side. (KJS::AssignDotNode::streamTo): Ditto. (KJS::AssignErrorNode::streamTo): Use PrecLeftHandSide for the left side and PrecAssignment for the right side. (KJS::CommaNode::streamTo): Use PrecAssignment for both expressions. (KJS::AssignExprNode::streamTo): Use PrecAssignment.

LayoutTests:

Reviewed by Maciej.

One test is a start at testing that parentheses are added when needed.
The other test checks some aspects of object literals, since I changed
the way the property names is handled in those. More tests are needed.

  • fast/js/function-toString-object-literals-expected.txt: Added.
  • fast/js/function-toString-object-literals.html: Added.
  • fast/js/function-toString-parentheses-expected.txt: Added.
  • fast/js/function-toString-parentheses.html: Added.
  • fast/js/resources/function-toString-object-literals.js: Added.
  • fast/js/resources/function-toString-parentheses.js: Added.
2:27 PM Changeset in webkit [27190] by kevino
  • 12 edits in trunk/WebCore

wx port defines for graphics and network layers.

2:09 PM Changeset in webkit [27189] by alp
  • 4 edits in trunk/WebCore

Reviewed by Anders Carlsson.

http://bugs.webkit.org/show_bug.cgi?id=14124
[CURL] Support data URLs

Add data URL support (both Base64 and percent-encoded formats).

Inspired by code from the Qt port.

1:23 PM Changeset in webkit [27188] by alp
  • 2 edits in trunk/WebCore

http://bugs.webkit.org/show_bug.cgi?id=15701
The curl http backend does not deal properly with redirects

Implement http redirect support.

12:18 PM Changeset in webkit [27187] by kevino
  • 25 edits in trunk

Add the defines, platform types and options needed for the wx port.

11:20 AM Changeset in webkit [27186] by mrowe@apple.com
  • 10 edits in trunk

2007-10-28 Mark Rowe <mrowe@apple.com>

We don't include "config.h" in headers.

  • bindings/jni/jni_instance.h:
  • kjs/regexp.h:
  • wtf/TCPageMap.h:
  • wtf/TCSpinLock.h:

2007-10-28 Mark Rowe <mrowe@apple.com>

We don't include "config.h" in headers.

  • dom/XMLTokenizer.h:
  • platform/graphics/svg/SVGResourceFilter.h:
  • platform/image-decoders/ImageDecoder.h:
  • platform/wx/FontPlatformData.h:
10:53 AM UsingSafari2WithSafari3PublicBetaInstalled edited by djvasi@gmail.com
Self-contained Safari 3 (diff)
10:41 AM Changeset in webkit [27185] by darin
  • 1 edit in trunk/WebCore/ChangeLog

Removed some "Reviewed by NOBODY".

10:37 AM Changeset in webkit [27184] by darin
  • 1 edit in trunk/WebKitTools/ChangeLog

Removed some "Reviewed by NOBODY".

10:36 AM Changeset in webkit [27183] by darin
  • 1 edit in trunk/WebKitLibraries/ChangeLog

Removed some "Reviewed by NOBODY".

10:31 AM Changeset in webkit [27182] by darin
  • 2 edits in trunk/WebCore
  • platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h: We don't include "config.h" in headers. Hope this desn't break the non-SVG build again.
10:22 AM Changeset in webkit [27181] by darin
  • 2 edits in trunk/WebKit/win
  • try to fix Windows build
  • WebKit.vcproj/WebKit.vcproj: Suppress warning 4800 (conversion to bool), since we don't want to add !! everywhere, and because HashTable.h has a conversion to bool of this type now.
4:47 AM Changeset in webkit [27180] by eseidel
  • 3 edits in trunk/WebCore

2007-10-28 Eric Seidel <eric@webkit.org>

Build fix for non-SVG build, no review.

  • platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h:
  • platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.mm:
3:34 AM Changeset in webkit [27179] by eseidel
  • 58 edits
    3 adds in trunk/WebCore

2007-10-28 Eric Seidel <eric@webkit.org>

Reviewed by Oliver.

Push SVGResourceFilter platform specific data down into m_platformData
in preparation for implementing a non-mac filter solution.


Also update a very old email address in copyright headers

  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/FloatPoint3D.cpp: (WebCore::FloatPoint3D::FloatPoint3D):
  • platform/graphics/FloatPoint3D.h:
  • platform/graphics/svg/SVGResourceFilter.cpp: (WebCore::SVGResourceFilter::SVGResourceFilter):
  • platform/graphics/svg/SVGResourceFilter.h: (WebCore::SVGResourceFilter::platformData): (WebCore::SVGResourceFilter::effects):
  • platform/graphics/svg/cg/SVGResourceFilterCg.mm: (WebCore::SVGResourceFilter::createPlatformData):l (WebCore::SVGResourceFilter::prepareFilter): (WebCore::SVGResourceFilter::applyFilter):
  • platform/graphics/svg/filters/SVGDistantLightSource.h:
  • platform/graphics/svg/filters/SVGFEBlend.cpp:
  • platform/graphics/svg/filters/SVGFEBlend.h:
  • platform/graphics/svg/filters/SVGFEColorMatrix.cpp:
  • platform/graphics/svg/filters/SVGFEColorMatrix.h:
  • platform/graphics/svg/filters/SVGFEComponentTransfer.cpp:
  • platform/graphics/svg/filters/SVGFEComponentTransfer.h:
  • platform/graphics/svg/filters/SVGFEComposite.cpp:
  • platform/graphics/svg/filters/SVGFEComposite.h:
  • platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp:
  • platform/graphics/svg/filters/SVGFEConvolveMatrix.h:
  • platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp:
  • platform/graphics/svg/filters/SVGFEDiffuseLighting.h:
  • platform/graphics/svg/filters/SVGFEDisplacementMap.cpp:
  • platform/graphics/svg/filters/SVGFEDisplacementMap.h:
  • platform/graphics/svg/filters/SVGFEFlood.cpp:
  • platform/graphics/svg/filters/SVGFEFlood.h:
  • platform/graphics/svg/filters/SVGFEGaussianBlur.cpp:
  • platform/graphics/svg/filters/SVGFEGaussianBlur.h:
  • platform/graphics/svg/filters/SVGFEImage.cpp:
  • platform/graphics/svg/filters/SVGFEImage.h:
  • platform/graphics/svg/filters/SVGFEMerge.cpp:
  • platform/graphics/svg/filters/SVGFEMerge.h:
  • platform/graphics/svg/filters/SVGFEMorphology.cpp:
  • platform/graphics/svg/filters/SVGFEMorphology.h:
  • platform/graphics/svg/filters/SVGFEOffset.cpp:
  • platform/graphics/svg/filters/SVGFEOffset.h:
  • platform/graphics/svg/filters/SVGFESpecularLighting.cpp:
  • platform/graphics/svg/filters/SVGFESpecularLighting.h:
  • platform/graphics/svg/filters/SVGFETile.h:
  • platform/graphics/svg/filters/SVGFETurbulence.cpp:
  • platform/graphics/svg/filters/SVGFETurbulence.h:
  • platform/graphics/svg/filters/SVGFilterEffect.cpp:
  • platform/graphics/svg/filters/SVGFilterEffect.h:
  • platform/graphics/svg/filters/SVGLightSource.cpp:
  • platform/graphics/svg/filters/SVGLightSource.h:
  • platform/graphics/svg/filters/SVGPointLightSource.h:
  • platform/graphics/svg/filters/SVGSpotLightSource.h:
  • platform/graphics/svg/filters/cg/SVGFEBlendCg.mm: (WebCore::SVGFEBlend::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm: (WebCore::SVGFEColorMatrix::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFEComponentTransferCg.mm: (WebCore::SVGFEComponentTransfer::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFECompositeCg.mm: (WebCore::SVGFEComposite::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFEDiffuseLightingCg.mm: (WebCore::SVGFEDiffuseLighting::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFEDisplacementMapCg.mm: (WebCore::SVGFEDisplacementMap::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFEFloodCg.mm: (WebCore::SVGFEFlood::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFEHelpersCg.h:
  • platform/graphics/svg/filters/cg/SVGFEImageCg.mm: (WebCore::SVGFEImage::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFEMergeCg.mm: (WebCore::SVGFEMerge::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFESpecularLightingCg.mm: (WebCore::SVGFESpecularLighting::getCIFilter):
  • platform/graphics/svg/mac: Added.
  • platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h: Added.
  • platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.mm: Added. (WebCore::SVGResourceFilterPlatformDataMac::SVGResourceFilterPlatformDataMac): (WebCore::SVGResourceFilterPlatformDataMac::~SVGResourceFilterPlatformDataMac): (WebCore::SVGResourceFilterPlatformDataMac::getCIFilterStack): (WebCore::alphaImageForImage): (WebCore::SVGResourceFilterPlatformDataMac::imageForName): (WebCore::SVGResourceFilterPlatformDataMac::setImageForName): (WebCore::SVGResourceFilterPlatformDataMac::setOutputImage): (WebCore::SVGResourceFilterPlatformDataMac::inputImage):
3:19 AM Changeset in webkit [27178] by mjs
  • 3 edits in trunk/JavaScriptCore

Rubber stamped by Mark.


  • avoid using non-portable SIZE_T_MAX in favor of std::numeric_limits
  • kjs/SymbolTable.h: (KJS::SymbolTableIndexHashTraits::emptyValue):
  • kjs/function.cpp: (KJS::ActivationImp::getOwnPropertySlot): (KJS::ActivationImp::put):
2:20 AM Changeset in webkit [27177] by mjs
  • 4 edits in trunk/JavaScriptCore

Reviewed by Eric.


  • switch SymbolTable to be a HashMap instead of a PropertyMap for 3% SunSpider speedup
  • kjs/SymbolTable.h: (KJS::IdentifierRepHash::hash): Special hash function for identifier reps. (KJS::IdentifierRepHash::equal): ditto (KJS::SymbolTableIndexHashTraits::emptyValue): Special HashTraits for the index value. (KJS::SymbolTable): change to a typedef for a HashMap.
  • kjs/function.cpp: (KJS::ActivationImp::getOwnPropertySlot): Adjusted for new SymbolTable API. (KJS::ActivationImp::deleteProperty): ditto (KJS::ActivationImp::put): ditto
  • kjs/nodes.cpp: (KJS::FunctionBodyNode::initializesymbolTable): Adjusted, since you now have to store a UString::rep, not an identifier.
1:17 AM Changeset in webkit [27176] by mjs
  • 8 edits in trunk/JavaScriptCore

Reviewed by Oliver.


  • numerous HashTable performance improvements


This does not quite add up to a measurable win on SunSpider, but it allows a
follow-on > 3% improvement and probably helps WebCore too.


I made the following improvements, among others:


  • Made HashFunctions note whether it is ok to compare a real value with the equal() function to the empty or deleted value, and used this to optimize the comparisons done in hash lookup.


  • Specialized lookup so it doesn't have to do so many extra branches and build so many extra std::pairs for cases that don't need them. There are now four versions, one for read-only access, two for writing, and one folded directly into add() (these all were improvments).


  • Made HashMap::get() use lookup() directly instead of find() to avoid having to build iterators.


  • Made a special constructor for iterators that knows it points to a valid filled cell and so skips updating itself.
  • Reordered memory accesses in the various lookup functions for better codegetion


  • Made simple translators avoid passing a hash code around


  • Other minor tweaks


  • wtf/HashTable.h: (WTF::): (WTF::HashTableConstIterator::HashTableConstIterator): (WTF::HashTableIterator::HashTableIterator): (WTF::IdentityHashTranslator::translate): (WTF::HashTable::end): (WTF::HashTable::lookup): (WTF::HashTable::lookupForWriting): (WTF::HashTable::makeKnownGoodIterator): (WTF::HashTable::makeKnownGoodConstIterator): (WTF::::lookup): (WTF::::lookupForWriting): (WTF::::fullLookupForWriting): (WTF::::add): (WTF::::addPassingHashCode): (WTF::::reinsert): (WTF::::find): (WTF::::contains):
  • kjs/identifier.cpp: (WTF::):
  • wtf/HashFunctions.h: (WTF::):
  • wtf/HashMap.h: (WTF::): (WTF::::get):
  • wtf/HashSet.h: (WTF::): (WTF::::add):
  • wtf/ListHashSet.h: (WTF::ListHashSetTranslator::translate):
1:02 AM Changeset in webkit [27175] by ap
  • 2 edits in trunk/WebCore

Reviewed by Adam Roben.

http://bugs.webkit.org/show_bug.cgi?id=15217
Plugin complains that xpcom_core.dll missing

  • plugins/win/PluginDatabaseWin.cpp: (WebCore::PluginDatabaseWin::isPluginBlacklisted): Blacklist npmozax.dll.
12:32 AM Changeset in webkit [27174] by timothy@apple.com
  • 3 edits in trunk/WebCore

Reviewed by Adam.

Pass the Document's domain to InspectorController:didOpenDatabase. This matches
what the Inspector shows for other resources.

  • storage/Database.cpp: (WebCore::Database::openDatabase):
  • dom/Document.h: Remove KURL.h, no longer needed.
12:08 AM Changeset in webkit [27173] by timothy@apple.com
  • 14 edits in trunk/WebCore

Reviewed by Adam.

Bug 15728: Selected Resource background image gradient has banding
http://bugs.webkit.org/show_bug.cgi?id=15728

  • Reduced images to 1px wide that are tiled horizontally in CSS.
  • Corrected the -webkit-background-size usage to specify auto for the width.
  • page/inspector/Images/attachedShadow.png:
  • page/inspector/Images/bottomShadow.png:
  • page/inspector/Images/darkShadow.png:
  • page/inspector/Images/gradient.png:
  • page/inspector/Images/gradientHighlight.png:
  • page/inspector/Images/gradientHighlightBottom.png:
  • page/inspector/Images/sidebarSelection.png:
  • page/inspector/Images/sidebarSelectionBlurred.png:
  • page/inspector/Images/sidebarSelectionBlurredTall.png:
  • page/inspector/Images/sidebarSelectionGray.png:
  • page/inspector/Images/sidebarSelectionGrayTall.png:
  • page/inspector/Images/sidebarSelectionTall.png:
  • page/inspector/inspector.css:
12:04 AM Changeset in webkit [27172] by aroben
  • 2 edits in trunk/LayoutTests

Re-enable a bunch of passing tests on Windows

Reviewed by NOBODY.

  • platform/win/Skipped:
Note: See TracTimeline for information about the timeline view.