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

Timeline



Jan 18, 2010:

11:58 PM WebKit Team edited by abarth@webkit.org
(diff)
11:22 PM Changeset in webkit [53456] by barraclough@apple.com
  • 5 edits in trunk/JavaScriptCore

Revert r53454, since it causes much sadness in this world.

Patch by Gavin Barraclough <barraclough@apple.com> on 2010-01-18
Reviewed by NOBODY (build fix).

  • runtime/UString.cpp:

(JSC::UString::spliceSubstringsWithSeparators):
(JSC::UString::replaceRange):

  • runtime/UStringImpl.cpp:

(JSC::UStringImpl::baseSharedBuffer):
(JSC::UStringImpl::sharedBuffer):
(JSC::UStringImpl::~UStringImpl):

  • runtime/UStringImpl.h:

(JSC::UntypedPtrAndBitfield::UntypedPtrAndBitfield):
(JSC::UntypedPtrAndBitfield::asPtr):
(JSC::UntypedPtrAndBitfield::operator&=):
(JSC::UntypedPtrAndBitfield::operator|=):
(JSC::UntypedPtrAndBitfield::operator&):
(JSC::UStringImpl::create):
(JSC::UStringImpl::cost):
(JSC::UStringImpl::isIdentifier):
(JSC::UStringImpl::setIsIdentifier):
(JSC::UStringImpl::ref):
(JSC::UStringImpl::deref):
(JSC::UStringImpl::checkConsistency):
(JSC::UStringImpl::UStringImpl):
(JSC::UStringImpl::bufferOwnerString):
(JSC::UStringImpl::bufferOwnership):
(JSC::UStringImpl::isStatic):

  • wtf/StringHashFunctions.h:

(WTF::stringHash):

11:00 PM Changeset in webkit [53455] by ggaren@apple.com
  • 6 edits
    2 adds in trunk

2010-01-18 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.

REGRESSION (52082): Crash on worker thread when reloading http://radnan.public.iastate.edu/procedural/
https://bugs.webkit.org/show_bug.cgi?id=33826

This bug was caused by a GC-protected object being destroyed early by
Heap::destroy. Clients of the GC protect APIs (reasonably) expect pointers
to GC-protected memory to be valid.

The solution is to do two passes of tear-down in Heap::destroy. The first
pass tears down all unprotected objects. The second pass ASSERTs that all
previously protected objects are now unprotected, and then tears down
all perviously protected objects. These two passes simulate the two passes
that would have been required to free a protected object during normal GC.


  • API/JSContextRef.cpp: Removed some ASSERTs that have moved into Heap.
  • runtime/Collector.cpp: (JSC::Heap::destroy): Moved ASSERTs to here. (JSC::Heap::freeBlock): Tidied up the use of didShrink by moving its setter to the function that does the shrinking. (JSC::Heap::freeBlocks): Implemented above algorithm. (JSC::Heap::shrinkBlocks): Tidied up the use of didShrink.

2010-01-18 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.

REGRESSION (52082): Crash on worker thread when reloading http://radnan.public.iastate.edu/procedural/
https://bugs.webkit.org/show_bug.cgi?id=33826

Test: fast/workers/worker-gc2.html

  • bindings/js/WorkerScriptController.cpp: (WebCore::WorkerScriptController::~WorkerScriptController): Removed some ASSERTs that have moved to JavaScriptCore.

2010-01-18 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.

REGRESSION (52082): Crash on worker thread when reloading http://radnan.public.iastate.edu/procedural/
https://bugs.webkit.org/show_bug.cgi?id=33826


Added a test for this edge case.

  • fast/workers/resources/worker-gc2.js: Added. (Dummy):
  • fast/workers/worker-gc2.html: Added.
9:51 PM Changeset in webkit [53454] by barraclough@apple.com
  • 5 edits in trunk/JavaScriptCore

https://bugs.webkit.org/show_bug.cgi?id=33731
Remove UntypedPtrAndBitfield from UStringImpl (akin to PtrAndFlags).

Patch by Gavin Barraclough <barraclough@apple.com> on 2010-01-18
Reviewed by Oliver Hunt.

This break the OS X Leaks tool. Instead, free up some more bits from the refCount.

  • runtime/UStringImpl.cpp:

(JSC::UStringImpl::sharedBuffer):
(JSC::UStringImpl::~UStringImpl):

  • runtime/UStringImpl.h:

(JSC::UStringImpl::cost):
(JSC::UStringImpl::checkConsistency):
(JSC::UStringImpl::UStringImpl):
(JSC::UStringImpl::bufferOwnerString):
(JSC::UStringImpl::):

  • wtf/StringHashFunctions.h:

(WTF::stringHash):

8:32 PM Changeset in webkit [53453] by dbates@webkit.org
  • 1 edit
    1 add in trunk/LayoutTests

2010-01-18 Daniel Bates <dbates@webkit.org>

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

Unreviewed. Add expected results for Windows.

  • platform/win/fast/lists/w3-css3-list-styles-alphabetic-expected.txt: Added.
7:10 PM Changeset in webkit [53452] by dbates@webkit.org
  • 10 edits
    2 adds in trunk

2010-01-18 Daniel Bates <dbates@webkit.org>

Reviewed by Darin Adler.

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

Implements all of the alphabetic CSS3 list-style-types as per
section 4.4 of the CSS3 Lists module <http://www.w3.org/TR/css3-lists/#alphabetic>.

Test: fast/lists/w3-css3-list-styles-alphabetic.html

  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue): Updated comment to include added list-style-types.
  • css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added new list style types, alphabetized enums, and removed indent to conform to the WebKit Code Style Guidelines.
  • css/CSSValueKeywords.in:
  • inspector/front-end/CSSSourceSyntaxHighlighter.js: (WebInspector.CSSSourceSyntaxHighlighter): Added new list style types and alphabetized array valueKeywords.
  • platform/text/CharacterNames.h: Added constant ethiopicPrefaceColon.
  • rendering/RenderListMarker.cpp: (WebCore::toAlphabetic): (WebCore::listMarkerSuffix): Added. (WebCore::listMarkerText): (WebCore::RenderListMarker::paint): Modified to call WebCore::listMarkerSuffix. (WebCore::RenderListMarker::calcPrefWidths): Ditto. (WebCore::RenderListMarker::getRelativeMarkerRect): Ditto.
  • rendering/style/RenderStyle.h: (WebCore::):
  • rendering/style/RenderStyleConstants.h: (WebCore::):

2010-01-18 Daniel Bates <dbates@webkit.org>

Reviewed by Darin Adler.

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

Tests that all of the alphabetic CSS3 list-style-types are supported.

  • fast/lists/w3-css3-list-styles-alphabetic.html: Added.
  • platform/mac/fast/lists/w3-css3-list-styles-alphabetic-expected.txt: Added.
7:08 PM Changeset in webkit [53451] by dbates@webkit.org
  • 2 edits in trunk/WebCore

2010-01-18 Daniel Bates <dbates@webkit.org>

Unreviewed, fix misspelling of the word maximum in comment.

  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::maximum):
6:59 PM Changeset in webkit [53450] by mitz@apple.com
  • 17 edits in trunk

Rubber-stamped by Sam Weinig.

<rdar://problem/7476957> REGRESSION (r49567): Business widget list does not line up: too tall due to line height rounding change

WebCore:

Reverted r49567.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::computeLogicalBoxHeights):

  • rendering/RenderBR.cpp:

(WebCore::RenderBR::lineHeight):

  • rendering/style/RenderStyle.h:

(WebCore::InheritedFlags::computedLineHeight):

LayoutTests:

Reverted r49567, but left in the test added in that revision, now with a failing result.

  • css1/font_properties/font.html:
  • fast/css/line-height-rounding-expected.txt:
  • platform/mac/css1/font_properties/font-expected.txt:
  • platform/mac/css2.1/t090501-c414-flt-ln-00-d-expected.txt:
  • platform/mac/css2.1/t090501-c414-flt-ln-01-d-g-expected.txt:
  • platform/mac/css2.1/t090501-c414-flt-ln-02-d-expected.txt:
  • platform/mac/css2.1/t090501-c414-flt-ln-03-d-expected.txt:
  • platform/mac/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.checksum:
  • platform/mac/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.txt:
  • platform/mac/svg/custom/svg-fonts-in-html-expected.checksum:
  • platform/mac/svg/custom/svg-fonts-in-html-expected.txt:
6:56 PM Changeset in webkit [53449] by steveblock@google.com
  • 4 edits
    1 add in trunk/WebCore

Moves JSC-specific implementation of JavaString to a private implementation class.
https://bugs.webkit.org/show_bug.cgi?id=33558

Reviewed by Adam Barth.

Also modifies JavaField::name and JavaMethod::name to return const JavaString&, rather than UString::Rep*,
which is JSC-specific. This allows this code to be used with both JSC and V8, as required by Android.

No new tests, refactoring only.

  • WebCore.xcodeproj/project.pbxproj: Modified. Added JavaStringJSC.h
  • bridge/jni/jni_class.cpp: Modified.

(JavaClass::JavaClass): Modified. Updates call sites of JavaField::name and JavaMethod::name.

  • bridge/jni/jni_runtime.h: Modified.

(JSC::Bindings::JavaString::JavaString): Modified. Pass through to implementation.
(JSC::Bindings::JavaString::UTF8String): Modified. Pass through to implementation.
(JSC::Bindings::JavaString::uchars): Modified. Pass through to implementation.
(JSC::Bindings::JavaString::length): Modified. Pass through to implementation.
(JSC::Bindings::JavaString::operator UString): Modified. Pass through to implementation.
(JSC::Bindings::JavaField::name): Modified. Pass through to implementation.
(JSC::Bindings::JavaMethod::name): Modified. Pass through to implementation.

  • bridge/jni/jsc/JavaStringJSC.h: Added.

(JSC::Bindings::JavaStringImpl::~JavaStringImpl):
(JSC::Bindings::JavaStringImpl::init):
(JSC::Bindings::JavaStringImpl::UTF8String):
(JSC::Bindings::JavaStringImpl::uchars):
(JSC::Bindings::JavaStringImpl::length):
(JSC::Bindings::JavaStringImpl::uString):

6:53 PM Changeset in webkit [53448] by eric@webkit.org
  • 4 edits in trunk

2010-01-18 Yuzo Fujishima <yuzo@google.com>

Reviewed by Darin Adler.

Skip an error after invalid blocks in a CSS expression.
https://bugs.webkit.org/show_bug.cgi?id=33650

  • fast/css/parsing-error-recovery.html:

2010-01-18 Yuzo Fujishima <yuzo@google.com>

Reviewed by Darin Adler.

