Timeline



Jun 28, 2008:

10:56 PM Changeset in webkit [34869] by Darin Adler
  • 2 edits in trunk/WebKit/mac

2008-06-28 Darin Adler <Darin Adler>

  • fix build
  • WebView/WebView.mm: (aeDescFromJSValue): Use get instead of getItem, which no longer exists.
10:38 PM Changeset in webkit [34868] by Darin Adler
  • 8 edits
    3 adds in trunk

JavaScriptCore:

2008-06-28 Darin Adler <Darin Adler>

Reviewed by Sam and Cameron.

Test: fast/js/array-holes.html

  • kjs/ArrayPrototype.cpp: (KJS::arrayProtoFuncConcat): Changed to use getProperty instead of JSArray::getItem -- need to handle properties from the prototype chain instead of ignoring them.
  • kjs/JSArray.cpp: Removed getItem.
  • kjs/JSArray.h: Ditto.

WebCore:

2008-06-28 Darin Adler <Darin Adler>

Reviewed by Sam and Cameron.

  • bridge/jni/jni_utility.cpp: (KJS::Bindings::convertArrayInstanceToJavaArray): Use get instead of getItem, since we always want to consider values from the prototypes when looking at JavaScript arrays.

LayoutTests:

2008-06-28 Darin Adler <Darin Adler>

Reviewed by Sam and Cameron.

  • fast/js/array-holes-expected.txt: Added.
  • fast/js/array-holes.html: Added.
  • fast/js/resources/array-holes.js: Added.
8:56 PM Changeset in webkit [34867] by Darin Adler
  • 3 edits in trunk/JavaScriptCore

2008-06-28 Darin Adler <Darin Adler>

Reviewed by Cameron.

SunSpider says 1.8% faster.

  • kjs/JSArray.cpp: (KJS::JSArray::JSArray): Initialize m_fastAccessCutoff when creating arrays. Also updated for new location of m_vectorLength. (KJS::JSArray::getItem): Updated for new location of m_vectorLength. (KJS::JSArray::getSlowCase): Added. Broke out the non-hot parts of getOwnPropertySlot to make the hot part faster. (KJS::JSArray::getOwnPropertySlot): Added a new faster case for indices lower than m_fastAccessCutoff. We can do theese with no additional checks or branches. (KJS::JSArray::put): Added a new faster case for indices lower than m_fastAccessCutoff. We can do theese with no additional checks or branches. Moved the maxArrayIndex handling out of this function. Added code to set m_fastAccessCutoff when the very last hole in an array is filled; this is how the cutoff gets set for most arrays. (KJS::JSArray::putSlowCase): Moved the rest of the put function logic in here, to make the hot part of the put function faster. (KJS::JSArray::deleteProperty): Added code to lower m_fastAccessCutoff when a delete makes a new hole in the array. (KJS::JSArray::getPropertyNames): Updated for new location of m_vectorLength. (KJS::JSArray::increaseVectorLength): Ditto. (KJS::JSArray::setLength): Added code to lower m_fastAccessCutoff when setLength makes the array smaller. (KJS::JSArray::mark): Updated for new location of m_vectorLength. (KJS::JSArray::sort): Ditto. Set m_fastAccessCutoff after moving all the holes to the end of the array. (KJS::JSArray::compactForSorting): Ditto. (KJS::JSArray::checkConsistency): Added consistency checks fro m_fastAccessCutoff and updated for the new location of m_vectorLength.
  • kjs/JSArray.h: Added declarations for slow case functions. Replaced m_vectorLength with m_fastAccessCutoff.
7:33 PM Changeset in webkit [34866] by cwzwarich@webkit.org
  • 5 edits in trunk

2008-06-28 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Sam.

When executing a native call, check for an exception before writing the
return value.

JavaScriptCore:

  • VM/Machine.cpp: (KJS::Machine::privateExecute):

LayoutTests:

  • fast/js/exception-sequencing-expected.txt:
  • fast/js/exception-sequencing.html:
7:21 PM Changeset in webkit [34865] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-06-28 Mark Rowe <mrowe@apple.com>

Build fix. Flag headers as private or public as is appropriate.
These settings were accidentally removed during some project file cleanup.

5:44 PM Changeset in webkit [34864] by mitz@apple.com
  • 3 edits in trunk/WebCore

Reviewed by Darin Adler.

  • allow document markers to touch or overlap if they are not of the same type

Cannot be tested in DumpRenderTree

  • dom/Document.cpp: (WebCore::Document::addMarker):
  • rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::paintDocumentMarkers):
5:09 PM Changeset in webkit [34863] by weinig@apple.com
  • 14 edits
    4 copies in trunk/JavaScriptCore

2008-06-28 Sam Weinig <sam@webkit.org>

Rubber-stamped by Darin Adler.

Splits RegExpConstructor and RegExpPrototype out of RegExpObject.h/cpp

  • DerivedSources.make:
  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • VM/Machine.cpp:
  • kjs/AllInOneFile.cpp:
  • kjs/JSGlobalObject.cpp:
  • kjs/RegExpConstructor.cpp: Copied from kjs/RegExpObject.cpp.
  • kjs/RegExpConstructor.h: Copied from kjs/RegExpObject.h.
  • kjs/RegExpObject.cpp:
  • kjs/RegExpObject.h:
  • kjs/RegExpPrototype.cpp: Copied from kjs/RegExpObject.cpp.
  • kjs/RegExpPrototype.h: Copied from kjs/RegExpObject.h.
  • kjs/StringPrototype.cpp:
  • kjs/internal.cpp:
4:44 PM Changeset in webkit [34862] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-06-28 Sam Weinig <sam@webkit.org>

Fix non-AllInOne builds.

  • kjs/StringConstructor.cpp:
4:30 PM Changeset in webkit [34861] by weinig@apple.com
  • 12 edits
    5 copies
    3 moves
    2 adds in trunk

JavaScriptCore:

2008-06-28 Sam Weinig <sam@webkit.org>

Rubber-stamped by Darin Adler.

Rename string_object.h/cpp to StringObject.h/cpp and split out StringObjectThatMasqueradesAsUndefined,
StringConstructor and StringPrototype.

  • DerivedSources.make:
  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • kjs/AllInOneFile.cpp:
  • kjs/JSGlobalObject.cpp:
  • kjs/StringConstructor.cpp: Copied from JavaScriptCore/kjs/string_object.cpp.
  • kjs/StringConstructor.h: Copied from JavaScriptCore/kjs/string_object.h.
  • kjs/StringObject.cpp: Copied from JavaScriptCore/kjs/string_object.cpp.
  • kjs/StringObject.h: Copied from JavaScriptCore/kjs/string_object.h.
  • kjs/StringObjectThatMasqueradesAsUndefined.h: Copied from JavaScriptCore/kjs/string_object.h.
  • kjs/StringPrototype.cpp: Copied from JavaScriptCore/kjs/string_object.cpp.
  • kjs/StringPrototype.h: Copied from JavaScriptCore/kjs/string_object.h.
  • kjs/internal.cpp:
  • kjs/string_object.cpp: Removed.
  • kjs/string_object.h: Removed.

WebCore:

2008-06-28 Sam Weinig <sam@webkit.org>

Rubber-stamped by Darin Adler.

Update includes after remaming string_object.h to StringObject.h and
splitting out StringObjectThatMasqueradesAsUndefined, StringConstructor
and StringPrototype.

  • ForwardingHeaders/kjs/StringObject.h: Copied from WebCore/ForwardingHeaders/kjs/string_object.h.
  • ForwardingHeaders/kjs/StringObjectThatMasqueradesAsUndefined.h: Added.
  • ForwardingHeaders/kjs/StringPrototype.h: Added.
  • ForwardingHeaders/kjs/string_object.h: Removed.
  • bindings/js/JSCSSStyleDeclarationCustom.cpp:
3:57 PM Changeset in webkit [34860] by jmalonzo@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-06-28 Jan Michael Alonzo <jmalonzo@webkit.org>

Gtk build fix: JSVariableObject is now part of AllInOne

  • GNUmakefile.am:
3:22 PM Changeset in webkit [34859] by jchaffraix@webkit.org
  • 17 edits in branches/XBL2/WebCore

2008-06-27 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric.

Change XBL legacy code's guard to ENABLE(DEPRECATED_XBL)
to enable compilation.

  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::~Document):
  • dom/Document.h:
  • loader/Cache.cpp: (WebCore::createResource): (WebCore::Cache::getStatistics):
  • loader/Cache.h:
  • loader/CachedResource.h: (WebCore::CachedResource::):
  • loader/CachedResourceClient.h:
  • loader/CachedXBLDocument.cpp:
  • loader/CachedXBLDocument.h:
  • loader/DocLoader.cpp: (WebCore::DocLoader::requestResource):
  • loader/DocLoader.h:
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::addLowBandwidthDisplayRequest):
  • loader/loader.cpp: (WebCore::Loader::determinePriority):
  • rendering/style/RenderStyle.cpp: (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::~StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::operator==):
  • rendering/style/RenderStyle.h:
3:21 PM Changeset in webkit [34858] by Darin Adler
  • 8 edits in trunk/JavaScriptCore

2008-06-28 Darin Adler <Darin Adler>

Reviewed by Oliver.

  • pcre/pcre_compile.cpp: (jsRegExpCompile): Compile in the string if REGEXP_HISTOGRAM is on.
  • pcre/pcre_exec.cpp: (jsRegExpExecute): Add hook to time execution. (Histogram::~Histogram): Print a sorted list of what took time. (Histogram::add): Accumulate records of what took time. (HistogramTimeLogger::~HistogramTimeLogger): Hook that calls Histogram::add at the right moment and creates the global histogram object.
  • pcre/pcre_internal.h: Define REGEXP_HISTOGRAM.
  • pcre/pcre_tables.cpp: Added missing include of "config.h". Not needed any more, but an omissions an earlier version of this patch detected.
  • pcre/pcre_ucp_searchfuncs.cpp: Ditto.
  • pcre/pcre_xclass.cpp: Ditto.
2:54 PM Changeset in webkit [34857] by weinig@apple.com
  • 4 edits in trunk/JavaScriptCore

2008-06-28 Sam Weinig <sam@webkit.org>

Try and fix the Windows build again.

  • kjs/RegExpObject.cpp:
  • kjs/date_object.cpp:
  • kjs/error_object.cpp:
2:45 PM Changeset in webkit [34856] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-06-28 Sam Weinig <sam@webkit.org>

Rubber-stamped by Darin Adler.

Remove unused StringConstructorFunction class.

  • kjs/string_object.h:
2:40 PM Changeset in webkit [34855] by weinig@apple.com
  • 14 edits in trunk/JavaScriptCore

2008-06-28 Sam Weinig <sam@webkit.org>

Fix windows build.

  • kjs/ArrayPrototype.cpp:
  • kjs/BooleanPrototype.cpp:
  • kjs/BooleanPrototype.h:
  • kjs/FunctionPrototype.cpp:
  • kjs/JSImmediate.cpp:
  • kjs/JSObject.cpp:
  • kjs/MathObject.cpp:
  • kjs/NumberPrototype.cpp:
  • kjs/NumberPrototype.h:
  • kjs/ObjectConstructor.cpp:
  • kjs/RegExpObject.h:
  • kjs/error_object.h:
  • kjs/string_object.cpp:
2:22 PM Changeset in webkit [34854] by weinig@apple.com
  • 32 edits
    8 copies
    3 moves
    1 add in trunk

JavaScriptCore:

2008-06-28 Sam Weinig <sam@webkit.org>

Rubber-stamped by Oliver Hunt.