Skip an error after invalid blocks in a CSS expression.
https://bugs.webkit.org/show_bug.cgi?id=33650

  • css/CSSGrammar.y:
6:22 PM Changeset in webkit [53447] by barraclough@apple.com
  • 5 edits in trunk/WebCore

https://bugs.webkit.org/show_bug.cgi?id=33731
Remove uses of PtrAndFlags from WebCore::StringImpl.

Reviewed by Darin Adler & Oliver Hunt.

These break the OS X Leaks tool. Move the management of null-terminated copies
out from StringImpl to String, and use a bit stolen from the refCount to hold the
'InTable' flag.

  • platform/sql/SQLiteFileSystem.cpp:

(WebCore::SQLiteFileSystem::openDatabase):

  • platform/sql/SQLiteStatement.cpp:

(WebCore::SQLiteStatement::prepare):

  • platform/sql/SQLiteStatement.h:
  • platform/text/PlatformString.h:
  • platform/text/String.cpp:

(WebCore::String::copyWithNullTermination):

  • platform/text/StringImpl.cpp:

(WebCore::StringImpl::StringImpl):
(WebCore::StringImpl::~StringImpl):
(WebCore::StringImpl::create):
(WebCore::StringImpl::crossThreadString):
(WebCore::StringImpl::sharedBuffer):

  • platform/text/StringImpl.h:

(WebCore::StringImpl::inTable):
(WebCore::StringImpl::setInTable):

6:20 PM WikiStart edited by skyul@company100.net
(diff)
6:17 PM Changeset in webkit [53446] by Nikolas Zimmermann
  • 32 edits
    12 adds in trunk

2010-01-18 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Dirk Schulze.

Rewrite SVG <use> support in a modern-fashion
https://bugs.webkit.org/show_bug.cgi?id=33776

Tests: svg/custom/relative-sized-deep-shadow-tree-content.xhtml

svg/custom/relative-sized-shadow-tree-content.xhtml

Fixes: svg/W3C-SVG-1.1/animate-elem-30-t.svg (animated circle sometimes takes wrong path)

Rewrite <use> support in less intrusive way. Try hard to avoid recloning where possible, and do it lazily.
Introduce RenderSVGShadowTreeRootContainer as special renderer for SVGUseElement, that now manages the
render tree, instead of SVGUseElement manually hacking around it's own renderer from the DOM side.

Instead of recloning the whole shadow tree for every attribute change (DOM setAttribute / SVG DOM changes / CSS changes / childrenChanged()...)
just notify the RenderSVGShadowTreeRootContainer that it's supposed to reclone the tree upon the next updateFromElement() call.

updateFromElement() is fired from SVGUseElement::attach() / recalcStyle(), as it's done for HTMLFormControlElement/HTMLMediaElement, thus
lazily recloning the shadow tree if necessary.

Animations for <use> elements was a real performance bottlenck as the tree got recloned on every attribute change. Reclones are _completly_
avoided for animations now - the SVGAnim*Element classes already updated the instances of an element manually, though that resulted in a reclone
nontheless, and thus killing performance. <use> elements can only be recloned through mutations of the elements that they reference to.
For example referencing a <rect> element from a <use> element and scripting the <rect> element (setAttribute, or child tree mutations etc.).
We reclone instead of trying to synchronize trees - as it's currenty implemented - because it's very hard to do it right.

Any DOM / SVG DOM / CSS change on the <use> element don't reclone the tree anymore, this is a huge speed benefit.
x/y attribute changes are correctly handled in the render tree now (by an additional local transformation), now percentual values work
as expected, and resize on window changes - affecting lots of testcases.

The <use> implementation is much safer now, not doing any mutations synchronously from svgAttributeChanged etc.
Remove hack to force garbage collection on SVGElementInstance destruction - can't reproduce it anymore.

  • Android.mk: Add new files to build.
  • GNUmakefile.am: Ditto.
  • WebCore.gypi: Ditto.
  • WebCore.pro: Ditto.
  • WebCore.vcproj/WebCore.vcproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • rendering/RenderSVGShadowTreeRootContainer.cpp: Added. This is the rendered now created by SVGUseElement. (WebCore::RenderSVGShadowTreeRootContainer::RenderSVGShadowTreeRootContainer): (WebCore::RenderSVGShadowTreeRootContainer::~RenderSVGShadowTreeRootContainer): (WebCore::RenderSVGShadowTreeRootContainer::updateStyle): Used form SVGUseElement to request style recalculations for the shadow tree renderers (WebCore::RenderSVGShadowTreeRootContainer::updateFromElement): Used from SVGUseElement attach/recalcStyle to eventually request shadow tree updates. (WebCore::RenderSVGShadowTreeRootContainer::styleDidChange): Used to propage style updates across shadow tree boundaries.
  • rendering/RenderSVGShadowTreeRootContainer.h: Added. (WebCore::RenderSVGShadowTreeRootContainer::markShadowTreeForRecreation): Marks the shadow tree for a reclone, next time updateFromElement is used.
  • rendering/RenderSVGTransformableContainer.cpp: (WebCore::RenderSVGTransformableContainer::calculateLocalTransform): Take containerTranslation() into account, supplied by RenderSVGSDhadowTreeContainer.
  • rendering/SVGShadowTreeElements.cpp: Added. This is the root element of the SVG shadow tree residing as (hidden) child of SVGUseElement (DOM wise). (WebCore::SVGShadowTreeContainerElement::SVGShadowTreeContainerElement): (WebCore::SVGShadowTreeContainerElement::~SVGShadowTreeContainerElement): (WebCore::SVGShadowTreeContainerElement::containerTranslation): Used from calculateLocalTransform() to take x/y translation into account for shadow tree container elements. (WebCore::SVGShadowTreeRootElement::SVGShadowTreeRootElement): (WebCore::SVGShadowTreeRootElement::~SVGShadowTreeRootElement): (WebCore::SVGShadowTreeRootElement::attachElement): Used by RenderSVGShadowTreeRootContainer, instead of attach(), as we're a shadow tree root node.
  • rendering/SVGShadowTreeElements.h: Added. This is the root element of each SVG shadow sub-tree (whenever a <use> element is expanded in the shadow tree). (WebCore::SVGShadowTreeContainerElement::isShadowTreeContainerElement): Return true here. (WebCore::SVGShadowTreeContainerElement::setContainerOffset): Used from SVGUseElement to propagate x/y translation values set on <use> elements in the shadow tree. (WebCore::SVGShadowTreeRootElement::isShadowNode): Identify us as shadow node. (WebCore::SVGShadowTreeRootElement::shadowParentNode): Ditto. Return actual shadow parent node (== corresponding use element).
  • svg/SVGElement.cpp: Shrink size of all SVG*Elements, by removing the m_shadowParent parent. SVGShadowTreeRootElement is the new base class for shadow tree. (WebCore::SVGElement::SVGElement): (WebCore::SVGElement::eventParentNode): Call virtual shadowParentNode() method, instead of accessing m_shadowParent.
  • svg/SVGElement.h: Remove isShadowNode() / shadowParentNode() / setShadowParentNode().
  • svg/SVGElementInstance.cpp: Remove the hack, calling garbage collection before destruction. Can't reproduce this anymore, let's see what the bots say. (WebCore::SVGElementInstance::SVGElementInstance): Remove now unnecessary m_needsUpdate flag. (WebCore::SVGElementInstance::invalidateAllInstancesOfElement): Don't invalidate if instance updates are blocked (see SVGStyledElement changes)
  • svg/SVGElementInstance.h: Remove m_needsUpdate, and forgetWrapper() method.
  • svg/SVGGElement.h: (WebCore::SVGGElement::isShadowTreeContainerElement): Add new virtual method here returning false by default, SVGShadowTreeContainerElement will override it.
  • svg/SVGStyledElement.cpp: Remove gElementsWithInstanceUpdatesBlocked HashSet tracking the state of instancesUpdatesBlocked() per SVGStyledElement - make it a member variable.
  • svg/SVGStyledElement.h: Add inline getter/setters around m_instanceUpdatesBlocked. (WebCore::SVGStyledElement::instanceUpdatesBlocked): (WebCore::SVGStyledElement::setInstanceUpdatesBlocked):
  • svg/SVGUseElement.cpp: Full rewrite of <use> support, a detailed discussion would blow the ChangeLog - see short version above. (WebCore::SVGUseElement::SVGUseElement): (WebCore::SVGUseElement::instanceRoot): (WebCore::SVGUseElement::insertedIntoDocument): (WebCore::SVGUseElement::removedFromDocument): (WebCore::SVGUseElement::svgAttributeChanged): (WebCore::updateContainerOffset): (WebCore::SVGUseElement::updateContainerOffsets): (WebCore::SVGUseElement::recalcStyle): (WebCore::dumpInstanceTree): (WebCore::SVGUseElement::buildPendingResource): (WebCore::SVGUseElement::buildShadowAndInstanceTree): (WebCore::SVGUseElement::createRenderer): (WebCore::updateFromElementCallback): (WebCore::SVGUseElement::attach): (WebCore::SVGUseElement::detach): (WebCore::SVGUseElement::toClipPath): (WebCore::SVGUseElement::buildInstanceTree): (WebCore::SVGUseElement::handleDeepUseReferencing): (WebCore::SVGUseElement::buildShadowTree): (WebCore::SVGUseElement::expandUseElementsInShadowTree): (WebCore::SVGUseElement::expandSymbolElementsInShadowTree): (WebCore::SVGUseElement::instanceForShadowTreeElement): (WebCore::SVGUseElement::invalidateShadowTree): (WebCore::SVGUseElement::transferUseAttributesToReplacedElement):
  • svg/SVGUseElement.h: (WebCore::SVGUseElement::isPendingResource):

2010-01-18 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Dirk Schulze.

Rewrite SVG <use> support in a modern-fashion
https://bugs.webkit.org/show_bug.cgi?id=33776

Update some test results, after rewriting <use> support.

  • platform/mac/svg/W3C-SVG-1.1/animate-elem-40-t-expected.txt:
  • platform/mac/svg/custom/relative-sized-deep-shadow-tree-content-expected.checksum: Added.
  • platform/mac/svg/custom/relative-sized-deep-shadow-tree-content-expected.png: Added.
  • platform/mac/svg/custom/relative-sized-deep-shadow-tree-content-expected.txt: Added.
  • platform/mac/svg/custom/relative-sized-shadow-tree-content-expected.checksum: Added.
  • platform/mac/svg/custom/relative-sized-shadow-tree-content-expected.png: Added.
  • platform/mac/svg/custom/relative-sized-shadow-tree-content-expected.txt: Added.
  • platform/mac/svg/custom/use-events-crash-expected.txt:
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-1-expected.txt:
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-3-expected.txt:
  • platform/mac/svg/custom/use-on-non-svg-namespaced-element-expected.txt:
  • platform/mac/svg/custom/use-recursion-1-expected.txt:
  • platform/mac/svg/custom/use-recursion-2-expected.txt:
  • platform/mac/svg/custom/use-recursion-3-expected.txt:
  • platform/mac/svg/custom/use-recursion-4-expected.txt:
  • platform/mac/svg/hixie/error/017-expected.txt:
  • platform/mac/svg/text/text-text-05-t-expected.checksum:
  • platform/mac/svg/text/text-text-05-t-expected.png:
  • svg/custom/relative-sized-deep-shadow-tree-content.xhtml: Added.
  • svg/custom/relative-sized-shadow-tree-content.xhtml: Added.
  • svg/text/text-text-05-t.svg: Remove possible race-condition, between selecting & dumping.
5:49 PM Changeset in webkit [53445] by tkent@chromium.org
  • 14 edits in trunk

2010-01-18 Kent Tamura <tkent@chromium.org>

Reviewed by Darin Adler.

HTMLInputElement::valueAsDate setter support for type=month.
https://bugs.webkit.org/show_bug.cgi?id=33021

Expose the following functions to be used by WebCore:

  • WTF::msToyear()
  • WTF::dayInYear()
  • WTF::monthFromDayInYear()
  • WTF::dayInMonthFromDayInYear()
  • JavaScriptCore.exp:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
  • wtf/DateMath.cpp: (WTF::msToYear): Remove "static inline". (WTF::dayInYear): Remove "static inline". (WTF::monthFromDayInYear): Remove "static inline". (WTF::dayInMonthFromDayInYear): Remove "static inline".
  • wtf/DateMath.h: Declare the above functions.

2010-01-18 Kent Tamura <tkent@chromium.org>

Reviewed by Darin Adler.

HTMLInputElement::valueAsDate setter support for type=month.
https://bugs.webkit.org/show_bug.cgi?id=33021

Add setter tests to input-valueasdate-month.js, and update the
expectation.

  • fast/forms/input-valueasdate-expected.txt:
  • fast/forms/input-valueasdate-month-expected.txt:
  • fast/forms/script-tests/input-valueasdate-month.js:
  • fast/forms/script-tests/input-valueasdate.js:

2010-01-18 Kent Tamura <tkent@chromium.org>

Reviewed by Darin Adler.

HTMLInputElement::valueAsDate setter support for type=month.
https://bugs.webkit.org/show_bug.cgi?id=33021

Introduce ISODateTime::setMillisecondsSinceEpochForMonth() and
toString() for the Month type, and HTMLInputElement::setValueAsDate()
calls them.

  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::setValueAsDate):
  • html/ISODateTime.cpp: (WebCore::beforeGregorianStartDate): (WebCore::ISODateTime::addDay): Use beforeGregorianStartDate(). (WebCore::ISODateTime::parseMonth): Use beforeGregorianStartDate(). (WebCore::ISODateTime::setMillisecondsSinceEpochForDateInternal): (WebCore::ISODateTime::setMillisecondsSinceEpochForMonth): (WebCore::ISODateTime::toString): Implement only for the Month type.
  • html/ISODateTime.h:
5:19 PM Changeset in webkit [53444] by Darin Adler
  • 2 edits in trunk/JavaScriptCore

Fix build by reverting the previous change.

  • runtime/UString.h: Rolled out the FastAllocBase base class.

It was making UString larger, and therefore JSString larger,
and too big for a garbage collection cell.

This raises the unpleasant possibility that many classes became
larger because we added the FastAllocBase base class. I am
worried about this, and it needs to be investigated.

5:12 PM Changeset in webkit [53443] by steveblock@google.com
  • 5 edits
    2 moves in trunk/WebCore

Script attributes are copied and pasted, making cross-domain attacks possible (30019)
<rdar://problem/6008809>
https://bugs.webkit.org/show_bug.cgi?id=30019

Patch by Enrica Casucci <enrica@apple.com> on 2010-01-18
Reviewed by Darin Adler.

When we create the document fragment from a markup string,
either to perform a paste operation or a drag and drop, we
want to remove all the event handlers and any attribute that contain
a value that leads to code execution.
The HTMLParser class is now aware of the needs of stripping these attributes.
I've modified the call to createMarkupString for every platform.

Test: editing/pasteboard/paste-noscript.html

  • WebCore.base.exp:
  • dom/Element.cpp:

(WebCore::isEventHandlerAttribute):
(WebCore::Element::setAttributeMap):

  • dom/Element.h:
  • dom/MappedAttributeEntry.h:

(WebCore::):

  • editing/markup.cpp:

(WebCore::createFragmentFromMarkup):

  • editing/markup.h:
  • html/HTMLElement.cpp:

(WebCore::HTMLElement::createContextualFragment):

  • html/HTMLElement.h:
  • html/HTMLParser.cpp:

(WebCore::HTMLParser::HTMLParser):
(WebCore::HTMLParser::parseToken):

  • html/HTMLParser.h:
  • html/HTMLTokenizer.cpp:

(WebCore::HTMLTokenizer::HTMLTokenizer):
(WebCore::parseHTMLDocumentFragment):

  • html/HTMLTokenizer.h:
  • platform/chromium/DragDataChromium.cpp:

(WebCore::DragData::asFragment):

  • platform/chromium/PasteboardChromium.cpp:

(WebCore::Pasteboard::documentFragment):

  • platform/gtk/PasteboardGtk.cpp:

(WebCore::Pasteboard::documentFragment):

  • platform/mac/PasteboardMac.mm:

(WebCore::Pasteboard::documentFragment):

  • platform/qt/DragDataQt.cpp:

(WebCore::DragData::asFragment):

  • platform/qt/PasteboardQt.cpp:

(WebCore::Pasteboard::documentFragment):

  • platform/win/ClipboardUtilitiesWin.cpp:

(WebCore::fragmentFromCF_HTML):
(WebCore::fragmentFromHTML):

5:07 PM Changeset in webkit [53442] by enrica@apple.com
  • 23 edits
    2 adds in trunk

Script attributes are copied and pasted, making cross-domain attacks possible (30019)
<rdar://problem/6008809>
https://bugs.webkit.org/show_bug.cgi?id=30019

Reviewed by Darin Adler.

WebCore:

When we create the document fragment from a markup string,
either to perform a paste operation or a drag and drop, we
want to remove all the event handlers and any attribute that contain
a value that leads to code execution.
The HTMLParser class is now aware of the needs of stripping these attributes.
I've modified the call to createMarkupString for every platform.

Test: editing/pasteboard/paste-noscript.html

  • WebCore.base.exp:
  • dom/Element.cpp:

(WebCore::isEventHandlerAttribute):
(WebCore::Element::setAttributeMap):

  • dom/Element.h:
  • dom/MappedAttributeEntry.h:

(WebCore::):

  • editing/markup.cpp:

(WebCore::createFragmentFromMarkup):

  • editing/markup.h:
  • html/HTMLElement.cpp:

(WebCore::HTMLElement::createContextualFragment):

  • html/HTMLElement.h:
  • html/HTMLParser.cpp:

(WebCore::HTMLParser::HTMLParser):
(WebCore::HTMLParser::parseToken):

  • html/HTMLParser.h:
  • html/HTMLTokenizer.cpp:

(WebCore::HTMLTokenizer::HTMLTokenizer):
(WebCore::parseHTMLDocumentFragment):

  • html/HTMLTokenizer.h:
  • platform/chromium/DragDataChromium.cpp:

(WebCore::DragData::asFragment):

  • platform/chromium/PasteboardChromium.cpp:

(WebCore::Pasteboard::documentFragment):

  • platform/gtk/PasteboardGtk.cpp:

(WebCore::Pasteboard::documentFragment):

  • platform/mac/PasteboardMac.mm:

(WebCore::Pasteboard::documentFragment):

  • platform/qt/DragDataQt.cpp:

(WebCore::DragData::asFragment):

  • platform/qt/PasteboardQt.cpp:

(WebCore::Pasteboard::documentFragment):

  • platform/win/ClipboardUtilitiesWin.cpp:

(WebCore::fragmentFromCF_HTML):
(WebCore::fragmentFromHTML):

WebKit/mac:

  • WebView/WebFrame.mm:

(-[WebFrame _documentFragmentWithMarkupString:baseURLString:]): Modified the call to createMarkupString.

LayoutTests:

  • editing/pasteboard/paste-noscript-expected.txt: Added.
  • editing/pasteboard/paste-noscript.html: Added.
5:05 PM Changeset in webkit [53441] by sfalken@apple.com
  • 3 edits in trunk/WebCore

<https://bugs.webkit.org/show_bug.cgi?id=33816>
Crashes in Geolocation code due to refcounting, observer balance issues.

Reviewed by Sam Weinig.

Hold a ref to the GeoNotifier while dispatching a callback. The code was
copying a data member to avoid accessing a freed this ptr, but was still
using the this ptr.

Geolocation::removeObserver calls are not always balanced with addObserver.
Instead of asserting and continuing, don't try to remove non-existant
observers.

  • page/Geolocation.cpp:

(WebCore::Geolocation::GeoNotifier::timerFired): Protect notifier.

  • page/GeolocationController.cpp:

(WebCore::GeolocationController::removeObserver): Change ASSERT into an if with early return.

5:03 PM Changeset in webkit [53440] by sfalken@apple.com
  • 2 edits in trunk/WebKit/mac

Rubber-stamped by Sam Weinig.

Add missing export for Geolocation.

  • WebKit.exp:
4:53 PM Changeset in webkit [53439] by ap@apple.com
  • 5 edits
    2 adds in trunk

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=33815
Crash when using DOMTimer from a detached frame