Splits FunctionConstructor out of FunctionPrototype.h/cpp
Splits NumberConstructor and NumberPrototype out of NumberObject.h/cpp
Rename object_object.h/cpp to ObjectPrototype.h/cpp and split out ObjectConstructor.

  • API/JSCallbackConstructor.cpp:
  • API/JSClassRef.cpp:
  • API/JSObjectRef.cpp:
  • DerivedSources.make:
  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • VM/Machine.cpp:
  • kjs/AllInOneFile.cpp:
  • kjs/ArrayConstructor.cpp:
  • kjs/ArrayConstructor.h:
  • kjs/FunctionConstructor.cpp: Copied from JavaScriptCore/kjs/FunctionPrototype.cpp.
  • kjs/FunctionConstructor.h: Copied from JavaScriptCore/kjs/FunctionPrototype.h.
  • kjs/FunctionPrototype.cpp:
  • kjs/FunctionPrototype.h:
  • kjs/JSFunction.cpp:
  • kjs/JSGlobalObject.cpp:
  • kjs/JSImmediate.cpp:
  • kjs/MathObject.h:
  • kjs/NumberConstructor.cpp: Copied from JavaScriptCore/kjs/NumberObject.cpp.
  • kjs/NumberConstructor.h: Copied from JavaScriptCore/kjs/NumberObject.h.
  • kjs/NumberObject.cpp:
  • kjs/NumberObject.h:
  • kjs/NumberPrototype.cpp: Copied from JavaScriptCore/kjs/NumberObject.cpp.
  • kjs/NumberPrototype.h: Copied from JavaScriptCore/kjs/NumberObject.h.
  • kjs/ObjectConstructor.cpp: Copied from JavaScriptCore/kjs/object_object.cpp.
  • kjs/ObjectConstructor.h: Copied from JavaScriptCore/kjs/object_object.h.
  • kjs/ObjectPrototype.cpp: Copied from JavaScriptCore/kjs/object_object.cpp.
  • kjs/ObjectPrototype.h: Copied from JavaScriptCore/kjs/object_object.h.
  • kjs/RegExpObject.h:
  • kjs/Shell.cpp:
  • kjs/error_object.h:
  • kjs/internal.cpp:
  • kjs/nodes.cpp:
  • kjs/object_object.cpp: Removed.
  • kjs/object_object.h: Removed.
  • kjs/string_object.h:

WebCore:

2008-06-28 Sam Weinig <sam@webkit.org>

Rubber-stamped by Oliver Hunt.

Update includes after remaming object_object.h to ObjectPrototype.h and
splitting FunctionConstructor out of FunctionPrototype.h

  • ForwardingHeaders/kjs/FunctionConstructor.h: Added.
  • ForwardingHeaders/kjs/ObjectPrototype.h: Copied from WebCore/ForwardingHeaders/kjs/object_object.h.
  • ForwardingHeaders/kjs/object_object.h: Removed.
  • bindings/js/JSEventListener.cpp:
  • bindings/scripts/CodeGeneratorJS.pm:
  • bridge/qt/qt_instance.cpp:
2:11 PM Applications using WebKit edited by bug@insecti.com
new browser this year! (diff)
1:24 PM SquirrelFishPerfIdeas edited by erich@atlasocean.com
(diff)
10:49 AM Changeset in webkit [34853] by mitz@apple.com
  • 5 edits in trunk

WebCore:

Reviewed by Darin Adler.

  • fix <rdar://problem/5994621> REGRESSION (r31090-r31114): Weather widget shows missing image icons briefly when (re)loaded
  • html/HTMLImageLoader.cpp: (WebCore::HTMLImageLoader::updateFromElement): Changed to not load an image if the 'src' attribute is the empty string and the document's base URI is a file: URL.

LayoutTests:

Reviewed by Darin Adler.

  • updated test and results for <rdar://problem/5994621> REGRESSION (r31090-r31114): Weather widget shows missing image icons briefly when (re)loaded
  • fast/images/load-img-with-empty-src-expected.txt:
  • fast/images/load-img-with-empty-src.html:
9:03 AM Changeset in webkit [34852] by Darin Adler
  • 4 edits in trunk/JavaScriptCore

2008-06-28 Darin Adler <Darin Adler>

Reviewed by Oliver.

SunSpider says 0.9% faster.

  • VM/CodeGenerator.h: (KJS::CodeGenerator::tempDestination): Create a new temporary for ignoredResult() too, just as we would for 0. (KJS::CodeGenerator::finalDestination): Use the temporary if the register passed in is ignoredResult() too, just as we would for 0. (KJS::CodeGenerator::destinationForAssignResult): Return 0 if the passed in register is ignoredResult(), just as we would for 0. (KJS::CodeGenerator::moveToDestinationIfNeeded): Return 0 if the register passed in is ignoredResult(). What matters is that we don't want to emit a move. The return value won't be looked at. (KJS::CodeGenerator::emitNode): Allow ignoredResult() and pass it through to the node's emitCode function.
  • VM/RegisterID.h: (KJS::ignoredResult): Added. Special value to indicate the result of a node will be ignored and need not be put in any register.
  • kjs/nodes.cpp: (KJS::NullNode::emitCode): Do nothing if dst == ignoredResult(). (KJS::BooleanNode::emitCode): Ditto. (KJS::NumberNode::emitCode): Ditto. (KJS::StringNode::emitCode): Ditto. (KJS::RegExpNode::emitCode): Ditto. (KJS::ThisNode::emitCode): Ditto. (KJS::ResolveNode::emitCode): Do nothing if dst == ignoredResult() and the identifier resolves to a local variable. (KJS::ObjectLiteralNode::emitCode): Do nothing if dst == ignoredResult() and the object is empty. (KJS::PostIncResolveNode::emitCode): If dst == ignoredResult(), then do nothing for the local constant case, and do a pre-increment in all the other cases. (KJS::PostDecResolveNode::emitCode): Ditto. (KJS::PostIncBracketNode::emitCode): Ditto. (KJS::PostDecBracketNode::emitCode): Ditto. (KJS::PostIncDotNode::emitCode): Ditto. (KJS::PostDecDotNode::emitCode): Ditto. (KJS::DeleteValueNode::emitCode): Pass ignoredResult() when evaluating the expression. (KJS::VoidNode::emitCode): Ditto. (KJS::TypeOfResolveNode::emitCode): If dst == ignoredResult(), do nothing if the identifier resolves to a local variable, and don't bother generating a typeof opcode in the other case. (KJS::TypeOfValueNode::emitCode): Ditto. (KJS::PreIncResolveNode::emitCode): Do nothing if dst == ignoredResult() and the identifier resolves to a local constant. (KJS::PreDecResolveNode::emitCode): Ditto. (KJS::AssignResolveNode::emitCode): Turn ignoredResult() into 0 in a couple places, because we need to put the result into a register so we can assign it. At other sites this is taken care of by functions like finalDestination. (KJS::CommaNode::emitCode): Pass ignoredResult() when evaluating the first expression. (KJS::ForNode::emitCode): Pass ignoredResult() when evaluating the first and third expressions. (KJS::ForInNode::emitCode): Pass ignoredResult() when evaluating the first expression.
8:50 AM Changeset in webkit [34851] by Darin Adler
  • 7 edits in trunk/JavaScriptCore

2008-06-28 Darin Adler <Darin Adler>

Reviewed by Oliver.

SunSpider says 0.8% faster.

  • VM/CodeBlock.cpp: (KJS::CodeBlock::dump): Added argv and argc parameters to new_array.
  • VM/Machine.cpp: (KJS::Machine::privateExecute): Ditto.
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitNewArray): Added.
  • VM/CodeGenerator.h: Added ElementNode* argument to emitNewArray.
  • kjs/nodes.cpp: (KJS::ArrayNode::emitCode): Pass the ElementNode to emitNewArray so it can be initialized with as many elements as possible. If the array doesn't have any holes in it, that's all that's needed. If there are holes, then emit some separate put operations for the other values in the array and for the length as needed.
  • kjs/nodes.h: Added some accessors to ElementNode so the code generator can iterate through elements and generate code to evaluate them. Now ArrayNode does not need to be a friend. Also took out some unused PlacementNewAdoptType constructors.
8:33 AM Changeset in webkit [34850] by Darin Adler
  • 2 edits in trunk/JavaScriptCore

2008-06-28 Darin Adler <Darin Adler>

Reviewed by Oliver Hunt.

  • kjs/nodes.h: Remove obsolete PlacementNewAdopt constructors. We no longer mutate the AST in place.
3:48 AM Changeset in webkit [34849] by jmalonzo@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-06-28 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Oliver Hunt.

Build fix

  • VM/Machine.cpp: include stdio.h
3:47 AM Changeset in webkit [34848] by Nikolas Zimmermann
  • 79 edits
    6 moves
    29 adds in trunk/LayoutTests

Reviewed by Oliver.

Update all (except four) SVG pixel tests, after a long time.
Four tests are broken in trunk, filed bugs 19798 & 19799.

Add all missing png/checksum files, and move files around which were misplaced.

3:23 AM Changeset in webkit [34847] by Nikolas Zimmermann
  • 2 edits in trunk/WebKitTools

Reviewed by Oliver.

Copy <test>-expected.png from the right location to /tmp/layout-test-results.
Use $expectedPixelDir instead of $expectedDir. Allows using SVG pixel tests again.

12:17 AM Changeset in webkit [34846] by mitz@apple.com
  • 2 edits in trunk/LayoutTests

Reviewed by Oliver Hunt.

  • make a test valid
  • fast/images/load-img-with-empty-src.html: Renamed the "status" variable to "results", because "status" is a Window property.

Jun 27, 2008:

11:09 PM Changeset in webkit [34845] by weinig@apple.com
  • 8 edits
    9 adds in trunk

WebCore:

2008-06-27 Sam Weinig <sam@webkit.org>

Reviewed by Dan Bernstein.

<rdar://problem/6025499> Make Cross-site XHR match the final specification