Test: fast/dom/Window/timer-null-script-execution-context.html

  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::setTimeout): (WebCore::JSDOMWindow::setInterval):
  • page/DOMWindow.h:
  • page/DOMWindow.idl: Make setTimer and setInterval raise an exception. It is not specified in HTML5, but both IE and Firefox do raise an exception in this situation, although different ones.
  • page/DOMWindow.cpp: (WebCore::DOMWindow::setTimeout): Raise INVALID_ACCESS_ERR if script execution context is null (meaning that the window is detached). (WebCore::DOMWindow::setInterval): Ditto. (WebCore::DOMWindow::clearTimeout): Silently return early if there is no script execution context. (WebCore::DOMWindow::clearInterval): Ditto. Raise INVALID_ACCESS_ERR if script execution context is null (meaning .
4:50 PM Changeset in webkit [53438] by eric@webkit.org
  • 2 edits in trunk/JavaScriptCore

2010-01-18 Zoltan Horvath <zoltan@webkit.org>

Reviewed by Darin Adler.

Allow custom memory allocation control for UString class
https://bugs.webkit.org/show_bug.cgi?id=27831

Inherits the following class from FastAllocBase because it is
instantiated by 'new' and no need to be copyable:

class name - instantiated at:
classs UString - JavaScriptCore/runtime/UString.cpp:160

  • runtime/UString.h:
4:02 PM Changeset in webkit [53437] by Darin Adler
  • 4 edits in trunk/JavaScriptCore

Add some ALWAYS_INLINE for key functions not inlined by some versions of GCC.
rdar://problem/7553780

Patch by Evan Cheng <evan.cheng@apple.com> on 2010-01-18
Reviewed by Darin Adler.

  • runtime/JSObject.h:

(JSC::JSObject::getPropertySlot): ALWAYS_INLINE both overloads.

  • runtime/JSString.h:

(JSC::JSString::JSString): ALWAYS_INLINE the version that takes a UString.

  • runtime/UString.h:

(JSC::operator==): ALWAYS_INLINE the version that compares two UString objects.

3:49 PM Changeset in webkit [53436] by eric@webkit.org
  • 5 edits in trunk/WebCore

2010-01-18 Steve Block <steveblock@google.com>

Reviewed by Adam Barth.

Fix style in WebCore/bridge/jni/jsc/JavaInstanceJSC.[cpp|h]
https://bugs.webkit.org/show_bug.cgi?id=33792

No new tests, style fixes only.

  • bridge/jni/jni_runtime.cpp: Modified. (JavaField::dispatchValueFromInstance): Modified. Updated to use renamed JavaInstance::m_instance (JavaField::dispatchSetValueToInstance): Modified. Updated to use renamed JavaInstance::m_instance (JavaArray::JavaArray): Modified. Updated to use renamed JavaInstance::m_instance
  • bridge/jni/jni_runtime.h: Modified. (JSC::Bindings::JavaArray::javaArray): Modified. Updated to use renamed JavaInstance::m_instance
  • bridge/jni/jsc/JavaInstanceJSC.cpp: Modified. Fixed style
  • bridge/jni/jsc/JavaInstanceJSC.h: Modified. Fixed style
3:14 PM Changeset in webkit [53435] by bweinstein@apple.com
  • 1 edit
    1 add in trunk/LayoutTests

Rubber-stamped by Tim Hatcher.

Updated Windows results after r53424.

  • platform/win/fast/css/zoom-body-scroll-expected.txt: Added.
3:09 PM Changeset in webkit [53434] by cmarrin@apple.com
  • 2 edits in trunk/WebCore

https://bugs.webkit.org/show_bug.cgi?id=30073
Moved reshape to HTMLCanvasElement::reset and have it always
set the size to the canvas width and height attrs.

This is not testable with LayoutTests, so I instead added logic
to the demo at:

https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/demos/webkit/SpinningBox.html

2:51 PM Changeset in webkit [53433] by ap@apple.com
  • 3 edits
    2 adds in trunk

Reviewed by Geoffrey Garen.

https://bugs.webkit.org/show_bug.cgi?id=33813
<rdar://problem/7545104> Crash when using DOMApplicationCache from a destroyed frame

Test: http/tests/appcache/destroyed-frame.html

  • loader/appcache/DOMApplicationCache.cpp: (WebCore::DOMApplicationCache::scriptExecutionContext): Return null when there is no frame.
2:20 PM Changeset in webkit [53432] by mitz@apple.com
  • 3 edits
    4 adds in trunk

REGRESSION (r53420): incomplete repaint of bottom of bugs.webkit.org comment field
https://bugs.webkit.org/show_bug.cgi?id=33809

Reviewed by Darin Adler.

WebCore:

Test: fast/repaint/trailing-floats-root-line-box-overflow.html

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutInlineChildren): Copy bottom overflow from the last
root box to the trailing floats box, which is becoming the last root box. This is
needed because painting code assumes that the last line in a block is the one with the
lowest overflow bottom.

LayoutTests:

  • fast/repaint/trailing-floats-root-line-box-overflow-expected.checksum: Added.
  • fast/repaint/trailing-floats-root-line-box-overflow-expected.png: Added.
  • fast/repaint/trailing-floats-root-line-box-overflow-expected.txt: Added.
  • fast/repaint/trailing-floats-root-line-box-overflow.html: Added.
2:14 PM Changeset in webkit [53431] by Csaba Osztrogonác
  • 2 edits in trunk/WebCore

[Qt] Unreviewed trivial buildfix. (r53429)

  • WebCore.pri: missing XMLNS_NAMES added.
2:12 PM Changeset in webkit [53430] by ggaren@apple.com
  • 5 edits in trunk/WebCore

2010-01-18 Geoffrey Garen <ggaren@apple.com>

Reviewed by Darin Adler.

Removed unnecessary use of scriptExecutionContext() when creating a JS event listener.
https://bugs.webkit.org/show_bug.cgi?id=33811

This change simplifies a bunch of code, and also reduces
the number of places that use the difficult-to-understand and possibly
crashy-null scriptExecutionContext() idiom.

  • bindings/js/JSDOMGlobalObject.cpp:
  • bindings/js/JSDOMGlobalObject.h:
  • bindings/js/JSEventListener.h: (WebCore::createJSAttributeEventListener):
  • bindings/scripts/CodeGeneratorJS.pm:
2:05 PM Changeset in webkit [53429] by ap@apple.com
  • 18 edits
    1 add in trunk/WebCore

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=33787
Add constants for more XML strings

No change in functionality, so no tests.

  • WebCore/xml/xmlnsattrs.in: Added a new file for xmlns namespace and attribute - XMLNames.{h,cpp} are auto-generated, and I dodn't see a reasonable way to extend it.
  • platform/text/AtomicString.cpp: (WebCore::AtomicString::init):
  • platform/text/AtomicString.h: Added atomic strings for "xml" and "xmlns".
  • page/Frame.cpp: (WebCore::Frame::Frame): Call XMLNSNames::init().
  • dom/Attr.cpp: (WebCore::Attr::setPrefix):
  • dom/Document.cpp: (WebCore::Document::hasPrefixNamespaceMismatch): (WebCore::Document::createAttributeNS):
  • dom/Node.cpp: (WebCore::Node::checkSetPrefix): (WebCore::Node::isDefaultNamespace): (WebCore::Node::lookupNamespaceURI): (WebCore::Node::lookupNamespacePrefix):
  • dom/XMLTokenizerLibxml2.cpp: (WebCore::XMLTokenizer::XMLTokenizer): (WebCore::handleElementNamespaces):
  • editing/markup.cpp: (WebCore::shouldAddNamespaceAttr): (WebCore::appendNamespace):
  • xml/XPathStep.cpp: (WebCore::XPath::nodeMatchesBasicTest): (WebCore::XPath::Step::nodesInAxis): Use the new constants.
  • Android.derived.mk:
  • DerivedSources.make:
  • GNUmakefile.am:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.pri:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl: Added the new files to projects.
2:04 PM Changeset in webkit [53428] by andersca@apple.com
  • 2 edits in trunk/WebCore

Fix !ENABLE(3D_CANVAS) build.

  • rendering/RenderLayerBacking.cpp:

(WebCore::is3DCanvas):

1:58 PM Changeset in webkit [53427] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Rubber-stamped by Adam Roben.

Change a newly added WebSocket test to work on Windows.

  • websocket/tests/multiple-connections.html: Decrease the number of simultaneous connections from 100 to 50. On Windows buildbot, only ~70 connections are allowed for some reason - but we only need much fewer to compare to HTTP simultaneous connection limit anyway.
1:54 PM Changeset in webkit [53426] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Skip test introduced in r53423 because of missing layoutTestController.setDomainRelaxationForbiddenForURLScheme()

  • platform/qt/Skipped: http/tests/security/setDomainRelaxationForbiddenForURLScheme.html added.
1:47 PM Changeset in webkit [53425] by Csaba Osztrogonác
  • 1 edit
    1 copy in trunk/LayoutTests

[Qt] Add platform dependent expected file because of different font size.

Reviewed by Ariya Hidayat.

  • platform/qt/fast/dynamic/float-in-trailing-whitespace-after-last-line-break-2-expected.txt: Copied from LayoutTests/fast/dynamic/float-in-trailing-whitespace-after-last-line-break-2-expected.txt.
1:36 PM Porting Macros plan edited by dbates@webkit.org
Changed OS(WIN) to OS(WINDOWS) since there is no such macro definition … (diff)
1:30 PM Changeset in webkit [53424] by timothy@apple.com
  • 4 edits in trunk

Adjust the scroll position when doing a full page zoom, so the content
stays in relatively the same position.

<rdar://problem/6150099> Zooming should keep the page content in the same place

Reviewed by Oliver Hunt.

  • page/Frame.cpp:

(WebCore::Frame::setZoomFactor): Apply the zoom percent difference to
the scroll position, only when doing a full page zoom.

1:26 PM Changeset in webkit [53423] by Adam Roben
  • 22 edits
    2 adds in trunk

Add WebKit SPI to disallow setting document.domain from certain URL schemes

Fixes <http://webkit.org/b/33806> <rdar://problem/7552837> Would like
API to disallow setting of document.domain for pages with certain URL
schemes

Reviewed by Sam Weinig.

WebCore:

Add SecurityOrigin::{set,is}DomainRelaxationForbiddenForURLScheme and
respect it

Test: http/tests/security/setDomainRelaxationForbiddenForURLScheme.html

  • WebCore.base.exp: Export

SecurityOrigin::setDomainRelaxationForbiddenForURLScheme.

  • dom/Document.cpp:

(WebCore::Document::setDomain): If domain relaxation is forbidden for
our security origin's scheme, throw an exception and don't allow
the domain to be set.

  • page/SecurityOrigin.cpp:

(WebCore::schemesForbiddenFromDomainRelaxation): Added. Returns a
global set of schemes.
(WebCore::SecurityOrigin::setDomainRelaxationForbiddenForURLScheme):
Add or remove the scheme to schemesForbiddenFromDomainRelaxation, as
appropriate.
(WebCore::SecurityOrigin::isDomainRelaxationForbiddenForURLScheme):
Returns true if the scheme is in schemesForbiddenFromDomainRelaxation.

  • page/SecurityOrigin.h: Added

{set,is}DomainRelaxationForbiddenForURLScheme.

WebKit/mac:

Add +[WebView _setDomainRelaxationForbidden:forURLScheme:]

  • WebView/WebView.mm:

(+[WebView _setDomainRelaxationForbidden:forURLScheme:]):

  • WebView/WebViewPrivate.h:

Added. Calls through to SecurityOrigin.

WebKit/win:

Add IWebViewPrivate::setDomainRelaxationForbiddenForURLScheme

  • Interfaces/IWebViewPrivate.idl: Added

setDomainRelaxationForbiddenForURLScheme.

  • Interfaces/WebKit.idl: Touched to force a build.
  • WebView.cpp:

(WebView::setDomainRelaxationForbiddenForURLScheme):

  • WebView.h:

Added. Calls through to SecurityOrigin.

WebKitTools:

Add LayoutTestController support for calling new WebKit SPI to
disallow setting document.domain

  • DumpRenderTree/LayoutTestController.cpp:

(setDomainRelaxationForbiddenForURLSchemeCallback): Added. Calls
through to LayoutTestController.
(LayoutTestController::staticFunctions): Added
setDomainRelaxationForbiddenForURLScheme.

  • DumpRenderTree/LayoutTestController.h: Added

setDomainRelaxationForbiddenForURLScheme.

  • DumpRenderTree/mac/LayoutTestControllerMac.mm:

(LayoutTestController::setDomainRelaxationForbiddenForURLScheme):

  • DumpRenderTree/win/LayoutTestControllerWin.cpp:

(LayoutTestController::setDomainRelaxationForbiddenForURLScheme):
Added. Calls through to WebKit.

  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:

(LayoutTestController::setDomainRelaxationForbiddenForURLScheme):

  • DumpRenderTree/wx/LayoutTestControllerWx.cpp:

(LayoutTestController::setDomainRelaxationForbiddenForURLScheme):
Stubbed out.

LayoutTests:

Add tests for new WebKit SPI to disallow setting document.domain

  • http/tests/security/setDomainRelaxationForbiddenForURLScheme-expected.txt: Added.
  • http/tests/security/setDomainRelaxationForbiddenForURLScheme.html: Added.
  • platform/gtk/Skipped: Skip the new test since WebKitGtk doesn't have

this API.

1:18 PM Changeset in webkit [53422] by eric@webkit.org
  • 2 edits in trunk/JavaScriptCore

2010-01-18 Csaba Osztrogonác <Csaba Osztrogonác>

Reviewed by Darin Adler.

Delete dftables-xxxxxxxx.in files automatically.
https://bugs.webkit.org/show_bug.cgi?id=33796

  • pcre/dftables: unlink unnecessary temporary file.
12:57 PM Changeset in webkit [53421] by mitz@apple.com
  • 2 edits in trunk/WebCore

Address review comments on the last change

  • rendering/TrailingFloatsRootInlineBox.h:

(WebCore::TrailingFloatsRootInlineBox::TrailingFloatsRootInlineBox):

12:55 PM Changeset in webkit [53420] by mitz@apple.com
  • 7 edits
    5 adds in trunk

<rdar://problem/6892207> REGRESSION (Safari 4): Menus at sciencedirect.com push the main article context down the page
<rdar://problem/7546035> Second right floated image misplacment
https://bugs.webkit.org/show_bug.cgi?id=33245

Reviewed by Darin Adler.

WebCore:

Test: fast/dynamic/float-in-trailing-whitespace-after-last-line-break-2.html

When the last line of a block contains a line break and there are floats
after the line break, it is incorrect to put those floats in the last line's
floats vector (along with floats from before the break). Instead, create
an additional line box (a TrailingFloatsRootInlineBox) and put those floats
in its floats vector.

  • WebCore.vcproj/WebCore.vcproj: Added TrailingFloatsRootInlineBox.h
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::markLinesDirtyInVerticalRange): Added an optional
parameter, which is the highest line to dirty.

  • rendering/RenderBlock.h:
  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutInlineChildren): Create a TrailingFloatsRootInlineBox
for the floats occurring after the line break on the last line.
(WebCore::RenderBlock::determineStartPosition): Prevent dirtying of lines
above the first dirty line.

  • rendering/TrailingFloatsRootInlineBox.h: Added.

(WebCore::TrailingFloatsRootInlineBox::TrailingFloatsRootInlineBox): Call
setHasVirtualHeight().
(WebCore::TrailingFloatsRootInlineBox::virtualHeight): Return 0.

LayoutTests:

  • fast/dynamic/float-in-trailing-whitespace-after-last-line-break-2.html: Added.
  • fast/dynamic/float-in-trailing-whitespace-after-last-line-break-2-expected.checksum: Added.
  • fast/dynamic/float-in-trailing-whitespace-after-last-line-break-2-expected.png: Added.
  • fast/dynamic/float-in-trailing-whitespace-after-last-line-break-2-expected.txt: Added.
11:56 AM Changeset in webkit [53419] by ap@apple.com
  • 1 edit
    2 adds in trunk/LayoutTests

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=33804
Test that WebSocket is not subject to HTTP connection limit

  • websocket/tests/multiple-connections-expected.txt: Added.
  • websocket/tests/multiple-connections.html: Added.
11:56 AM QtWebKitBackportingFixes edited by Laszlo Gombos
(diff)
11:44 AM Changeset in webkit [53418] by barraclough@apple.com
  • 12 edits in trunk/WebCore

Eeeep! reverting r53416 & r53417, more to be done to fix windows.

Reviewed by NOBODY (build fix).

  • WebCore.base.exp:
  • platform/sql/SQLiteFileSystem.cpp:

(WebCore::SQLiteFileSystem::openDatabase):

  • platform/sql/SQLiteStatement.cpp:

(WebCore::SQLiteStatement::prepare):

  • platform/sql/SQLiteStatement.h:
  • platform/sql/chromium/SQLiteFileSystemChromium.cpp:

(WebCore::SQLiteFileSystem::openDatabase):

  • platform/text/PlatformString.h:
  • platform/text/String.cpp:

(WebCore::String::charactersWithNullTermination):

  • platform/text/StringImpl.cpp:

(WebCore::StringImpl::operator new):
(WebCore::StringImpl::operator delete):
(WebCore::StringImpl::StringImpl):
(WebCore::StringImpl::~StringImpl):
(WebCore::StringImpl::create):
(WebCore::StringImpl::createWithTerminatingNullCharacter):
(WebCore::StringImpl::crossThreadString):
(WebCore::StringImpl::sharedBuffer):

  • platform/text/StringImpl.h:

(WebCore::StringImpl::hasTerminatingNullCharacter):
(WebCore::StringImpl::inTable):
(WebCore::StringImpl::setInTable):
(WebCore::StringImpl::):

  • platform/win/ClipboardUtilitiesWin.cpp:

(WebCore::createGlobalData):

  • storage/OriginUsageRecord.cpp:

(WebCore::OriginUsageRecord::addDatabase):
(WebCore::OriginUsageRecord::markDatabase):

11:40 AM Changeset in webkit [53417] by barraclough@apple.com
  • 2 edits in trunk/WebCore
  • platform/win/ClipboardUtilitiesWin.cpp:

(WebCore::createGlobalData):

Reviewed by NOBODY (windows build fix).

11:27 AM Changeset in webkit [53416] by barraclough@apple.com
  • 11 edits in trunk/WebCore

https://bugs.webkit.org/show_bug.cgi?id=33731
Remove uses of PtrAndFlags from WebCore::StringImpl.

Reviewed by Darin Adler.

These break the OS X Leaks tool. Move the management of null-terminated copies
out from StringImpl to String, and use a bit stolen from the refCount to hold the
'InTable' flag.

  • platform/sql/SQLiteFileSystem.cpp:

(WebCore::SQLiteFileSystem::openDatabase):

  • platform/sql/SQLiteStatement.cpp:

(WebCore::SQLiteStatement::prepare):

  • platform/sql/SQLiteStatement.h:
  • platform/text/PlatformString.h:
  • platform/text/String.cpp:

(WebCore::String::copyWithNullTermination):

  • platform/text/StringImpl.cpp:

(WebCore::StringImpl::StringImpl):
(WebCore::StringImpl::~StringImpl):
(WebCore::StringImpl::create):
(WebCore::StringImpl::crossThreadString):
(WebCore::StringImpl::sharedBuffer):

  • platform/text/StringImpl.h:

(WebCore::StringImpl::inTable):
(WebCore::StringImpl::setInTable):

10:48 AM Changeset in webkit [53415] by cmarrin@apple.com
  • 5 edits in trunk

Made root compositing layer scroll rather than scroll parent.
https://bugs.webkit.org/show_bug.cgi?id=32279


There's some general cleanup here so the frames, bounds and
positions of all the associated layers are correct.
I also changed API of setScrollFrame to use an IntRect.

10:36 AM Changeset in webkit [53414] by abarth@webkit.org
  • 3 edits in trunk/WebKitTools

2010-01-18 Adam Barth <abarth@webkit.org>

Reviewed by Adam Roben.

Rename patches-to-commit to patches-in-commit-queue
https://bugs.webkit.org/show_bug.cgi?id=33789

The command really lists the patches in the commit-queue not all the
patches that are pending-commit (as the FIXME commands).

  • Scripts/webkitpy/commands/queries.py:
  • Scripts/webkitpy/commands/queries_unittest.py:
10:31 AM Changeset in webkit [53413] by eric@webkit.org
  • 2 edits in trunk/WebCore

2010-01-18 Ilya Tikhonovsky <loislo@chromium.org>

Reviewed by Pavel Feldman.

WebInspector: Timeline panel scrolling speed can be 2 times faster.
https://bugs.webkit.org/show_bug.cgi?id=33794

10:15 AM Changeset in webkit [53412] by eric@webkit.org
  • 6 edits
    2 moves in trunk/WebCore

2010-01-18 Steve Block <steveblock@google.com>

Reviewed by Adam Barth.

Moves JSC-specific version of JavaInstance from bridge/jni/jni_instance to bridge/jni/jsc/JavaInstanceJSC
https://bugs.webkit.org/show_bug.cgi?id=33672

No new tests, refactoring only.

  • Android.jscbindings.mk: Modified. Removed jni_instance.cpp and added JavaInstanceJSC.cpp
  • GNUmakefile.am: Modified. Removed jni_instance.h and added JavaInstanceJSC.h
  • WebCore.xcodeproj/project.pbxproj: Modified. Removed jni_instance.[cpp|h] and added JavaInstanceJSC.[cpp|h]
  • bindings/js/ScriptControllerMac.mm: Modified. Includes JavaInstanceJSC.h
  • bridge/jni/jni_instance.cpp: Removed.
  • bridge/jni/jni_instance.h: Removed.
  • bridge/jni/jni_runtime.h: Modified. Includes JavaInstanceJSC.h
  • bridge/jni/jsc/JavaInstanceJSC.cpp: Copied from WebCore/bridge/jni/jni_instance.cpp.
  • bridge/jni/jsc/JavaInstanceJSC.h: Copied from WebCore/bridge/jni/jni_instance.h.
9:46 AM Changeset in webkit [53411] by pkasting@chromium.org
  • 9 edits in trunk/WebCore