Update the implemented subset of Access-Control for XMLHttpRequest to the
latest version. (Editor's Draft 25 May 2008)

  • Now differentiates between simple and non-simple cross-site requests, the later requiring a preflight.
  • Now sends request headers cross-site, limited by a blacklist.
  • Now allows access to cross-site response headers, limited by a whitelist.
  • Now sends request entity body for non-get cross-site requests after preflight.

Tests: http/tests/xmlhttprequest/access-control-basic-blacklist-request-headers.html

http/tests/xmlhttprequest/access-control-basic-get-fail-non-simple.html
http/tests/xmlhttprequest/access-control-basic-whitelist-response-headers.html

  • xml/XMLHttpRequest.cpp: (WebCore::isOnAccessControllRequestHeaderBlackList): (WebCore::isOnAccessControlSimpleRequestHeaderWhitelist): (WebCore::isOnAccessControlResponseHeaderWhitelist): (WebCore::XMLHttpRequest::XMLHttpRequest): (WebCore::XMLHttpRequest::createRequest): (WebCore::XMLHttpRequest::makeSameOriginRequest): (WebCore::XMLHttpRequest::isSimpleCrossSiteAccessRequest): (WebCore::XMLHttpRequest::makeCrossSiteAccessRequest): (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest): (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight): (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult): (WebCore::XMLHttpRequest::loadRequestAsynchronously): (WebCore::XMLHttpRequest::abort): (WebCore::XMLHttpRequest::clearRequest): (WebCore::XMLHttpRequest::setRequestHeader): (WebCore::XMLHttpRequest::setRequestHeaderInternal): (WebCore::XMLHttpRequest::getAllResponseHeaders): (WebCore::XMLHttpRequest::getResponseHeader): (WebCore::XMLHttpRequest::didFinishLoading): (WebCore::XMLHttpRequest::didFinishLoadingPreflight): (WebCore::XMLHttpRequest::didReceiveResponse): (WebCore::XMLHttpRequest::didReceiveResponsePreflight): (WebCore::XMLHttpRequest::didReceiveData):
  • xml/XMLHttpRequest.h:

LayoutTests:

2008-06-27 Sam Weinig <sam@webkit.org>

Reviewed by Dan Bernstein.

<rdar://problem/6025499> Make Cross-site XHR match the final specification
Add tests for the updated implemented subset of Access-Control for XMLHttpRequest.

  • http/tests/xmlhttprequest/access-control-basic-blacklist-request-headers-expected.txt: Added.
  • http/tests/xmlhttprequest/access-control-basic-blacklist-request-headers.html: Added.
  • http/tests/xmlhttprequest/access-control-basic-get-fail-non-simple-expected.txt: Added.
  • http/tests/xmlhttprequest/access-control-basic-get-fail-non-simple.html: Added.
  • http/tests/xmlhttprequest/access-control-basic-not-get-allow-async-expected.txt:
  • http/tests/xmlhttprequest/access-control-basic-not-get-allow-expected.txt:
  • http/tests/xmlhttprequest/access-control-basic-whitelist-response-headers-expected.txt: Added.
  • http/tests/xmlhttprequest/access-control-basic-whitelist-response-headers.html: Added.
  • http/tests/xmlhttprequest/resources/access-control-basic-allow-print-headers.cgi: Added.
  • http/tests/xmlhttprequest/resources/access-control-basic-get-fail-non-simple.cgi: Added.
  • http/tests/xmlhttprequest/resources/access-control-basic-whitelist-response-headers.cgi: Added.
  • http/tests/xmlhttprequest/set-dangerous-headers-expected.txt:
10:20 PM Changeset in webkit [34844] by weinig@apple.com
  • 4 edits in trunk/JavaScriptCore

2008-06-27 Sam Weinig <sam@webkit.org>

Reviewed by Oliver Hunt.

Fix platforms that don't use AllInOne.cpp

  • kjs/BooleanConstructor.h:
  • kjs/BooleanPrototype.h:
  • kjs/FunctionPrototype.cpp:
9:29 PM Changeset in webkit [34843] by weinig@apple.com
  • 21 edits
    6 copies in trunk/JavaScriptCore

2008-06-27 Sam Weinig <sam@webkit.org>

Rubber-stamped by Oliver Hunt.

Splits ArrayConstructor out of ArrayPrototype.h/cpp
Splits BooleanConstructor and BooleanPrototype out of BooleanObject.h/cpp

  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • VM/Machine.cpp:
  • kjs/AllInOneFile.cpp:
  • kjs/ArrayConstructor.cpp: Copied from kjs/ArrayPrototype.cpp.
  • kjs/ArrayConstructor.h: Copied from kjs/ArrayPrototype.h.
  • kjs/ArrayPrototype.cpp:
  • kjs/ArrayPrototype.h:
  • kjs/BooleanConstructor.cpp: Copied from kjs/BooleanObject.cpp.
  • kjs/BooleanConstructor.h: Copied from kjs/BooleanObject.h.
  • kjs/BooleanObject.cpp:
  • kjs/BooleanObject.h:
  • kjs/BooleanPrototype.cpp: Copied from kjs/BooleanObject.cpp.
  • kjs/BooleanPrototype.h: Copied from kjs/BooleanObject.h.
  • kjs/CommonIdentifiers.h:
  • kjs/FunctionPrototype.cpp:
  • kjs/JSArray.cpp:
  • kjs/JSGlobalObject.cpp:
  • kjs/JSImmediate.cpp:
  • kjs/Shell.cpp:
  • kjs/internal.cpp:
  • kjs/nodes.cpp:
  • kjs/string_object.cpp:
9:02 PM Changeset in webkit [34842] by oliver@apple.com
  • 15 edits in trunk/JavaScriptCore

Bug 18626: SQUIRRELFISH: support the "slow script" dialog <https://bugs.webkit.org/show_bug.cgi?id=18626>
<rdar://problem/5973931> Slow script dialog needs to be reimplemented for squirrelfish

Reviewed by Sam

Adds support for the slow script dialog in squirrelfish. This requires the addition
of three new op codes, op_loop, op_loop_if_true, and op_loop_if_less which have the
same behaviour as their simple jump equivalents but have an additional time out check.

Additional assertions were added to other jump instructions to prevent accidentally
creating loops with jump types that do not support time out checks.

Sunspider does not report a regression, however this appears very sensitive to code
layout and hardware, so i would expect up to a 1% regression on other systems.

Part of this required moving the old timeout logic from JSGlobalObject and into Machine
which is the cause of a number of the larger diff blocks.

7:54 PM Changeset in webkit [34841] by weinig@apple.com
  • 2 edits in trunk/WebCore

2008-06-27 Sam Weinig <sam@webkit.org>

Rubber-stamped by Mark Rowe.

Clean up sorting in WebCore.xcodeproj.

  • WebCore.xcodeproj/project.pbxproj:
5:24 PM Changeset in webkit [34840] by jmalonzo@webkit.org
  • 3 edits in trunk/JavaScriptCore

2008-06-27 Jan Michael Alonzo <jmalonzo@webkit.org>

Gtk and Qt build fix: Remove RegisterFileStack from the build
scripts.

4:31 PM Changeset in webkit [34839] by adele@apple.com
  • 5 edits in trunk/JavaScriptCore

2008-06-27 Adele Peterson <adele@apple.com>

Reviewed by Geoff.

Build fixes.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • VM/RegisterFile.h: (KJS::RegisterFile::RegisterFile):
  • kjs/JSGlobalObject.cpp:
  • kjs/collector.cpp:
3:35 PM Changeset in webkit [34838] by ggaren@apple.com
  • 30 edits
    2 adds
    2 deletes in trunk

JavaScriptCore:

2008-06-27 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


One RegisterFile to rule them all!


SunSpider reports a 0.2% speedup.

This patch removes the RegisterFileStack abstraction and replaces it with
a single register file that


(a) allocates a fixed storage area, including a fixed area for global
vars, so that no operation may cause the register file to reallocate


and

(b) swaps between global storage areas when executing code in different
global objects.


This patch also changes the layout of the register file so that all call
frames, including call frames for global code, get a header. This is
required to support re-entrant global code. It also just makes things simpler.


  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::addGlobalVar): New function. Differs from addVar in that


(a) global vars don't contribute to a CodeBlock's numLocals count, since
global storage is fixed and allocated at startup


and


(b) references to global vars get shifted to elide intermediate stack
between "r" and the global storage area.


  • VM/Machine.cpp: (KJS::Machine::dumpRegisters): Updated this function to match the new register file layout, and added the ability to dump exact identifiers for the different parts of a call frame.


(KJS::Machine::unwindCallFrame): Updated this function to match the new
register file layout.


(KJS::Machine::execute): Updated this function to initialize a call frame
header for global code, and to swap global storage areas when switching
to execution in a new global object.


(KJS::Machine::privateExecute): Got rid of "safeForReentry" and re-reading
of registerBase because the register file is always safe for reentry now,
and registerBase never changes.


  • VM/Machine.h: Moved the call frame header enum from Machine to RegisterFile, to resolve a header dependency problem (a good sign that the enum belonged in RegisterFile all along!)
  • VM/RegisterFile.cpp:
  • VM/RegisterFile.h: Changed RegisterFile to mmap a fixed size register area. This allows us to avoid re-allocting the register file later on. Instead, we rely on the OS to allocate physical pages to the register file as necessary.
  • VM/RegisterFileStack.cpp: Removed. Tada!
  • VM/RegisterFileStack.h: Removed. Tada!
  • kjs/DebuggerCallFrame.cpp: Updated this class to match the new register file layout, greatly simplifying it in the process.
  • kjs/JSActivation.h:
  • kjs/JSActivation.cpp: Moved some of this logic up to JSVariableObject, since the global object now needs to be able to tear off its registers just like the activation object.
  • kjs/JSFunction.cpp: No need to fiddle with the register file anymore.
  • kjs/JSGlobalObject.h:
  • kjs/JSGlobalObject.cpp: Updated JSGlobalObject to support moving its global storage area into and out of the register file.
  • kjs/PropertySlot.cpp: No need to fiddle with the register file anymore.
  • kjs/collector.cpp: Renamed markStackObjectConservatively to markConservatively, since we don't just mark stack objects this way.


Also, added code to mark the machine's register file.

  • kjs/config.h: Moved some platforms #defines from here...
  • wtf/Platform.h: ...to here, to support mmap/VirtualAlloc detection in RegisterFile.h.

LayoutTests:

2008-06-26 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Added a test for what happens when a script exceeds the limit on declared
global variables.

  • fast/js/global-var-limit-expected.txt: Added.
  • fast/js/global-var-limit.html: Added.
  • fast/js/global-recursion-on-full-stack-expected.txt: Updated for new (slightly more correct) behavior. Since the stack overflow happens in the middle of a try/catch block, it should be caught, instead of logged to the console.
3:24 PM Changeset in webkit [34837] by jmalonzo@webkit.org
  • 2 edits in trunk/WebKitTools

2008-06-27 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Christian Dywan.

[Gtk] Initialize webview settings before running DRT tests
http://bugs.webkit.org/show_bug.cgi?id=19778

  • DumpRenderTree/gtk/DumpRenderTree.cpp: (setDefaultsToConsistentStateValuesForTesting): (main):
3:24 PM Changeset in webkit [34836] by jmalonzo@webkit.org
  • 3 edits in trunk/WebCore

2008-06-27 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Darin Adler.

Remove unnecessary options to make_names.pl command line
http://bugs.webkit.org/show_bug.cgi?id=19777

  • DerivedSources.make:
  • GNUmakefile.am:
2:08 PM Changeset in webkit [34835] by mitz@apple.com
  • 4 edits in trunk

PlanetWebKit:

Reviewed by Timothy Hatcher.

  • wwwroot/planetwebkit.css: Reduced text shadow offsets.

WebKitSite:

Reviewed by Timothy Hatcher.

  • css/main.css: Reduced text shadow offsets.
1:35 PM Changeset in webkit [34834] by Adam Roben
  • 3 edits in trunk/WebKit/win

Change WebKitGraphics truncation functions to return the length of the truncated string

Reviewed by Darin Adler.

  • WebKitGraphics.cpp: (CenterTruncateStringToWidth): (RightTruncateStringToWidth): Return the length.
  • WebKitGraphics.h: The truncation functions now return an unsigned int that is the length of the truncated string. The whole file has been marked extern "C" to keep the symbols for these functions from changing (which would break nightly builds).
11:11 AM Changeset in webkit [34833] by abarth@webkit.org
  • 4 edits in trunk/LayoutTests/platform/mac/fast/parser

Fix mime-types. Not sure how to do this with git.

11:09 AM Changeset in webkit [34832] by abarth@webkit.org
  • 3 edits
    10 adds in trunk

WebCore:

2008-06-27 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=19784

Properly handle untermianted <!-- comments in <textarea>s.

Tests: fast/parser/open-comment-in-script-tricky.html

fast/parser/open-comment-in-style.html
fast/parser/open-comment-in-textarea.html

  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::finish):

LayoutTests:

2008-06-27 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

Test our handling of unterminated <!-- comments in various special
parsing contexts. This change does not test our handling of
unterminated comments in <title> or <iframe> because I'm unsure whether
our behaviour is correct.

  • fast/parser/open-comment-in-script-tricky-expected.txt: Added.
  • fast/parser/open-comment-in-script-tricky.html: Added.
  • fast/parser/open-comment-in-style.html: Added.
  • fast/parser/open-comment-in-textarea.html: Added.
  • platform/mac/fast/parser/open-comment-in-style-expected.checksum: Added.
  • platform/mac/fast/parser/open-comment-in-style-expected.png: Added.
  • platform/mac/fast/parser/open-comment-in-style-expected.txt: Added.
  • platform/mac/fast/parser/open-comment-in-textarea-expected.checksum: Added.
  • platform/mac/fast/parser/open-comment-in-textarea-expected.png: Added.
  • platform/mac/fast/parser/open-comment-in-textarea-expected.txt: Added.
11:09 AM Changeset in webkit [34831] by abarth@webkit.org
  • 3 edits
    16 adds in trunk

WebCore:

2008-06-27 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

Fix <https://bugs.webkit.org/show_bug.cgi?id=19784>:

Text areas in Wikipedia edit pages are empty, following content is missing

Don't treat entities as comment starters in parseSpecial.

Tests: fast/parser/comment-in-iframe.html

fast/parser/entity-comment-in-iframe.html
fast/parser/entity-comment-in-script-tricky.html
fast/parser/entity-comment-in-style.html
fast/parser/entity-comment-in-textarea.html
fast/parser/entity-comment-in-title.html

  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::parseSpecial):

LayoutTests:

2008-06-27 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=19784

Test that entities are not used to start comments.

  • fast/parser/comment-in-iframe-expected.txt: Added.
  • fast/parser/comment-in-iframe.html: Added.
  • fast/parser/entity-comment-in-iframe-expected.txt: Added.
  • fast/parser/entity-comment-in-iframe.html: Added.
  • fast/parser/entity-comment-in-script-tricky-expected.txt: Added.
  • fast/parser/entity-comment-in-script-tricky.html: Added.
  • fast/parser/entity-comment-in-style.html: Added.
  • fast/parser/entity-comment-in-textarea.html: Added.
  • fast/parser/entity-comment-in-title-expected.txt: Added.
  • fast/parser/entity-comment-in-title.html: Added.
  • platform/mac/fast/parser/entity-comment-in-style-expected.checksum: Added.
  • platform/mac/fast/parser/entity-comment-in-style-expected.png: Added.
  • platform/mac/fast/parser/entity-comment-in-style-expected.txt: Added.
  • platform/mac/fast/parser/entity-comment-in-textarea-expected.checksum: Added.
  • platform/mac/fast/parser/entity-comment-in-textarea-expected.png: Added.
  • platform/mac/fast/parser/entity-comment-in-textarea-expected.txt: Added.
7:32 AM Changeset in webkit [34830] by jchaffraix@webkit.org
  • 7 edits in branches/XBL2

2008-06-27 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric.

Add build-webkit --xbl option.

  • configure.ac: Add XBL checks.

WebCore:

2008-06-27 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric.

Add build-webkit --xbl option.

  • GNUmakefile.am: Add XBL compilation flags and legacy files.
  • WebCore.pro: Ditto.

WebKitTools:

2008-06-27 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric.

Add build-webkit --xbl option.

  • Scripts/build-webkit: Add the option and the build systems' bit.