Simplify image decoders slightly by using OwnPtr instead of raw pointers
and eliminating a basically-useless wrapper class in the GIF decoder.
https://bugs.webkit.org/show_bug.cgi?id=28751

Reviewed by Adam Barth.

  • platform/graphics/qt/ImageDecoderQt.cpp:

(WebCore::ImageDecoderQt::ImageDecoderQt):
(WebCore::ImageDecoderQt::~ImageDecoderQt):
(WebCore::ImageDecoderQt::setData):
(WebCore::ImageDecoderQt::internalReadImage):
(WebCore::ImageDecoderQt::failRead):

  • platform/graphics/qt/ImageDecoderQt.h:
  • platform/image-decoders/gif/GIFImageDecoder.cpp:

(WebCore::GIFImageDecoder::GIFImageDecoder):
(WebCore::GIFImageDecoder::~GIFImageDecoder):
(WebCore::GIFImageDecoder::setData):
(WebCore::GIFImageDecoder::frameCount):
(WebCore::GIFImageDecoder::repetitionCount):
(WebCore::GIFImageDecoder::decode):
(WebCore::GIFImageDecoder::decodingHalted):
(WebCore::GIFImageDecoder::initFrameBuffer):
(WebCore::GIFImageDecoder::haveDecodedRow):
(WebCore::GIFImageDecoder::gifComplete):

  • platform/image-decoders/gif/GIFImageDecoder.h:
  • platform/image-decoders/jpeg/JPEGImageDecoder.cpp:

(WebCore::JPEGImageDecoder::JPEGImageDecoder):
(WebCore::JPEGImageDecoder::~JPEGImageDecoder):
(WebCore::JPEGImageDecoder::setData):
(WebCore::JPEGImageDecoder::decode):

  • platform/image-decoders/jpeg/JPEGImageDecoder.h:
  • platform/image-decoders/png/PNGImageDecoder.cpp:

(WebCore::PNGImageDecoder::PNGImageDecoder):
(WebCore::PNGImageDecoder::~PNGImageDecoder):
(WebCore::PNGImageDecoder::setData):
(WebCore::PNGImageDecoder::decode):
(WebCore::PNGImageDecoder::headerAvailable):
(WebCore::PNGImageDecoder::rowAvailable):

  • platform/image-decoders/png/PNGImageDecoder.h:
9:20 AM Changeset in webkit [53410] by Adam Roben
  • 6 edits in trunk

DataTransfer interface broken on Windows--types member is always undefined, and getData() does not work.

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

Patch by Daniel Cheng <dcheng@google.com> on 2010-01-18
Reviewed by Adam Roben.

WebCore:

  • platform/win/ClipboardWin.cpp:

(WebCore::addMimeTypesForFormat): pass FORMATETC as a const ref.
(WebCore::ClipboardWin::types): fix calls to IEnumFORMATETC.
(WebCore::ClipboardWin::hasData): fix calls to IEnumFORMATETC.

LayoutTests:

  • fast/events/drag-and-drop-dataTransfer-types-nocrash-expected.txt: Updated test expectations.
  • fast/events/drag-and-drop-dataTransfer-types-nocrash.html: Added test cases.
  • platform/win/Skipped: Re-enabled fast/events/drag-and-drop-dataTransfer-types-nocrash.html
8:58 AM Changeset in webkit [53409] by eric@webkit.org
  • 2 edits in trunk/WebCore

2010-01-18 Mikhail Naganov <mnaganov@chromium.org>

Reviewed by Timothy Hatcher.

Don't show Profiles welcome screen on panel switch,
if a profile view is shown.

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

  • inspector/front-end/ProfilesPanel.js: (WebInspector.ProfilesPanel.prototype.show):
7:11 AM Changeset in webkit [53408] by vestbo@webkit.org
  • 6 edits in trunk

[Qt] Force qmake to generate a single makefile for DerivedSources.pro

Reviewed by Simon Hausmann.

JavaScriptCore:

  • DerivedSources.pro:

WebCore:

  • DerivedSources.pro:

WebKitTools:

  • Scripts/webkitdirs.pm:
7:05 AM Changeset in webkit [53407] by Adam Roben
  • 3 edits in trunk/WebKitTools

Clean up use of /useenv when invoking Visual C++

This change reverts things to their pre-r49485 state. That revision
(and, subsequently, r49664 and r51788) started passing /useenv to
Visual C++, even in cases where we don't want to do so (such as when
invoking Visual C++ Express), in the name of making the Chromium build
work. Now that Chromium isn't using buildVisualStudioProject or
pdevenv, we can put things back they way they were.

Fixes <http://webkit.org/b/33797> build-webkit fails with VC++ Express
(due to /useenv flag)

Reviewed by Sam Weinig.

  • Scripts/pdevenv: Always pass /useenv. Chromium doesn't use this

script anymore.

  • Scripts/webkitdirs.pm:

(buildVisualStudioProject): Never pass /useenv anymore. pdevenv takes
care of this itself, and we don't want to pass /useenv when not using
pdevenv (e.g., when using VC++ Express, because that will cause it to
ignore the Platform SDK).

6:37 AM Changeset in webkit [53406] by eric@webkit.org
  • 8 edits
    1 copy in trunk

2010-01-18 Jonathan Dixon <joth@chromium.org>

Reviewed by Adam Barth.

Add support for enabling navigator.geolocation at runtime in the V8 bindings.
Adds the [EnabledAtRuntime] modifier to the navigator IDL.
https://bugs.webkit.org/show_bug.cgi?id=33467

  • WebCore.gypi:
  • bindings/v8/RuntimeEnabledFeatures.cpp:
  • bindings/v8/RuntimeEnabledFeatures.h: (WebCore::RuntimeEnabledFeatures::setGeolocationEnabled): (WebCore::RuntimeEnabledFeatures::geolocationEnabled):
  • bindings/v8/custom/V8NavigatorCustom.cpp: Added. (WebCore::V8Navigator::GeolocationEnabled):
  • page/Navigator.cpp: (WebCore::Navigator::geolocation):
  • page/Navigator.idl:

2010-01-18 Jonathan Dixon <joth@chromium.org>

Reviewed by Adam Barth.

Add support for enabling navigator.geolocation at runtime in the V8 bindings.
Adds the [EnabledAtRuntime] modifier to the navigator IDL.
https://bugs.webkit.org/show_bug.cgi?id=33467

  • public/WebRuntimeFeatures.h:
  • src/WebRuntimeFeatures.cpp: (WebKit::WebRuntimeFeatures::enableGeolocation): (WebKit::WebRuntimeFeatures::isGeolocationEnabled):
6:20 AM Changeset in webkit [53405] by eric@webkit.org
  • 4 edits in trunk/WebCore

2010-01-18 Alexander Pavlov <apavlov@chromium.org>

Reviewed by Pavel Feldman.

Improve Resources panel performance for lots of resources

DOM properties are extracted into const's, comparisons are faster.
https://bugs.webkit.org/show_bug.cgi?id=33790

  • inspector/front-end/AbstractTimelinePanel.js: (WebInspector.AbstractTimelinePanel.prototype._updateDividersLabelBarPosition):
  • inspector/front-end/Resource.js: (WebInspector.Resource.CompareByStartTime): (WebInspector.Resource.CompareByResponseReceivedTime): (WebInspector.Resource.CompareByEndTime): (WebInspector.Resource.CompareByDuration): (WebInspector.Resource.CompareByLatency): (WebInspector.Resource.CompareBySize):
  • inspector/front-end/ResourcesPanel.js: (WebInspector.ResourceGraph.prototype.refreshLabelPositions):
6:05 AM Changeset in webkit [53404] by eric@webkit.org
  • 3 edits in trunk/WebKitTools

2010-01-18 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

webkit-patch land-safely should obsolete old patches
https://bugs.webkit.org/show_bug.cgi?id=33788

When posting a commit-queue+ patch with land-safely, we should
obsolete the old patches on the bug. They're really confusing
because the main use case is to address reviewer feedback on a
previous patch.

  • Scripts/webkitpy/commands/upload.py:
  • Scripts/webkitpy/commands/upload_unittest.py:
5:49 AM Changeset in webkit [53403] by eric@webkit.org
  • 2 edits in trunk/WebKitTools

2010-01-18 Adam Barth <abarth@webkit.org>

Reviewed by David Levin.

webkit-patch should authenticate more often
https://bugs.webkit.org/show_bug.cgi?id=33701

This makes it easier to work with security patches.

  • Scripts/webkitpy/bugzilla.py:
5:33 AM Changeset in webkit [53402] by eric@webkit.org
  • 2 edits in trunk/WebCore

2010-01-18 Daniel Bates <dbates@rim.com>

Reviewed by Eric Seidel.

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

Following up on changes made with respect to bug #33498, we should
fix the the style errors found by the style bot.

Moreover, this fixes all the style errors found by check-webkit-style
except the use of an underline in the variable name _niflags. We should
fix this in a second run through for all the other variables names that
contain an underline because there are many.

No functionality was changed. So, no new tests.

  • rendering/style/SVGRenderStyle.h: (WebCore::SVGRenderStyle::create): (WebCore::SVGRenderStyle::copy): (WebCore::SVGRenderStyle::operator!=): (WebCore::SVGRenderStyle::hasStroke): (WebCore::SVGRenderStyle::hasFill): (WebCore::SVGRenderStyle::InheritedFlags::operator==): (WebCore::SVGRenderStyle::InheritedFlags::operator!=): (WebCore::SVGRenderStyle::NonInheritedFlags::operator==): (WebCore::SVGRenderStyle::NonInheritedFlags::operator!=): (WebCore::SVGRenderStyle::NonInheritedFlags::): (WebCore::SVGRenderStyle::): (WebCore::SVGRenderStyle::setBitDefaults):
4:54 AM Changeset in webkit [53401] by benm@google.com
  • 2 edits in trunk/WebCore

[Android] DOMWrapperMap::Visitor needs virtual destructor
https://bugs.webkit.org/show_bug.cgi?id=33675

Patch by Andrei Popescu <andreip@google.com> on 2010-01-18
Reviewed by Adam Barth.

Add protected virtual dtor to DOMWrapperMap::Visitor. See bug for further discussion.

No new tests needed, functionality not changed.

  • bindings/v8/V8DOMMap.h:

(WebCore::DOMWrapperMap::Visitor::~Visitor): Added.

4:14 AM Changeset in webkit [53400] by Csaba Osztrogonác
  • 9 edits in trunk/JavaScriptCore

Rubber-stamped by Gustavo Noronha Silva.

Rolling out r53391 and r53392 because of random crashes on buildbots.
https://bugs.webkit.org/show_bug.cgi?id=33731

  • bytecode/CodeBlock.h:

(JSC::CallLinkInfo::seenOnce):
(JSC::CallLinkInfo::setSeen):
(JSC::MethodCallLinkInfo::MethodCallLinkInfo):
(JSC::MethodCallLinkInfo::seenOnce):
(JSC::MethodCallLinkInfo::setSeen):

  • jit/JIT.cpp:

(JSC::JIT::unlinkCall):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::patchMethodCallProto):

  • runtime/UString.cpp:

(JSC::UString::spliceSubstringsWithSeparators):
(JSC::UString::replaceRange):

  • runtime/UString.h:
  • runtime/UStringImpl.cpp:

(JSC::UStringImpl::baseSharedBuffer):
(JSC::UStringImpl::sharedBuffer):
(JSC::UStringImpl::~UStringImpl):

  • runtime/UStringImpl.h:

(JSC::UntypedPtrAndBitfield::UntypedPtrAndBitfield):
(JSC::UntypedPtrAndBitfield::asPtr):
(JSC::UntypedPtrAndBitfield::operator&=):
(JSC::UntypedPtrAndBitfield::operator|=):
(JSC::UntypedPtrAndBitfield::operator&):
(JSC::UStringImpl::create):
(JSC::UStringImpl::cost):
(JSC::UStringImpl::isIdentifier):
(JSC::UStringImpl::setIsIdentifier):
(JSC::UStringImpl::ref):
(JSC::UStringImpl::deref):
(JSC::UStringImpl::checkConsistency):
(JSC::UStringImpl::UStringImpl):
(JSC::UStringImpl::bufferOwnerString):
(JSC::UStringImpl::bufferOwnership):
(JSC::UStringImpl::isStatic):

  • wtf/StringHashFunctions.h:

(WTF::stringHash):

2:13 AM Changeset in webkit [53399] by abarth@webkit.org
  • 3 edits in trunk/WebKitTools

2010-01-18 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

style checker needs to know about GObject-specific requirements
inside WebCore/bindings/gobject/
https://bugs.webkit.org/show_bug.cgi?id=33606

Add an exception to the underscore rule for certain
GObject-specific names.

  • Scripts/webkitpy/style/cpp_style.py:
  • Scripts/webkitpy/style/cpp_style_unittest.py:
2:13 AM Changeset in webkit [53398] by abarth@webkit.org
  • 3 edits in trunk/WebKitTools

2010-01-18 Adam Barth <abarth@webkit.org>

Reviewed by Shinichiro Hamaji.

[check-webkit-style] does understand ResourceHandleWin.h
https://bugs.webkit.org/show_bug.cgi?id=32975

I'm not 100% convinced this fix is correct, but without more examples,
it's hard to generalize. We can always generalize the fix in the
future.

  • Scripts/webkitpy/style/cpp_style.py:
  • Scripts/webkitpy/style/cpp_style_unittest.py:
1:54 AM Changeset in webkit [53397] by Simon Hausmann
  • 2 edits in trunk/JavaScriptCore

Fix the build with strict gcc and RVCT versions: It's not legal to cast a
pointer to a function to a void* without an intermediate cast to a non-pointer
type. A cast to a ptrdiff_t inbetween fixes it.

Reviewed by Kenneth Rohde Christiansen.

  • runtime/JSString.h:

(JSC::Fiber::JSString):

1:29 AM Changeset in webkit [53396] by abarth@webkit.org
  • 2 edits in trunk/WebKitTools

2010-01-18 Adam Barth <abarth@webkit.org>

Unreviewed "build" fix.

  • Scripts/webkitpy/bugzilla.py:
1:15 AM Changeset in webkit [53395] by abarth@webkit.org
  • 3 edits in trunk/WebKitTools

2010-01-18 Adam Barth <abarth@webkit.org>

Unreviewed. Actually make land-safely mark commit-queue+ as
discussed with Eric.

  • Scripts/webkitpy/bugzilla.py:
  • Scripts/webkitpy/steps/postdiffforcommit.py:
1:02 AM Changeset in webkit [53394] by Simon Hausmann
  • 2 edits in trunk/WebCore

Unreviewed Symbian build fix.

If we don't link with def files, then we have to pass EXPORTUNFROZEN,
so that the build system still creates the .dso files in
release/armv5/lib and we can actually link against the created QtWebKit
dlls.

Thanks Iain for the help!

  • WebCore.pro:

Jan 17, 2010:

11:47 PM Changeset in webkit [53393] by Csaba Osztrogonác
  • 1 edit
    1 add in trunk/LayoutTests

Rubber-stamped by Eric Seidel.

[Qt] Platform dependent expected file added for r53388. (similar to original one, only styles differ)
https://bugs.webkit.org/show_bug.cgi?id=33784 (need to unify path dumping)

  • platform/qt/svg/custom/transformedMaskFails-expected.txt: Added.
11:36 PM Changeset in webkit [53392] by barraclough@apple.com
  • 5 edits in trunk/JavaScriptCore

https://bugs.webkit.org/show_bug.cgi?id=33731
Remove UntypedPtrAndBitfield from UStringImpl (akin to PtrAndFlags).

Reviewed by Oliver Hunt.

This break the OS X Leaks tool. Instead, free up some more bits from the refCount.

  • runtime/UStringImpl.cpp:

(JSC::UStringImpl::sharedBuffer):
(JSC::UStringImpl::~UStringImpl):

  • runtime/UStringImpl.h:

(JSC::UStringImpl::cost):
(JSC::UStringImpl::checkConsistency):
(JSC::UStringImpl::UStringImpl):
(JSC::UStringImpl::bufferOwnerString):
(JSC::UStringImpl::):

  • wtf/StringHashFunctions.h:

(WTF::stringHash):

11:28 PM Changeset in webkit [53391] by barraclough@apple.com
  • 5 edits in trunk/JavaScriptCore

https://bugs.webkit.org/show_bug.cgi?id=33731
Remove uses of PtrAndFlags from JIT data stuctures.

Reviewed by Oliver Hunt.

These break the OS X Leaks tool. Free up a bit in CallLinkInfo, and invalid
permutation of pointer states in MethodCallLinkInfo to represent the removed bits.

  • bytecode/CodeBlock.h:

(JSC::CallLinkInfo::seenOnce):
(JSC::CallLinkInfo::setSeen):
(JSC::MethodCallLinkInfo::MethodCallLinkInfo):
(JSC::MethodCallLinkInfo::seenOnce):
(JSC::MethodCallLinkInfo::setSeen):

  • jit/JIT.cpp:

(JSC::JIT::unlinkCall):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::patchMethodCallProto):

  • runtime/UString.h:
9:41 PM Changeset in webkit [53390] by Laszlo Gombos
  • 2 edits in trunk/WebCore

2010-01-17 Srinidhi Shreedhara <srinidhi.shreedhara@nokia.com>

Reviewed by Simon Hausmann.

[Qt] [Symbian] SetWindow call in npapi plugin does not happen when the cooridnates are negative
https://bugs.webkit.org/show_bug.cgi?id=33573

  • plugins/symbian/PluginViewSymbian.cpp: (WebCore::PluginView::setNPWindowIfNeeded): Remove tests for negative coordinates for early return.
8:53 PM Changeset in webkit [53389] by eric@webkit.org
  • 3 edits in trunk/WebKit/chromium

2010-01-17 Kent Tamura <tkent@chromium.org>

Reviewed by Shinichiro Hamaji.

[Chromium] Remove an old runFileChooser() method.
https://bugs.webkit.org/show_bug.cgi?id=33778

Chromium code switched to new runFileChooser() introduced by
r53269. The old one is not needed anymore.

  • public/WebViewClient.h:
  • src/ChromeClientImpl.cpp: (WebKit::ChromeClientImpl::runOpenPanel):
7:59 PM Changeset in webkit [53388] by oliver@apple.com
  • 3 edits
    3 adds in trunk

2010-01-17 Oliver Hunt <oliver@apple.com>

Reviewed by Dan Bernstein.

REGRESSION (r52449): SVG mask wrongly clipped when not at origin for recent nightly build
https://bugs.webkit.org/show_bug.cgi?id=33782

Testcase for a mask containing transformed elements

  • platform/mac/svg/custom/transformedMaskFails-expected.png: Added.
  • svg/custom/transformedMaskFails-expected.txt: Added.
  • svg/custom/transformedMaskFails.svg: Added.

2010-01-17 Oliver Hunt <oliver@apple.com>

Reviewed by Dan Bernstein.

REGRESSION (r52449): SVG mask wrongly clipped when not at origin for recent nightly build
https://bugs.webkit.org/show_bug.cgi?id=33782

Test: svg/custom/transformedMaskFails.svg

When computing the bounds for elements in a mask, we iterate through
all of our children requesting their repaint bounds using
repaintRectInLocalCoordinates(), but we were not converting that
rect into our own coordinate system, thus leading to an incorrect
repaint rect. This patch simply adds the missing localToParent
transform.

  • svg/SVGMaskElement.cpp: (WebCore::SVGMaskElement::drawMaskerContent):
7:28 PM Changeset in webkit [53387] by eric@webkit.org
  • 3 edits in trunk/WebKitTools

2010-01-17 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

style-queue complains about one-line macros that include multiple statements
https://bugs.webkit.org/show_bug.cgi?id=33173

Add an exception for multiple statements on a line that starts a macro.

  • Scripts/webkitpy/style/cpp_style.py:
  • Scripts/webkitpy/style/cpp_style_unittest.py:
7:11 PM Changeset in webkit [53386] by eric@webkit.org
  • 3 edits in trunk/WebKitTools

2010-01-17 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

[check-webkit-style] qt unit testing false positives
https://bugs.webkit.org/show_bug.cgi?id=32833

Exempt the Qt API and unit tests from the style checker.

  • Scripts/webkitpy/style/cpp_style.py:
  • Scripts/webkitpy/style/cpp_style_unittest.py:
6:58 PM Changeset in webkit [53385] by mitz@apple.com
  • 91 edits in trunk/LayoutTests/platform

Set the svn:mime-type property of recently-added PNG files to image/png.

6:47 PM Changeset in webkit [53384] by mjs@apple.com
  • 2 edits in trunk/WebCore

2010-01-17 Maciej Stachowiak <mjs@apple.com>

Reviewed by Dan Bernstein.

Avoid slow access to AX objects on attribute access when AX is off
https://bugs.webkit.org/show_bug.cgi?id=33779

~4% Dromaeo attributes test speedup

  • dom/Element.cpp: (WebCore::Element::updateAfterAttributeChanged): Don't do expensive lookup of AX object cache unless accessibility is on and an AX-related attribute is changed.
6:39 PM Changeset in webkit [53383] by eric@webkit.org
  • 3 edits in trunk/WebKitTools