5:40 AM Changeset in webkit [34829] by Antti Koivisto
  • 3 edits
    2 adds in trunk

WebCore:

2008-06-27 Antti Koivisto <Antti Koivisto>

Reviewed by Oliver.


<rdar://problem/6030720>
REGRESSION: Discrete animation between incompatible paths does not work

Fall back to discrete path animation if paths are not suitable for morphing.


Test: svg/custom/animate-path-discrete.svg


  • svg/SVGAnimateElement.cpp: (WebCore::SVGAnimateElement::calculateAnimatedValue):

LayoutTests:

2008-06-27 Antti Koivisto <Antti Koivisto>

Reviewed by Oliver.


<rdar://problem/6030720>
REGRESSION: Discrete animation between incompatible paths does not work

  • svg/custom/animate-path-discrete.svg: Added.
  • platform/mac/svg/custom/animate-path-discrete-expected.txt: Added.
5:26 AM Changeset in webkit [34828] by jchaffraix@webkit.org
  • 1 copy in branches/XBL2

Create XBL2 branch.

12:00 AM Changeset in webkit [34827] by Darin Adler
  • 2 edits in trunk/WebKitTools

2008-06-26 Darin Adler <Darin Adler>

  • Scripts/check-for-weak-vtables: Fixed comment.

Jun 26, 2008:

9:54 PM Changeset in webkit [34826] by Darin Adler
  • 1 edit
    1 copy in trunk/WebKitTools

2008-06-26 Darin Adler <Darin Adler>

  • Scripts/check-for-weak-vtables: Added.
9:44 PM Changeset in webkit [34825] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

Speculative fix for the Windows build.

9:32 PM Changeset in webkit [34824] by mrowe@apple.com
  • 4 edits in trunk/JavaScriptCore

2008-06-26 Mark Rowe <mrowe@apple.com>

Reviewed by Darin Adler and Geoff Garen.

Fix the malloc zone introspection functions so that malloc_zone_statistics does not give
bogus output in an application that uses JavaScriptCore.

  • kjs/CollectorHeapIntrospector.cpp: (KJS::CollectorHeapIntrospector::statistics): Return statistics about memory allocated by the collector.
  • kjs/CollectorHeapIntrospector.h:
  • wtf/FastMalloc.cpp: Zero out the statistics. FastMalloc doesn't track this information at present. Returning zero for all values is preferable to returning bogus data.
8:28 PM Changeset in webkit [34823] by dsmith@webkit.org
  • 7 edits in trunk

WebCore:

2008-06-26 David Smith <catfish.man@gmail.com>

Reviewed by Sam Weinig.


https://bugs.webkit.org/show_bug.cgi?id=19002


Optimize simple id selectors in querySelector/querySelectorAll.
~4.4x speedup on the 4 subtests of http://webkit.org/perf/slickspeed/ that it applies to.

  • dom/Document.h: (WebCore::Document::containsMultipleElementsWithId): Added to allow optimizing the common case of no duplicates
  • dom/Node.cpp: (WebCore::Node::querySelector): Uses getElementById instead of DOM traversal where possible now
  • dom/SelectorNodeList.cpp: (WebCore::createSelectorNodeList): Uses getElementById instead of DOM traversal where possible now

LayoutTests:

2008-06-26 David Smith <catfish.man@gmail.com>

Reviewed by Sam Weinig.


https://bugs.webkit.org/show_bug.cgi?id=19002


Optimize simple id selectors in querySelector/querySelectorAll.
~4.4x speedup on the 4 subtests of http://webkit.org/perf/slickspeed/ that it applies to.

  • fast/dom/SelectorAPI/dumpNodeList-expected.txt:
  • fast/dom/SelectorAPI/dumpNodeList.html: Add tests for finding ids not in the document, and finding duplicate ids
8:24 PM Changeset in webkit [34822] by mitz@apple.com
  • 8 edits
    2 adds in trunk

WebCore:

Reviewed by Darin Adler.

Test: editing/selection/find-in-text-control.html

  • WebCore.base.exp: Updated the TextIterator constructor signature.
  • editing/TextIterator.cpp: (WebCore::TextIterator::TextIterator): Added an enterTextControls boolean parameter that determines whether the iterator should visit text inside text areas and text fields. Added code to initialize the m_inShadowContent member variable based on whether the range is in shadow content. (WebCore::TextIterator::advance): Added code to step out of shadow content. (WebCore::TextIterator::handleReplacedElement): Added code to enter text controls if desired. (WebCore::CharacterIterator::CharacterIterator): Added an enterTextControls boolean parameter that determines whether the iterator should visit text inside text areas and text fields. This is passed to the TextIterator constructor. (WebCore::findPlainText): Changed to use a CharacterIterator that visits text controls.
  • editing/TextIterator.h: Added member variables to track whether the current node is in a shadow tree and whether the iterator should visit text controls.
  • page/Frame.cpp: (WebCore::Frame::findString): Changed to find inside text controls. (WebCore::Frame::markAllMatchesForText): Ditto.
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::innerTextElement): Added.
  • rendering/RenderTextControl.h: Added innerTextElement(), a private accessor method that is accessible to TextIterator through class friendship.

LayoutTests:

Reviewed by Darin Adler.

  • editing/selection/find-in-text-control-expected.txt: Added.
  • editing/selection/find-in-text-control.html: Added.
7:53 PM Changeset in webkit [34821] by Darin Adler
  • 24 edits in trunk/JavaScriptCore

2008-06-26 Darin Adler <Darin Adler>

Reviewed by Geoff.

  • optimize UString append and the replace function a bit

SunSpider says 1.8% faster.

  • VM/JSPropertyNameIterator.cpp: Added include of JSString.h, now needed because jsString returns a JSString*.
  • VM/Machine.cpp: (KJS::Machine::privateExecute): Removed the toObject call from native function calls. Also removed code to put the this value into a register.
  • kjs/BooleanObject.cpp: (KJS::booleanProtoFuncToString): Rewrite to handle false and true separately.
  • kjs/FunctionPrototype.cpp: (KJS::constructFunction): Use single-character append rather than building a string for each character.
  • kjs/JSFunction.cpp: (KJS::globalFuncUnescape): Ditto.
  • kjs/JSImmediate.cpp: (KJS::JSImmediate::prototype): Added. Gets the appropriate prototype for use with an immediate value. To be used instead of toObject when doing a get on an immediate value.
  • kjs/JSImmediate.h: Added prototype.
  • kjs/JSObject.cpp: (KJS::JSObject::toString): Tweaked formatting.
  • kjs/JSObject.h: (KJS::JSValue::get): Use prototype instead of toObject to avoid creating an object wrapper just to search for properties. This also saves an unnecessary hash table lookup since the object wrappers themselves don't have any properties.
  • kjs/JSString.h: Added toThisString and toThisJSString.
  • kjs/JSValue.cpp: (KJS::JSCell::toThisString): Added. (KJS::JSCell::toThisJSString): Added. (KJS::JSCell::getJSNumber): Added. (KJS::jsString): Changed return type to JSString*. (KJS::jsOwnedString): Ditto.
  • kjs/JSValue.h: (KJS::JSValue::toThisString): Added. (KJS::JSValue::toThisJSString): Added. (KJS::JSValue::getJSNumber): Added.
  • kjs/NumberObject.cpp: (KJS::NumberObject::getJSNumber): Added. (KJS::integer_part_noexp): Append C string directly rather than first turning it into a UString. (KJS::numberProtoFuncToString): Use getJSNumber to check if the value is a number rather than isObject(&NumberObject::info). This works for immediate numbers, number cells, and NumberObject instances. (KJS::numberProtoFuncToLocaleString): Ditto. (KJS::numberProtoFuncValueOf): Ditto. (KJS::numberProtoFuncToFixed): Ditto. (KJS::numberProtoFuncToExponential): Ditto. (KJS::numberProtoFuncToPrecision): Ditto.
  • kjs/NumberObject.h: Added getJSNumber.
  • kjs/PropertySlot.cpp: Tweaked comment.
  • kjs/internal.cpp: (KJS::JSString::toThisString): Added. (KJS::JSString::toThisJSString): Added. (KJS::JSString::getOwnPropertySlot): Changed code that searches the prototype chain to start with the string prototype and not create a string object. (KJS::JSNumberCell::toThisString): Added. (KJS::JSNumberCell::getJSNumber): Added.
  • kjs/lookup.cpp: (KJS::staticFunctionGetter): Moved here, because there's no point in having a function that's only used for a function pointer be inline. (KJS::setUpStaticFunctionSlot): New function for getStaticFunctionSlot.
  • kjs/lookup.h: (KJS::staticValueGetter): Don't mark this inline. It doesn't make sense to have a function that's only used for a function pointer be inline. (KJS::getStaticFunctionSlot): Changed to get properties from the parent first before doing any handling of functions. This is the fastest way to return the function once the initial setup is done.
  • kjs/string_object.cpp: (KJS::StringObject::getPropertyNames): Call value() instead of getString(), avoiding an unnecessary virtual function call (the call to the type() function in the implementation of the isString() function). (KJS::StringObject::toString): Added. (KJS::StringObject::toThisString): Added. (KJS::StringObject::toThisJSString): Added. (KJS::substituteBackreferences): Rewrote to use a appending algorithm instead of a the old one that tried to replace in place. (KJS::stringProtoFuncReplace): Merged this function and the replace function. Replaced the hand-rolled dynamic arrays for source ranges and replacements with Vector. (KJS::stringProtoFuncToString): Handle JSString as well as StringObject. Removed the separate valueOf implementation, since it can just share this. (KJS::stringProtoFuncCharAt): Use toThisString, which handles JSString as well as StringObject, and is slightly more efficient than the old code too. (KJS::stringProtoFuncCharCodeAt): Ditto. (KJS::stringProtoFuncConcat): Ditto. (KJS::stringProtoFuncIndexOf): Ditto. (KJS::stringProtoFuncLastIndexOf): Ditto. (KJS::stringProtoFuncMatch): Ditto. (KJS::stringProtoFuncSearch): Ditto. (KJS::stringProtoFuncSlice): Ditto. (KJS::stringProtoFuncSplit): Ditto. (KJS::stringProtoFuncSubstr): Ditto. (KJS::stringProtoFuncSubstring): Ditto. (KJS::stringProtoFuncToLowerCase): Use toThisJSString. (KJS::stringProtoFuncToUpperCase): Ditto. (KJS::stringProtoFuncToLocaleLowerCase): Ditto. (KJS::stringProtoFuncToLocaleUpperCase): Ditto. (KJS::stringProtoFuncLocaleCompare): Ditto. (KJS::stringProtoFuncBig): Use toThisString. (KJS::stringProtoFuncSmall): Ditto. (KJS::stringProtoFuncBlink): Ditto. (KJS::stringProtoFuncBold): Ditto. (KJS::stringProtoFuncFixed): Ditto. (KJS::stringProtoFuncItalics): Ditto. (KJS::stringProtoFuncStrike): Ditto. (KJS::stringProtoFuncSub): Ditto. (KJS::stringProtoFuncSup): Ditto. (KJS::stringProtoFuncFontcolor): Ditto. (KJS::stringProtoFuncFontsize): Ditto. (KJS::stringProtoFuncAnchor): Ditto. (KJS::stringProtoFuncLink): Ditto.
  • kjs/string_object.h: Added toString, toThisString, and toThisJSString.
  • kjs/ustring.cpp: (KJS::UString::append): Added a version that takes a character pointer and size, so we don't have to create a UString just to append to another UString.
  • kjs/ustring.h:
7:18 PM Changeset in webkit [34820] by Darin Adler
  • 2 edits in trunk/WebCore

2008-06-26 Darin Adler <Darin Adler>

Reviewed by Geoff.

  • bridge/runtime.h: Added include of JSString.h since jsString will soon change to return a JSString*.
7:17 PM Changeset in webkit [34819] by Darin Adler
  • 3 edits in trunk/JavaScriptGlue

2008-06-26 Darin Adler <Darin Adler>

Reviewed by Geoff.

  • JSUtils.cpp: Added include of <JavaScriptCore/JSString.h> since jsString will soon be changed to return a JSString*.
  • UserObjectImp.cpp: Ditto.
5:08 PM Changeset in webkit [34818] by adele@apple.com
  • 2 edits in trunk/WebCore

2008-06-26 Adele Peterson <adele@apple.com>

Fix suggested by Eric Carlson, added by me, reviewed by Adam.

Fix for <rdar://problem/5733006> <video> and <audio> element should not prompt user for missing files

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::createQTMovie): Set object with key QTMovieAskUnresolvedDataRefsAttribute to NO in the attributes dictionary passed to -[QTMovie initWithAttributes:]
5:03 PM Changeset in webkit [34817] by weinig@apple.com
  • 2 edits in trunk/WebCore