2010-01-17 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

style-check script reports loads of errors on gtk2drawing.c
https://bugs.webkit.org/show_bug.cgi?id=33771

Exempt WebCore/platform/gtk/gtk2drawing.c and
WebCore/platform/gtk/gtk2drawing.h from style checks.

  • Scripts/webkitpy/style/cpp_style.py:
  • Scripts/webkitpy/style/cpp_style_unittest.py:
6:22 PM Changeset in webkit [53382] by eric@webkit.org
  • 4 edits in trunk/WebKitTools

2010-01-17 Chris Jerdonek <Chris Jerdonek>

Reviewed by Shinichiro Hamaji.

Finished eliminating _cpp_style_state global state variable from
check-webkit-style code and eliminating _CppStyleState class.

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

  • Scripts/webkitpy/style/checker.py:
    • Minor updates caused by changes to cpp_style.py.
  • Scripts/webkitpy/style/cpp_style.py:
    • Removed _CppStyleState class.
    • Removed verbose_level functions.
    • Added verbosity as a parameter to _FunctionState constructor.
    • Added verbosity as a parameter to process_file().
    • Added verbosity as a parameter to process_file_data().
  • Scripts/webkitpy/style/cpp_style_unittest.py:
    • Added helper functions to set verbosity while running tests.
6:06 PM Changeset in webkit [53381] by eric@webkit.org
  • 3 edits in trunk/WebKitTools

2010-01-17 Adam Barth <abarth@webkit.org>

Reviewed by Shinichiro Hamaji.

check-webkit-style underscore check should be disabled for Qt methods starting with qt_
https://bugs.webkit.org/show_bug.cgi?id=33663

  • Scripts/webkitpy/style/cpp_style.py:
  • Scripts/webkitpy/style/cpp_style_unittest.py:
5:49 PM Changeset in webkit [53380] by eric@webkit.org
  • 3 edits in trunk/WebKitTools

2010-01-17 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

style-queue complains about missing #include of config.h for non-WebCore projects
https://bugs.webkit.org/show_bug.cgi?id=33170

WebKitAPITests are consumers of the WebKit API and therefore do not
need to follow the same include discipline as the rest of WebKit. This
patch exempts them from the include checks.

  • Scripts/webkitpy/style/cpp_style.py:
  • Scripts/webkitpy/style/cpp_style_unittest.py:
5:33 PM Changeset in webkit [53379] by eric@webkit.org
  • 2 edits in trunk/WebKitTools

2010-01-17 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

EWS (Early Warning Systems) should build both debug and release
https://bugs.webkit.org/show_bug.cgi?id=33681

Build both debug and release for chromium-ews.

  • Scripts/webkitpy/commands/early_warning_system.py:
4:36 PM Changeset in webkit [53378] by eric@webkit.org
  • 2 edits in trunk/WebKitTools

2010-01-17 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

style-queue should include instructions for how to file bugs against check-webkit-style
https://bugs.webkit.org/show_bug.cgi?id=32345

Added some text to the error message asking folks to file bugs against
false positives.

  • Scripts/webkitpy/commands/queues.py:
4:31 PM Changeset in webkit [53377] by mrowe@apple.com
  • 4 edits in tags/Safari-6531.21.11/WebKit

Merge r53195.

4:31 PM Changeset in webkit [53376] by mrowe@apple.com
  • 4 edits in tags/Safari-6531.21.11

Versioning.

4:29 PM Changeset in webkit [53375] by mrowe@apple.com
  • 1 copy in tags/Safari-6531.21.11

New tag.

4:04 PM Changeset in webkit [53374] by eric@webkit.org
  • 6 edits in trunk/WebKitTools

2010-01-17 Chris Jerdonek <Chris Jerdonek>

Reviewed by Adam Barth.

Eliminated the error_count global variable and related
check-webkit-style refactoring.

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

  • Scripts/check-webkit-style:
    • Updated to use webkit_argument_defaults().
    • Renamed styleChecker to style_checker.
  • Scripts/webkitpy/style/checker.py:
    • Prefixed the three default arguments with WEBKIT_DEFAULT.
    • Added webkit_argument_defaults().
    • Added default filter_rules parameter to CategoryFilter constructor.
    • Added ne() to CategoryFilter class.
    • Added eq() and ne() to ProcessorOptions class.
    • Added error_count and _write_error attributes to StyleChecker class.
    • Made StyleChecker._handle_error() increment the error count.
  • Scripts/webkitpy/style/checker_unittest.py:
    • Improved CategoryFilterTest.test_eq().
    • Added CategoryFilterTest.test_ne().
    • Added test_eq() and test_ne() to ProcessorOptionsTest class.
    • Updated unit tests to use webkit_argument_defaults().
    • Added StyleCheckerTest class.
  • Scripts/webkitpy/style/cpp_style.py:
    • Removed references to global error_count.
  • Scripts/webkitpy/style/cpp_style_unittest.py:
    • Removed CppStyleStateTest class.
3:39 PM Changeset in webkit [53373] by kevino@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Kevin Ollivier.

[wx] On Win and GTK, we need to manually apply the transforms when falling back
to GDI / GDK drawing, but this is not needed on Mac since we always use CG there.

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

9:54 AM Changeset in webkit [53372] by eric@webkit.org
  • 5 edits in trunk/WebCore

2010-01-17 Martin Robinson <martin.james.robinson@gmail.com>

Reviewed by Gustavo Noronha Silva.

[GTK] GtkWebKit incompatible with rgba colormaps
https://bugs.webkit.org/show_bug.cgi?id=20736

Fix GTK theme rendering onto drawables with RGBA colormaps. Now
each type of colormap has its own collection of GtkWidgets.

This fix does not introduce any functionality changes, so does not
includes new tests.

  • platform/gtk/RenderThemeGtk.cpp: (WebCore::RenderThemeGtk::RenderThemeGtk): (WebCore::RenderThemeGtk::~RenderThemeGtk): (WebCore::RenderThemeGtk::partsForDrawable): (WebCore::adjustMozillaStyle): (WebCore::setMozillaState): (WebCore::paintMozillaGtkWidget): (WebCore::setToggleSize): (WebCore::RenderThemeGtk::setCheckboxSize): (WebCore::RenderThemeGtk::paintCheckbox): (WebCore::RenderThemeGtk::setRadioSize): (WebCore::RenderThemeGtk::paintRadio): (WebCore::RenderThemeGtk::paintButton): (WebCore::RenderThemeGtk::adjustMenuListStyle): (WebCore::RenderThemeGtk::paintMenuList): (WebCore::RenderThemeGtk::adjustTextFieldStyle): (WebCore::RenderThemeGtk::paintTextField): (WebCore::RenderThemeGtk::paintSearchFieldResultsButton): (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration): (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
  • platform/gtk/RenderThemeGtk.h:
  • platform/gtk/gtk2drawing.c: (moz_gtk_use_theme_parts): (ensure_window_widget): (setup_widget_prototype): (ensure_button_widget): (ensure_hpaned_widget): (ensure_vpaned_widget): (ensure_toggle_button_widget): (ensure_button_arrow_widget): (ensure_checkbox_widget): (ensure_radiobutton_widget): (ensure_scrollbar_widget): (ensure_spin_widget): (ensure_scale_widget): (ensure_entry_widget): (moz_gtk_get_combo_box_inner_button): (moz_gtk_get_combo_box_button_inner_widgets): (ensure_combo_box_widgets): (moz_gtk_get_combo_box_entry_inner_widgets): (moz_gtk_get_combo_box_entry_arrow): (ensure_combo_box_entry_widgets): (ensure_handlebox_widget): (ensure_toolbar_widget): (ensure_toolbar_separator_widget): (ensure_tooltip_widget): (ensure_tab_widget): (ensure_progress_widget): (ensure_statusbar_widget): (ensure_frame_widget): (ensure_menu_bar_widget): (ensure_menu_bar_item_widget): (ensure_menu_popup_widget): (ensure_menu_item_widget): (ensure_image_menu_item_widget): (ensure_menu_separator_widget): (ensure_check_menu_item_widget): (ensure_tree_view_widget): (ensure_tree_header_cell_widget): (ensure_expander_widget): (ensure_scrolled_window_widget): (moz_gtk_checkbox_get_metrics): (moz_gtk_radio_get_metrics): (moz_gtk_splitter_get_metrics): (moz_gtk_toggle_paint): (moz_gtk_scrollbar_button_paint): (moz_gtk_scrollbar_trough_paint): (moz_gtk_scrollbar_thumb_paint): (moz_gtk_spin_paint): (moz_gtk_spin_updown_paint): (moz_gtk_scale_paint): (moz_gtk_scale_thumb_paint): (moz_gtk_gripper_paint): (moz_gtk_hpaned_paint): (moz_gtk_vpaned_paint): (moz_gtk_caret_paint): (moz_gtk_treeview_paint): (moz_gtk_tree_header_cell_paint): (moz_gtk_tree_header_sort_arrow_paint): (moz_gtk_treeview_expander_paint): (moz_gtk_expander_paint): (moz_gtk_combo_box_paint): (moz_gtk_downarrow_paint): (moz_gtk_combo_box_entry_button_paint): (moz_gtk_container_paint): (moz_gtk_toggle_label_paint): (moz_gtk_toolbar_paint): (moz_gtk_toolbar_separator_paint): (moz_gtk_tooltip_paint): (moz_gtk_resizer_paint): (moz_gtk_frame_paint): (moz_gtk_progressbar_paint): (moz_gtk_progress_chunk_paint): (moz_gtk_get_tab_thickness): (moz_gtk_tab_paint): (moz_gtk_tabpanels_paint): (moz_gtk_tab_scroll_arrow_paint): (moz_gtk_menu_bar_paint): (moz_gtk_menu_popup_paint): (moz_gtk_menu_separator_paint): (moz_gtk_menu_item_paint): (moz_gtk_menu_arrow_paint): (moz_gtk_check_menu_item_paint): (moz_gtk_window_paint): (moz_gtk_get_widget_border): (moz_gtk_get_combo_box_entry_button_size): (moz_gtk_get_tab_scroll_arrow_size): (moz_gtk_get_downarrow_size): (moz_gtk_get_toolbar_separator_width): (moz_gtk_get_expander_size): (moz_gtk_get_treeview_expander_size): (moz_gtk_get_menu_separator_height): (moz_gtk_get_scalethumb_metrics): (moz_gtk_get_scrollbar_metrics): (moz_gtk_images_in_menus): (moz_gtk_widget_paint): (moz_gtk_get_scrollbar_widget): (moz_gtk_shutdown): (moz_gtk_destroy_theme_parts_widgets):
  • platform/gtk/gtkdrawing.h:
Note: See TracTimeline for information about the timeline view.