2008-06-26 Sam Weinig <sam@webkit.org>

Reviewed by John Sullivan.

<rdar://problem/6031969> Crash in SecurityOrigin code going Forward to a page in the back/forward cache

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::open): Make sure to update the SecurityOrigin and URL of the DOMWindow when opening a CachedPage.
3:54 PM Changeset in webkit [34816] by Beth Dakin
  • 4 edits in trunk

WebKitTools:

2008-06-26 Beth Dakin <Beth Dakin>

Reviewed by Sam.

Do not include AXPosition in the dump of all of the accessibility
attributes since it is screen-specific.

  • DumpRenderTree/mac/AccessibilityControllerMac.mm: (AccessibilityController::allAttributesOfFocusedElement):

LayoutTests:

2008-06-26 Beth Dakin <Beth Dakin>

Reviewed by Sam.

Updated results that will pass on all platforms.

  • accessibility/document-attributes-expected.txt:
3:45 PM Changeset in webkit [34815] by eric@webkit.org
  • 5 edits in trunk/WebCore

Reviewed by Beth Dakin.

CSS @import statements can cause DocLoader to use
a dead Frame pointer.
https://bugs.webkit.org/show_bug.cgi?id=19618

The fix is to get rid of the Frame pointer on DocLoader.

I also took this opportunity to clean up Document::detach
a little to make it clear why we clear the m_frame pointer
there, and to note that in the future we should stop
using Node::detach to mean "tear down the whole rendering
tree and detach from the frame".

Test: I don't know how to make a good test for this, the test
we have is network timing dependent and does not make a good
layout test.

  • dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::detach): (WebCore::Document::clearFramePointer):
  • dom/Document.h:
  • loader/DocLoader.cpp: (WebCore::DocLoader::frame):
  • loader/DocLoader.h:
3:22 PM Changeset in webkit [34814] by weinig@apple.com
  • 2 edits in trunk/LayoutTests

2008-06-26 Sam Weinig <sam@webkit.org>

Update result after adding new progress events to XMLHttpRequest.

  • fast/dom/xmlhttprequest-get-expected.txt:
2:32 PM Changeset in webkit [34813] by Beth Dakin
  • 3 edits in trunk/WebKitTools

2008-06-26 Beth Dakin <Beth Dakin>

Reviewed by Anders.

This is a speculative fix for the failing layout test on the build
bot. It seems that the problem that the Build Bot is having is
Tiger-specific. On Tiger, [NSValue description] was not very smart.
So I replaced our call to description with a hand-rolled equivalent
that will match on both platforms.

  • DumpRenderTree/mac/AccessibilityControllerMac.mm: (descriptionOfValue):
1:13 PM Changeset in webkit [34812] by andersca@apple.com
  • 4 edits
    2 adds in trunk/WebKit

WebKit:

2008-06-26 Anders Carlsson <andersca@apple.com>

Reviewed by Darin.

Add MainThreadObjectDeallocator to sources.


  • WebKit.xcodeproj/project.pbxproj:

WebKit/mac:

2008-06-26 Anders Carlsson <andersca@apple.com>

Reviewed by Darin.

Add a new MainThreadObjectDeallocator which can schedule dealloc calls on the main thread
if necessary. Use this for the WebView class.


  • WebView/MainThreadObjectDeallocator.h: Added.
  • WebView/MainThreadObjectDeallocator.mm: Added. (deallocCallback): (scheduleDeallocateOnMainThread):
  • WebView/WebView.mm: (-[WebViewPrivate dealloc]): (+[WebView initialize]):
12:07 PM Changeset in webkit [34811] by andersca@apple.com
  • 2 edits in trunk/WebCore

2008-06-26 Anders Carlsson <andersca@apple.com>

Reviewed by Brady.

Don't enumerate document.applets trying to determine if a page contains applets.
Instead, set m_containsPlugIns to true when an applet has been created.


  • loader/FrameLoader.cpp: (WebCore::FrameLoader::canCachePage): (WebCore::FrameLoader::createJavaAppletWidget):
11:59 AM Changeset in webkit [34810] by ap@webkit.org
  • 14 edits in trunk

Reviewed by Maciej.

Make JSGlobalData per-thread.

No change on SunSpider total.

  • wtf/ThreadSpecific.h: Re-enabled the actual implementation.
  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::~JSGlobalObject): Re-added a JSLock-related assertion. We'll probably want to preserve these somehow to keep legacy behavior in working condition. (KJS::JSGlobalObject::init): Initialize globalData pointer earlier, so that it is ready when updating JSGlobalObject linked list.
  • kjs/JSGlobalObject.h: (KJS::JSGlobalObject::head): Changed head() to be non-static, and to use JSGlobalData associated with the current object.
  • kjs/InitializeThreading.cpp: (KJS::initializeThreadingOnce): Removed a no longer needed Heap::registerAsMainThread() call.
  • kjs/JSGlobalData.h: Removed a lying lie comment - parserObjectExtraRefCounts is not transient, and while newParserObjects may conceptually be such, there is still some node manipulation going on outside Parser::parse which touches it.
  • kjs/JSGlobalData.cpp: (KJS::JSGlobalData::~JSGlobalData): Delete recently added members. (KJS::JSGlobalData::sharedInstance): Actually use a separate instance.
  • kjs/collector.cpp: (KJS::Heap::Heap): (KJS::Heap::~Heap): Added a destructor, which unconditionally deletes everything. (KJS::Heap::sweep): Removed code related to "collect on main thread only" logic. (KJS::Heap::collect): Ditto. (KJS::Heap::globalObjectCount): Explicitly use per-thread instance of JSGlobalObject linked list now that JSGlobalObject::head() is not static. Curently, WebCoreStatistics methods only work with the main thread currently anyway. (KJS::Heap::protectedGlobalObjectCount): Ditto.
  • kjs/collector.h: Removed code related to "collect on main thread only" logic.
11:37 AM Changeset in webkit [34809] by ap@webkit.org
  • 4 edits
    3 adds in trunk

Reviewed by Darin.

https://bugs.webkit.org/show_bug.cgi?id=19767
REGRESSION: Crash in sort() when visiting http://www.onnyturf.com/subway/

  • kjs/JSArray.cpp: (KJS::AVLTreeAbstractorForArrayCompare::set_balance_factor): Made changing balance factor from -1 to +1 work correctly.
  • wtf/AVLTree.h: (KJS::AVLTreeDefaultBSet::operator[]): Added an assertion that catches this slightly earlier.
10:17 AM Changeset in webkit [34808] by Simon Hausmann
  • 3 edits in trunk/WebCore

2008-06-26 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Simon.

[svg] Disable plugins for SVG images
The Qt platform allows to have a plugin factory per Page. Now SVG Images
are using a Page and dummy/empty clients for Chrome. The only way to get
the kit from the WebCore::Page is to go through the ChromeClient but this
is not possible when the ChromeClient is an empty client. This leads to a
crash in PluginDataQt.cpp. One way to avoid this would have been the
addition of a rtti like field to ChromeClient to see if it is an empty
client. The other possibility is to not enable plugins for images.

The SVGImage relies on the fact that the document is a SVGDocument and
that the rootElement is a SVGSVGElement. If plugins are used we could
end up with a PluginDocument and crash badly. Do not try to use plugins
if plugins are disabled for the WebCore::Page.

10:17 AM Changeset in webkit [34807] by Simon Hausmann
  • 2 edits in trunk/WebCore

2008-06-25 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Simon.

CodingStyle fixes

10:17 AM Changeset in webkit [34806] by Simon Hausmann
  • 3 edits in trunk/WebCore

2008-06-25 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Simon.

[svg] Make QtWebKit build more of the SVG support
Add the proper defines and files, update SVGResourceFilterQt.cpp
to be enabled by the filter option and not by experimental svg support

8:41 AM Changeset in webkit [34805] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

2008-06-25 Anders Carlsson <andersca@apple.com>

Reviewed by Mark.

<rdar://problem/5984270>
REGRESSION (Tiger only) : Mail crashes because message load is being processed on a secondary thread


  • WebView/WebView.mm: (tigerMailReleaseIMP): New method that makes sure that the final release happens on the main thread.


(-[WebView release]):
New method that just calls [super release];


(+[WebView initialize]):
When running under Tiger mail, replace the release method with tigerMailReleaseIMP.

6:51 AM BuildingOnWindows edited by baudel@ilog.fr
Feedback on my experience building webkit: missing cygwin packages (diff)

Jun 25, 2008:

6:52 PM Changeset in webkit [34804] by mjs@apple.com
  • 3 edits in trunk/WebKitSite

2008-06-25 Maciej Stachowiak <mjs@apple.com>

Not reviewed, web site fix.


Remove blank lines in an attempt to fix feeds.

  • blog/wp-content/themes/webkit/index.php:
  • blog/wp-content/themes/webkit/links.php:
6:10 PM Changeset in webkit [34803] by mitz@apple.com
  • 1 edit
    1 move in trunk/LayoutTests

2008-06-25 Jean-Charles Verdié <jcverdie@pleyo.com>

Reviewed by Geoffrey Garen.

  • dom/xhtml/level2/html/HTMLFrameElement09.xhtml: Removed.
  • dom/xhtml/level2/html/HTMLFrameElement09.xhtml-disabled: Copied from LayoutTests/dom/xhtml/level2/html/HTMLFrameElement09.xhtml.
5:22 PM Changeset in webkit [34802] by Beth Dakin
  • 6 edits
    8 adds in trunk

WebKitTools:

2008-06-25 Beth Dakin <Beth Dakin>

Reviewed by Sam Weinig.

This patch adds support to the AccessibilityController to query the
following attributes specifically, without a full attribute dump:
AXRole, AXTitle, and AXDescription.

  • DumpRenderTree/AccessibilityController.cpp: (allAttributesForFocusedElementCallback): (roleOfFocusedElementCallback): (titleOfFocusedElementCallback): (descriptionOfFocusedElementCallback): (AccessibilityController::staticFunctions):
  • DumpRenderTree/AccessibilityController.h:
  • DumpRenderTree/mac/AccessibilityControllerMac.mm: (AccessibilityController::allAttributesForFocusedElement): (concatenateAttributeAndValue): (AccessibilityController::roleOfFocusedElement): (AccessibilityController::titleOfFocusedElement): (AccessibilityController::descriptionOfFocusedElement):

LayoutTests:

2008-06-25 Beth Dakin <Beth Dakin>

Reviewed by Sam Weinig.

New tests that exercise the ability to query the following
accessibility attributes individually: role, title, and
description.

  • accessibility/aria-describedby-on-input-expected.txt: Added.
  • accessibility/aria-describedby-on-input.html: Added.
  • accessibility/aria-labelledby-on-input-expected.txt: Added.
  • accessibility/aria-labelledby-on-input.html: Added.
  • accessibility/aria-roles-expected.txt: Added.
  • accessibility/aria-roles.html: Added.
  • accessibility/document-attributes.html:
  • accessibility/resources: Added.
  • accessibility/resources/cake.png: Added.
4:44 PM Changeset in webkit [34801] by weinig@apple.com
  • 3 edits in trunk/WebCore

2008-06-25 Sam Weinig <sam@webkit.org>

Reviewed by Brady Eidson.

Move XMLHttpRequestState enum into XMLHttpRequest and rename to State.

  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::readyState): (WebCore::XMLHttpRequest::changeState): (WebCore::XMLHttpRequest::open):
  • xml/XMLHttpRequest.h: (WebCore::XMLHttpRequest::create): (WebCore::XMLHttpRequest::):
2:44 PM Changeset in webkit [34800] by timothy@apple.com
  • 6 edits
    1 copy in trunk

Fixes an ASSERT in the profiler when starting multiple profiles
with the same name inside the same function/program.

Reviewed by Kevin McCullough.

  • profiler/Profile.cpp: (KJS::Profile::Profile): Initialize m_stoppedCallDepth to zero. (KJS::Profile::stopProfiling): Set the current node to the parent, because we are in a call that will not get a didExecute call. (KJS::Profile::removeProfile): Increment m_stoppedCallDepth to account for didExecute not being called for profile. (KJS::Profile::willExecute): Increment m_stoppedCallDepth if stopped. (KJS::Profile::didExecute): Decrement m_stoppedCallDepth if stopped and greater than zero, and return early.
  • profiler/Profile.h: Added stoppedProfiling().
  • profiler/Profiler.cpp: (KJS::Profiler::findProfile): Removed. (KJS::Profiler::startProfiling): Don't return early for stopped profiles. (KJS::Profiler::stopProfiling): Skipp stopped profiles. (KJS::Profiler::didFinishAllExecution): Code clean-up.
  • profiler/Profiler.h: Removed findProfile.
2:22 PM Changeset in webkit [34799] by justin.garcia@apple.com
  • 10 edits
    4 adds in trunk

WebCore:

2008-06-25 Justin Garcia <justin.garcia@apple.com>

Reviewed by John.

<rdar://problem/5994480> Line break lost on some pastes


Merging the the first paragraph of inserted content with the content that came
before the selection that was pasted into would also move content after
the selection that was pasted into if:


1) Only one paragraph was being pasted, and it was not wrapped in a block
2) The selection that was pasted into ended at the end of a block
3) The next paragraph didn't start at the start of a block.


Insert a line break just after the inserted content to separate it from what
comes after and prevent that from happening.


Doing this exposed a bug in deletion where it would insert an unnecessary placeholder
when deleting a paragraph that started or ended with an input element. This was
because its m_startBlock and m_endBlock were still computed with the old deprecated
enclosingBlockFlowOrTableElement().


  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::initializePositionData): Use the new method for getting an enclosing block. (WebCore::DeleteSelectionCommand::doApply): The new method for getting an enclosing block will return 0 if it reaches the root editable element before finding a block, so if we're deleting inside an inline editable root, m_start/endBlock will be 0. Removed an early return for this case (we already have test coverage for it).
  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply): Insert a line break just after the inserted content to separate it from what comes after.
  • dom/Node.h: Removed enclosingBlockFlowOrTableElement().
  • dom/Node.cpp: Ditto.

LayoutTests:

2008-06-25 Justin Garcia <justin.garcia@apple.com>

Reviewed by John.


<rdar://problem/5994480> Line break lost on some pastes


These demonstrate fixes:

  • editing/inserting/5994480.html: Added.
  • editing/inserting/5994480-expected.txt: Added.
  • editing/inserting/5994480-2.html: Added.
  • editing/inserting/5994480-2-expected.txt: Added.


The changes made in this fix caused more of the unrendered text from the original
file to be preserved and show up in the test results. We insert a line break after
inserted content to separate it from content that comes after and prevent it from
being merged. In these what came after was unrendered whitespace that was previously
clobbered by the merge:

  • platform/mac/editing/pasteboard/paste-match-style-001-expected.txt:
  • platform/mac/editing/pasteboard/paste-text-010-expected.txt:
  • platform/mac/editing/pasteboard/smart-paste-001-expected.txt:
  • platform/mac/editing/style/style-boundary-005-expected.txt:
1:51 PM Changeset in webkit [34798] by ddkilzer@apple.com
  • 1 edit in trunk/BugsSite/ChangeLog

Fixed date.

11:49 AM Changeset in webkit [34797] by ddkilzer@apple.com
  • 2 edits in trunk/BugsSite

Make PrettyPatch handle diffs with no Index or diff headers

Part of Bug 19290: More patches not handled by PrettyPatch.rb
<https://bugs.webkit.org/show_bug.cgi?id=19290>

Reviewed by Adam.

  • PrettyPatch/PrettyPatch.rb: (PrettyPatch.DIFF_HEADER_FORMATS): Added regular expression to match on "+++ " lines for patches with no "Index" or "diff" header. (PrettyPatch.FileDiff.initialize): Look for filename on "+++ " line when the first line of a patch has no "Index" or "diff" header. (PrettyPatch.FileDiff.parse): Added haveSeenDiffHeader state variable to determine when no "Index" or "diff" header has been found, but a new patch has started with a "--- " line.
11:21 AM Changeset in webkit [34796] by andersca@apple.com
  • 3 edits in trunk/WebCore

2008-06-25 Anders Carlsson <andersca@apple.com>

Reviewed by Dave Hyatt.

Fix refcount leak in CSSVariablesRule.

  • css/CSSParser.cpp: (WebCore::CSSParser::createVariablesRule):
  • css/CSSVariablesRule.h: (WebCore::CSSVariablesRule::create): (WebCore::CSSVariablesRule::setDeclaration):
10:31 AM Changeset in webkit [34795] by andersca@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

2008-06-25 Anders Carlsson <andersca@apple.com>

Reviewed by Mitz.

<rdar://problem/6007111>
https://bugs.webkit.org/show_bug.cgi?id=19516
DOM modification causes Access Violation (NULL pointer?)


Null check the document element.


  • html/HTMLParser.cpp: (WebCore::HTMLParser::handleError):

LayoutTests:

2008-06-25 Anders Carlsson <andersca@apple.com>

Reviewed by Mitz.

<rdar://problem/6007111>
https://bugs.webkit.org/show_bug.cgi?id=19516
DOM modification causes Access Violation (NULL pointer?)

  • fast/dom/HTMLHtmlElement/duplicate-html-element-crash-expected.txt: Added.
  • fast/dom/HTMLHtmlElement/duplicate-html-element-crash.html: Added.
9:36 AM Changeset in webkit [34794] by mitz@apple.com
  • 23 edits
    9 adds in trunk

WebCore:

Reviewed by Dave Hyatt.

  • fix <rdar://problem/5873639> REGRESSION (r31620): css2.1/t1506-c525-font-wt-00-b fails on Windows

Tests: fast/css/font-face-locally-installed.html

fast/css/font-face-multiple-faces.html

  • WebCore.vcproj/WebCore.vcproj: Added FontTraitsMask.h.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • css/CSSFontFace.h: Made CSSFontFace store descriptors from the @font-face rule, as follows: (WebCore::CSSFontFace::create): Added a FontTraitsMask argument. (WebCore::CSSFontFace::traitsMask): Added this accessor. (WebCore::CSSFontFace::addRange): Added. (WebCore::CSSFontFace::ranges): Added. (WebCore::CSSFontFace::UnicodeRange::UnicodeRange): (WebCore::CSSFontFace::UnicodeRange::from): (WebCore::CSSFontFace::UnicodeRange::to): (WebCore::CSSFontFace::CSSFontFace): Added a FontTraitsMask and a vector of UnicodeRanges as member variables.
  • css/CSSFontFaceSource.cpp: Changed the hash key from the font size alone to the font size and the synthetic style bits, needed if the same source supplies different synthesized versions. (WebCore::CSSFontFaceSource::pruneTable): (WebCore::CSSFontFaceSource::getFontData):
  • css/CSSFontFaceSource.h:
  • css/CSSFontSelector.cpp: (WebCore::CSSFontSelector::~CSSFontSelector): Added code to delete the contents of the font face, locally-installed font face and segmented font tables. (WebCore::CSSFontSelector::addFontFaceRule): Changed this function to not create segmented font faces, but instead just collect font faces and annotate them with descriptors (traits and unicode ranges). (WebCore::compareFontFaces): Added. Used in getFontData() to sort the font faces by proximity to the desired traits. (WebCore::CSSFontSelector::getFontData): Changed to create the segmented font face here and cache it.
  • css/CSSFontSelector.h:
  • css/CSSSegmentedFontFace.cpp: Changed to keep a vector of font faces instead of font face ranges, as font faces now know their Unicode ranges. (WebCore::CSSSegmentedFontFace::~CSSSegmentedFontFace): (WebCore::CSSSegmentedFontFace::isLoaded): (WebCore::CSSSegmentedFontFace::isValid): (WebCore::CSSSegmentedFontFace::appendFontFace): (WebCore::CSSSegmentedFontFace::getFontData): Removed the synthetic traits parameters, and instead changed to set them on each FontData separately based on the difference between the desired traits and the font face's traits.
  • css/CSSSegmentedFontFace.h:
  • platform/graphics/FontCache.h: Removed fontExists() and added getTraitsInFamily().
  • platform/graphics/FontDescription.cpp: (WebCore::FontDescription::traitsMask): Added.
  • platform/graphics/FontDescription.h:
  • platform/graphics/FontTraitsMask.h: Added.
  • platform/graphics/GlyphPageTreeNode.cpp: (WebCore::GlyphPageTreeNode::initializePage): Changed to fill in with glyphs from all fonts in the segmented font, using each font in turn to fill in characters not covered by earlier fonts.
  • platform/graphics/gtk/FontCacheGtk.cpp: (WebCore::FontCache::getTraitsInFamily): Added a stub.
  • platform/graphics/mac/FontCacheMac.mm: (WebCore::FontCache::getTraitsInFamily): Added.
  • platform/graphics/qt/FontCacheQt.cpp: (WebCore::FontCache::getTraitsInFamily): Added a stub.
  • platform/graphics/win/FontCacheWin.cpp: (WebCore::TraitsInFamilyProcData::TraitsInFamilyProcData): Added. (WebCore::traitsInFamilyEnumProc): Added. (WebCore::FontCache::getTraitsInFamily): Added.
  • platform/graphics/wx/FontCacheWx.cpp: (WebCore::FontCache::getTraitsInFamily): Added a stub.
  • platform/mac/WebFontCache.h:
  • platform/mac/WebFontCache.mm: (toTraitsMask): Added. (+[WebFontCache getTraits:inFamily:]): Added.

LayoutTests:

Reviewed by Dave Hyatt.

  • fast/css/font-face-locally-installed.html: Added.
  • fast/css/font-face-multiple-faces.html: Added.
  • platform/mac/fast/css/font-face-locally-installed-expected.checksum: Added.
  • platform/mac/fast/css/font-face-locally-installed-expected.png: Added.
  • platform/mac/fast/css/font-face-locally-installed-expected.txt: Added.
  • platform/mac/fast/css/font-face-multiple-faces-expected.checksum: Added.
  • platform/mac/fast/css/font-face-multiple-faces-expected.png: Added.
  • platform/mac/fast/css/font-face-multiple-faces-expected.txt: Added.
  • platform/win/Skipped: Removed css2.1/t1506-c525-font-wt-00-b.html.
1:38 AM Changeset in webkit [34793] by cwzwarich@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-06-25 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Alexey Proskuryakov.

Attempt to fix Windows debug build. The compiler gives a warning when
Structured Exception Handling and destructors are used in the same
function. Using manual locking and unlocking instead of constructors
and destructors should fix the warning.

  • kjs/Shell.cpp: (main):
12:15 AM Changeset in webkit [34792] by ap@webkit.org
  • 4 edits in trunk/JavaScriptCore

Forgot to address a review comment about better names for tracked objects, doing it now.

  • kjs/JSGlobalData.cpp: (KJS::JSGlobalData::JSGlobalData):
  • kjs/JSGlobalData.h:
  • kjs/nodes.cpp: (KJS::ParserRefCounted::ParserRefCounted): (KJS::ParserRefCounted::ref): (KJS::ParserRefCounted::deref): (KJS::ParserRefCounted::hasOneRef): (KJS::ParserRefCounted::deleteNewObjects):
12:07 AM Changeset in webkit [34791] by ap@webkit.org
  • 11 edits in trunk/JavaScriptCore

Reviewed by Geoff.

Remove more threadInstance() calls.

  • kjs/JSFunction.cpp: (KJS::JSFunction::getParameterName): (KJS::IndexToNameMap::unMap): (KJS::Arguments::deleteProperty):
  • kjs/JSFunction.h: Access nullIdentifier without going to thread specific storage.
  • JavaScriptCore.exp:
  • kjs/JSGlobalData.cpp: (KJS::JSGlobalData::JSGlobalData):
  • kjs/JSGlobalData.h:
  • kjs/Parser.cpp: (KJS::Parser::parse):
  • kjs/Parser.h: (KJS::ParserRefCountedData::ParserRefCountedData): (KJS::Parser::parse):
  • kjs/grammar.y:
  • kjs/nodes.cpp: (KJS::ParserRefCounted::ParserRefCounted): (KJS::ParserRefCounted::ref): (KJS::ParserRefCounted::deref): (KJS::ParserRefCounted::hasOneRef): (KJS::ParserRefCounted::deleteNewObjects): (KJS::Node::Node): (KJS::StatementNode::StatementNode): (KJS::BreakpointCheckStatement::BreakpointCheckStatement): (KJS::ConstDeclNode::ConstDeclNode): (KJS::BlockNode::BlockNode): (KJS::ForInNode::ForInNode): (KJS::ScopeNode::ScopeNode): (KJS::ProgramNode::ProgramNode): (KJS::ProgramNode::create): (KJS::EvalNode::EvalNode): (KJS::EvalNode::create): (KJS::FunctionBodyNode::FunctionBodyNode): (KJS::FunctionBodyNode::create):
  • kjs/nodes.h: (KJS::ExpressionNode::): (KJS::NullNode::): (KJS::BooleanNode::): (KJS::NumberNode::): (KJS::ImmediateNumberNode::): (KJS::StringNode::): (KJS::RegExpNode::): (KJS::ThisNode::): (KJS::ResolveNode::): (KJS::ElementNode::): (KJS::ArrayNode::): (KJS::PropertyNode::): (KJS::PropertyListNode::): (KJS::ObjectLiteralNode::): (KJS::BracketAccessorNode::): (KJS::DotAccessorNode::): (KJS::ArgumentListNode::): (KJS::ArgumentsNode::): (KJS::NewExprNode::): (KJS::EvalFunctionCallNode::): (KJS::FunctionCallValueNode::): (KJS::FunctionCallResolveNode::): (KJS::FunctionCallBracketNode::): (KJS::FunctionCallDotNode::): (KJS::PrePostResolveNode::): (KJS::PostIncResolveNode::): (KJS::PostDecResolveNode::): (KJS::PostfixBracketNode::): (KJS::PostIncBracketNode::): (KJS::PostDecBracketNode::): (KJS::PostfixDotNode::): (KJS::PostIncDotNode::): (KJS::PostDecDotNode::): (KJS::PostfixErrorNode::): (KJS::DeleteResolveNode::): (KJS::DeleteBracketNode::): (KJS::DeleteDotNode::): (KJS::DeleteValueNode::): (KJS::VoidNode::): (KJS::TypeOfResolveNode::): (KJS::TypeOfValueNode::): (KJS::PreIncResolveNode::): (KJS::PreDecResolveNode::): (KJS::PrefixBracketNode::): (KJS::PreIncBracketNode::): (KJS::PreDecBracketNode::): (KJS::PrefixDotNode::): (KJS::PreIncDotNode::): (KJS::PreDecDotNode::): (KJS::PrefixErrorNode::): (KJS::UnaryOpNode::UnaryOpNode): (KJS::UnaryPlusNode::): (KJS::NegateNode::): (KJS::BitwiseNotNode::): (KJS::LogicalNotNode::): (KJS::BinaryOpNode::BinaryOpNode): (KJS::ReverseBinaryOpNode::ReverseBinaryOpNode): (KJS::MultNode::): (KJS::DivNode::): (KJS::ModNode::): (KJS::AddNode::): (KJS::SubNode::): (KJS::LeftShiftNode::): (KJS::RightShiftNode::): (KJS::UnsignedRightShiftNode::): (KJS::LessNode::): (KJS::GreaterNode::): (KJS::LessEqNode::): (KJS::GreaterEqNode::): (KJS::InstanceOfNode::): (KJS::InNode::): (KJS::EqualNode::): (KJS::NotEqualNode::): (KJS::StrictEqualNode::): (KJS::NotStrictEqualNode::): (KJS::BitAndNode::): (KJS::BitOrNode::): (KJS::BitXOrNode::): (KJS::LogicalAndNode::): (KJS::LogicalOrNode::): (KJS::ConditionalNode::): (KJS::ReadModifyResolveNode::): (KJS::AssignResolveNode::): (KJS::ReadModifyBracketNode::): (KJS::AssignBracketNode::): (KJS::AssignDotNode::): (KJS::ReadModifyDotNode::): (KJS::AssignErrorNode::): (KJS::CommaNode::): (KJS::VarDeclCommaNode::): (KJS::ConstStatementNode::): (KJS::SourceElements::SourceElements): (KJS::EmptyStatementNode::): (KJS::DebuggerStatementNode::): (KJS::ExprStatementNode::): (KJS::VarStatementNode::): (KJS::IfNode::): (KJS::IfElseNode::): (KJS::DoWhileNode::): (KJS::WhileNode::): (KJS::ForNode::): (KJS::ContinueNode::): (KJS::BreakNode::): (KJS::ReturnNode::): (KJS::WithNode::): (KJS::LabelNode::): (KJS::ThrowNode::): (KJS::TryNode::): (KJS::ParameterNode::): (KJS::FuncExprNode::): (KJS::FuncDeclNode::): (KJS::CaseClauseNode::): (KJS::ClauseListNode::): (KJS::CaseBlockNode::): (KJS::SwitchNode::): Changed ParserRefCounted to hold a JSGlobalData pointer, and used it to replace threadInstance calls.

Jun 24, 2008:

11:34 PM Changeset in webkit [34790] by cwzwarich@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-06-24 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Alexey Proskuryakov.

Make the JavaScript shell collect the heap from main() instead of
jscmain() to suppress leak messages in debug builds.

  • kjs/Shell.cpp: (main): (jscmain):
9:35 PM Changeset in webkit [34789] by abarth@webkit.org
  • 4 edits
    2 adds in trunk

WebCore:

2008-06-24 Anonymous

Reviewed by Darin Adler. Committed by Adam Barth.

https://bugs.webkit.org/show_bug.cgi?id=19470

Check for a null documentElement() to fix four crashes.

  • WebCore/dom/Document.cpp:
  • WebCore/dom/Node.cpp:

LayoutTests:

2008-06-24 Anonymous

Reviewed by Darin Adler. Committed by Adam Barth.

https://bugs.webkit.org/show_bug.cgi?id=19470

Check for a null documentElement() to fix four crashes.

  • LayoutTests/fast/dom/documentElement-null-expected.txt: Added.
  • LayoutTests/fast/dom/documentElement-null.html: Added.
9:32 PM Changeset in webkit [34788] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests/platform/mac/fast/parser

Fix png mime-type

9:14 PM Changeset in webkit [34787] by abarth@webkit.org
  • 3 edits
    12 adds in trunk

WebCore:

2008-06-24 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

Fix <https://bugs.webkit.org/show_bug.cgi?id=19597>

Correctly parse <!-- </textarea> --> inside a <textarea>, matching
Internet Explorer, Firefox, Opera, and HTML 5.

Tests: fast/parser/comment-in-script-tricky.html

fast/parser/comment-in-style.html
fast/parser/comment-in-textarea.html
fast/parser/comment-in-title.html

  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::parseSpecial):

LayoutTests:

2008-06-24 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=19597

Test that we correctly parse comments containing end tags in CDATA and
RCDATA contexts.

  • fast/parser/comment-in-script-tricky-expected.txt: Added.
  • fast/parser/comment-in-script-tricky.html: Added.
  • fast/parser/comment-in-style.html: Added.
  • fast/parser/comment-in-textarea.html: Added.
  • fast/parser/comment-in-title-expected.txt: Added.
  • fast/parser/comment-in-title.html: Added.
  • platform/mac/fast/parser/comment-in-style-expected.checksum: Added.
  • platform/mac/fast/parser/comment-in-style-expected.png: Added.
  • platform/mac/fast/parser/comment-in-style-expected.txt: Added.
  • platform/mac/fast/parser/comment-in-textarea-expected.checksum: Added.
  • platform/mac/fast/parser/comment-in-textarea-expected.png: Added.
  • platform/mac/fast/parser/comment-in-textarea-expected.txt: Added.
7:41 PM Changeset in webkit [34786] by mitz@apple.com
  • 2 edits in trunk/LayoutTests

Reviewed by Mark Rowe.

  • add another test using remote fonts to the Tiger skipped list
  • platform/mac-tiger/Skipped: Added fast/css/font-weight-1.html.
7:04 PM Changeset in webkit [34785] by mrowe@apple.com
  • 2 edits in trunk/LayoutTests

2008-06-24 Mark Rowe <mrowe@apple.com>

Exclude the newly-added accessibilityController from the dumped window properties.

  • fast/dom/Window/window-properties.html:
5:41 PM Changeset in webkit [34784] by cwzwarich@webkit.org
  • 4 edits in trunk/JavaScriptCore

2008-06-24 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Maciej.

Make the conversion of the pair (less, jtrue) to jless use register
reference counting information for safety instead of requiring callers
to decide whether it is safe.

No changes on SunSpider codegen.

  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitJumpIfTrue):
  • VM/CodeGenerator.h:
  • kjs/nodes.cpp: (KJS::DoWhileNode::emitCode): (KJS::WhileNode::emitCode): (KJS::ForNode::emitCode): (KJS::CaseBlockNode::emitCodeForBlock):
5:36 PM Changeset in webkit [34783] by mitz@apple.com
  • 3 edits in trunk/WebKitTools

Reviewed by Stephanie Lewis.

  • move the linker flags from the debug configuration in the project to the shared configuration
  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig:
5:03 PM Changeset in webkit [34782] by mitz@apple.com
  • 2 edits in trunk/WebKitTools
  • try to fix the Tiger build
  • DumpRenderTree/mac/AccessibilityControllerMac.mm:
4:03 PM Changeset in webkit [34781] by cwzwarich@webkit.org
  • 6 edits in trunk/JavaScriptCore

2008-06-24 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Rubber stamped by Oliver.

Roll out r34777 due to multiple assertion failures on tests.

  • ChangeLog:
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitJump): (KJS::CodeGenerator::emitJumpIfTrueMayCombine): (KJS::CodeGenerator::emitJumpIfTrue): (KJS::CodeGenerator::emitJumpIfFalse): (KJS::CodeGenerator::emitJumpScopes):
  • VM/LabelID.h:
  • VM/Machine.cpp: (KJS::Machine::privateExecute):
  • VM/Machine.h:
  • VM/Opcode.h:
3:31 PM Changeset in webkit [34780] by justin.garcia@apple.com
  • 5 edits
    2 adds in trunk

WebCore:

2008-06-24 Justin Garcia <justin.garcia@apple.com>

Reviewed by John.

<rdar://problem/6026335> REGRESSION: Caret disappears after deleting a particular selection involving a ToDo


  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::moveParagraphs): If asked to preserveStyle, we apply styles from the moved paragraph to the destination with applyStyle, which does selection preservation when it needs to apply block styles. Selection preservation uses relatively untested code in TextIterator to count VisiblePositions which fails in this particular test case because it doesn't handle changes in editability properly. We can avoid this bug by not applying block styles from moved paragraphs. This is something that should be done anyway, since the moved paragraph should assume the block styles of the destination.
  • editing/EditCommand.cpp: (WebCore::EditCommand::styleAtPosition): Added a FIXME about how it is misleading for this function to also include the typing style.
  • editing/TextIterator.h: Added a FIXME about how the code path used for selection preservation is buggy and should be phased out when we rewrite moveParagraphs.

LayoutTests:

2008-06-24 Justin Garcia <justin.garcia@apple.com>

Reviewed by John.

<rdar://problem/6026335> REGRESSION: Caret disappears after deleting a particular selection involving a ToDo

  • editing/deleting/6026335-expected.txt: Added.
  • editing/deleting/6026335.html: Added.
2:30 PM Changeset in webkit [34779] by kmccullough@apple.com
  • 1 edit
    1 add in trunk/WebCore

2008-06-24 Kevin McCullough <kmccullough@apple.com>

-Added a manual test for the profiler.

  • manual-tests/inspector/profiler-test-compare-multiple-profiles.html: Added.
2:22 PM Changeset in webkit [34778] by kmccullough@apple.com
  • 4 edits in trunk/JavaScriptCore

2008-06-24 Kevin McCullough <kmccullough@apple.com>

Reviewed by Tim.

<rdar://problem/6031594> JSProfiler: Profiler goes into an infinite
loop sometimes.
<rdar://problem/6031603> JSProfiler: Profiler asserts in debug and
give the wrong times in release

Fixed two issues found by Tim in the same test.

  • profiler/Profile.cpp: (KJS::Profile::removeProfileStart): No longer take profile's time from all ancestors, but instead attribute it to its parent. Also add an Assert to ensure we only delete the child we mean to. (KJS::Profile::removeProfileEnd): Ditto for profileEnd. (KJS::Profile::didExecute): Cleaned up the execution order and correctly attribute all of the parent's time to the new node.
  • profiler/ProfileNode.cpp: If this node does not have a startTime it should not get a giant total time, but instead be 0. (KJS::ProfileNode::endAndRecordCall):
  • profiler/ProfileNode.h: (KJS::ProfileNode::removeChild): Should reset the sibling pointers since one of them has been removed.
2:19 PM Changeset in webkit [34777] by oliver@apple.com
  • 6 edits in trunk/JavaScriptCore

Groundwork for reimplementing the slow script dialog

Reviewed by Cameron.

Add special loop opcodes as groundwork for slow script
termination. Also added a few assertions to prevent us
from accidentally coalescing conditional jump operands
in a way that might bypass the slow script opcodes.

2:02 PM Changeset in webkit [34776] by Beth Dakin
  • 9 edits
    6 adds in trunk

WebKitTools:

2008-06-24 Sam Weinig and Beth Dakin <Beth Dakin and sam@webkit.org>

Reviewed by Darin.

Fix for <rdar://problem/5884881> Make DumpRenderTree support
accessibility tests

This patch adds some basic support for accessibility layout tests
on the Mac.

  • DumpRenderTree/AccessibilityController.cpp: Added. (AccessibilityController::AccessibilityController): (AccessibilityController::~AccessibilityController): (dumpCurrentAttributesCallback): (AccessibilityController::makeWindowObject): (AccessibilityController::getJSClass): (AccessibilityController::staticFunctions):
  • DumpRenderTree/AccessibilityController.h: Added.
  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/mac/AccessibilityControllerMac.mm: Added. (descriptionOfValue): (AccessibilityController::dumpCurrentAttributes):
  • DumpRenderTree/mac/DumpRenderTree.mm:
  • DumpRenderTree/mac/FrameLoadDelegate.h:
  • DumpRenderTree/mac/FrameLoadDelegate.mm: (-[FrameLoadDelegate init]): (-[FrameLoadDelegate webView:didClearWindowObject:forFrame:]):

LayoutTests:

2008-06-24 Sam Weinig and Beth Dakin <Beth Dakin and sam@webkit.org>

Reviewed by Darin.


First test for <rdar://problem/5884881> Make DumpRenderTree support
accessibility tests

  • accessibility: Added.
  • accessibility/document-attributes-expected.txt: Added.
  • accessibility/document-attributes.html: Added.
  • platform/gtk/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
1:09 PM Changeset in webkit [34775] by weinig@apple.com
  • 7 edits
    7 adds in trunk

WebCore:

2008-06-24 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Add support for loadstart, abort and error events for XMLHttpRequests.

Tests: http/tests/xmlhttprequest/onabort-event.html

http/tests/xmlhttprequest/onerror-event.html
http/tests/xmlhttprequest/onloadstart-event.html

  • bindings/js/JSXMLHttpRequestCustom.cpp: (WebCore::JSXMLHttpRequest::mark): (WebCore::JSXMLHttpRequest::onreadystatechange): (WebCore::JSXMLHttpRequest::onabort): (WebCore::JSXMLHttpRequest::setOnabort): (WebCore::JSXMLHttpRequest::onerror): (WebCore::JSXMLHttpRequest::setOnerror): (WebCore::JSXMLHttpRequest::onload): (WebCore::JSXMLHttpRequest::onloadstart): (WebCore::JSXMLHttpRequest::setOnloadstart): (WebCore::JSXMLHttpRequest::onprogress):
  • dom/EventNames.h:
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::callReadyStateChangeListener): (WebCore::XMLHttpRequest::createRequest): (WebCore::XMLHttpRequest::abort): (WebCore::XMLHttpRequest::networkError): (WebCore::XMLHttpRequest::abortError): (WebCore::XMLHttpRequest::didFail): (WebCore::XMLHttpRequest::updateAndDispatchOnProgress): (WebCore::XMLHttpRequest::dispatchReadyStateChangeEvent): (WebCore::XMLHttpRequest::dispatchXMLHttpRequestProgressEvent): (WebCore::XMLHttpRequest::dispatchAbortEvent): (WebCore::XMLHttpRequest::dispatchErrorEvent): (WebCore::XMLHttpRequest::dispatchLoadEvent): (WebCore::XMLHttpRequest::dispatchLoadStartEvent): (WebCore::XMLHttpRequest::dispatchProgressEvent):
  • xml/XMLHttpRequest.h: (WebCore::XMLHttpRequest::setOnAbortListener): (WebCore::XMLHttpRequest::onAbortListener): (WebCore::XMLHttpRequest::setOnErrorListener): (WebCore::XMLHttpRequest::onErrorListener): (WebCore::XMLHttpRequest::setOnLoadStartListener): (WebCore::XMLHttpRequest::onLoadStartListener):
  • xml/XMLHttpRequest.idl:

LayoutTests:

2008-06-24 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Add tests for loadstart, abort and error events for XMLHttpRequests

  • http/tests/xmlhttprequest/onabort-event-expected.txt: Added.
  • http/tests/xmlhttprequest/onabort-event.html: Added.
  • http/tests/xmlhttprequest/onerror-event-expected.txt: Added.
  • http/tests/xmlhttprequest/onerror-event.html: Added.
  • http/tests/xmlhttprequest/onloadstart-event-expected.txt: Added.
  • http/tests/xmlhttprequest/onloadstart-event.html: Added.
  • http/tests/xmlhttprequest/resources/get.txt: Added.
1:03 PM Changeset in webkit [34774] by sullivan@apple.com
  • 2 edits in trunk/WebKitTools

2008-06-24 John Sullivan <sullivan@apple.com>

Reviewed by Dan Bernstein

  • Scripts/extract-localizable-strings: add UI_STRING_LOCALIZE_LATER, LPCTSTR_UI_STRING_LOCALIZE_LATER, and LOG_WARNING to the list of debugging macros, to avoid noise when keeping the list of localized string exceptions up to date
1:00 PM Changeset in webkit [34773] by Darin Adler
  • 2 edits in trunk/JavaScriptCore

2008-06-24 Darin Adler <Darin Adler>

Reviewed by Cameron.

  • kjs/JSObject.cpp: (KJS::JSObject::put): Remove an untested optimization I checked in by accident. The two loops up the prototype chain both need to start from this; instead the second loop was starting where the first loop left off.
12:56 PM Changeset in webkit [34772] by andersca@apple.com
  • 2 edits in trunk/WebCore

2008-06-24 Anders Carlsson <andersca@apple.com>

Reviewed by Mitz.

<rdar://problem/5957606>
CrashTracer: [USER] 2 crashes in Safari at com.apple.WebCore: WebCore::DocumentLoader::cancelPendingSubstituteLoad + 23

Remove the loader from the document loader after calling didFail, so that the loader will be deferred corectly
in case the call do didFail starts a new run loop.


  • loader/NetscapePlugInStreamLoader.cpp: (WebCore::NetscapePlugInStreamLoader::didCancel):
12:54 PM Changeset in webkit [34771] by mitz@apple.com
  • 5 edits
    14 adds in trunk

WebKitTools:

Rubber-stamped by Darin Adler.

  • add a font family for testing font-weight
  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Added linker flags to create data sections for the WeightWatcher fonts.
  • DumpRenderTree/fonts: Added.
  • DumpRenderTree/fonts/WebKitWeightWatcher100.ttf: Added.
  • DumpRenderTree/fonts/WebKitWeightWatcher200.ttf: Added.
  • DumpRenderTree/fonts/WebKitWeightWatcher300.ttf: Added.
  • DumpRenderTree/fonts/WebKitWeightWatcher400.ttf: Added.
  • DumpRenderTree/fonts/WebKitWeightWatcher500.ttf: Added.
  • DumpRenderTree/fonts/WebKitWeightWatcher600.ttf: Added.
  • DumpRenderTree/fonts/WebKitWeightWatcher700.ttf: Added.
  • DumpRenderTree/fonts/WebKitWeightWatcher800.ttf: Added.
  • DumpRenderTree/fonts/WebKitWeightWatcher900.ttf: Added.
  • DumpRenderTree/mac/DumpRenderTree.mm: (activateFonts): Renamed activateAhemFont to this and made it activate the WeightWatcher fonts in addition to Ahem. (prepareConsistentTestingEnvironment): Adjusted for the name change.
  • DumpRenderTree/win/DumpRenderTree.cpp: (initialize): Added the WeightWatcher fonts.

LayoutTests:

Rubber-stamped by Darin Adler.

  • add font-weight test for a family that has 9 weights
  • fast/css/font-weight-1.html: Added.
  • platform/mac/fast/css/font-weight-1-expected.checksum: Added.
  • platform/mac/fast/css/font-weight-1-expected.png: Added.
  • platform/mac/fast/css/font-weight-1-expected.txt: Added.
12:50 PM Changeset in webkit [34770] by sfalken@apple.com
  • 2 edits in trunk/JavaScriptCore

Build fix.

  • kjs/nodes.cpp:
11:06 AM Changeset in webkit [34769] by sullivan@apple.com
  • 2 edits in trunk/WebKit

2008-06-24 John Sullivan <sullivan@apple.com>

Rubber-stamped by Sam Weinig

  • StringsNotToBeLocalized.txt: brought this file up to date
8:43 AM Changeset in webkit [34768] by ap@webkit.org
  • 3 edits in trunk/WebCore

Release build fix.

  • bindings/js/JSCustomSQLStatementErrorCallback.cpp: (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
  • bindings/js/JSCustomSQLTransactionCallback.cpp: (WebCore::JSCustomSQLTransactionCallback::handleEvent): Initialize callbackCallType, as the compiler is not smart enough to figure out data flow.
7:33 AM Changeset in webkit [34767] by Simon Hausmann
  • 3 edits in trunk/JavaScriptCore

2008-06-24 Joerg Bornemann <joerg.bornemann@trolltech.com>

Reviewed by Simon.

For the Qt build on Windows don't depend on the presence of GNU CPP
but use MSVC's preprocessor instead.
dftables accepts a --preprocessor option which is set in pcre.pri for MSVC platforms.

5:35 AM Changeset in webkit [34766] by ap@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Darin.

https://bugs.webkit.org/show_bug.cgi?id=19723
REGRESSION(r34648): Some SVG tests crash when running under --threaded

  • rendering/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::destroy): Do not attempt to paint during document destruction, because rendering structures are not kept in a consistent state then.
4:28 AM Changeset in webkit [34765] by Simon Hausmann
  • 6 edits in trunk/WebCore

2008-06-24 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>

Reviewed by Darin.

https://bugs.webkit.org/show_bug.cgi?id=19727

Return bool from GraphicsContext::getShadow() so the tests aren't duplicated so
many times in Cairo and Qt ports.

3:58 AM Changeset in webkit [34764] by Simon Hausmann
  • 2 edits in trunk/WebCore

2008-06-24 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>

Reviewed by Simon.

https://bugs.webkit.org/show_bug.cgi?id=18459

Clean up and remove unused platform shadow code.

Minor edits by Simon, removed unused TextShadow struct.

3:35 AM Changeset in webkit [34763] by Simon Hausmann
  • 3 edits in trunk/WebCore

2008-06-24 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>

Reviewed by Simon.

https://bugs.webkit.org/show_bug.cgi?id=18459

Implemented basic text-shadow support for the Qt port.

3:27 AM Changeset in webkit [34762] by Simon Hausmann
  • 8 edits in trunk

Fix the Qt build, adapt to various JSCore API changes.

3:07 AM Changeset in webkit [34761] by ap@webkit.org
  • 3 edits in trunk/WebCore

Remove XMLHttpRequestProgressEvent.cpp from more project files.

  • GNUmakefile.am:
  • WebCore.pro:
2:51 AM Changeset in webkit [34760] by ap@webkit.org
  • 2 edits in trunk/JavaScriptCore

Reviewed by Cameron Zwarich.

Make ParserRefCountedCounter actually perform a leak check.

  • kjs/nodes.cpp: (KJS::ParserRefCountedCounter::~ParserRefCountedCounter): Check for leaks in destructor, not in constructor. (KJS::ParserRefCountedCounter::increment): (KJS::ParserRefCountedCounter::decrement): (KJS::ParserRefCounted::ParserRefCounted): (KJS::ParserRefCounted::~ParserRefCounted): While at it, also made counting thread-safe.
2:39 AM Changeset in webkit [34759] by Simon Hausmann
  • 2 edits in trunk/WebCore

2008-06-24 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Simon.

For the Qt port, fix linking with MinGW.

  • WebCore.pro:
2:38 AM Changeset in webkit [34758] by cwzwarich@webkit.org
  • 3 edits
    3 adds in trunk

2008-06-24 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Oliver.

Bug 19730: REGRESSION (r34497): Text in alerts in "Leisure suit Larry" is not wrapped
<https://bugs.webkit.org/show_bug.cgi?id=19730>

Do not convert the pair (less, jtrue) to jless when jtrue is a jump
target. An example of this is when the condition of a while loop is a
LogicalOrNode.

JavaScriptCore:

  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitLabel):

LayoutTests:

  • fast/js/codegen-loops-logical-nodes-expected.txt: Added.
  • fast/js/codegen-loops-logical-nodes.html: Added.
  • fast/js/resources/codegen-loops-logical-nodes.js: Added.
2:06 AM Changeset in webkit [34757] by Simon Hausmann
  • 3 edits in trunk/JavaScriptCore

2008-06-20 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Adam Roben.

Fix compile with MinGW.

  • kjs/Shell.cpp:
  • wtf/Threading.h: (WTF::atomicIncrement): (WTF::atomicDecrement):
Note: See TracTimeline for information about the timeline view.