Timeline



Aug 22, 2014:

11:59 PM Changeset in webkit [172884] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

Try to fix the Mac build using the internal SDK.

  • bindings/objc/PublicDOMInterfaces.h:
11:32 PM Changeset in webkit [172883] by commit-queue@webkit.org
  • 12 edits
    3 deletes in trunk

Remove LevelDB.
https://bugs.webkit.org/show_bug.cgi?id=136170

Patch by Renato Nagy <nagy.renato@stud.u-szeged.hu> on 2014-08-22
Reviewed by Gyuyoung Kim.

Source/ThirdParty:

  • leveldb/AUTHORS: Removed.
  • leveldb/LICENSE: Removed.
  • leveldb/Makefile: Removed.
  • leveldb/NEWS: Removed.
  • leveldb/README: Removed.
  • leveldb/TODO: Removed.
  • leveldb/build_detect_platform: Removed.
  • leveldb/db/builder.cc: Removed.
  • leveldb/db/builder.h: Removed.
  • leveldb/db/c.cc: Removed.
  • leveldb/db/c_test.c: Removed.
  • leveldb/db/corruption_test.cc: Removed.
  • leveldb/db/db_bench.cc: Removed.
  • leveldb/db/db_impl.cc: Removed.
  • leveldb/db/db_impl.h: Removed.
  • leveldb/db/db_iter.cc: Removed.
  • leveldb/db/db_iter.h: Removed.
  • leveldb/db/db_test.cc: Removed.
  • leveldb/db/dbformat.cc: Removed.
  • leveldb/db/dbformat.h: Removed.
  • leveldb/db/dbformat_test.cc: Removed.
  • leveldb/db/filename.cc: Removed.
  • leveldb/db/filename.h: Removed.
  • leveldb/db/filename_test.cc: Removed.
  • leveldb/db/leveldb_main.cc: Removed.
  • leveldb/db/log_format.h: Removed.
  • leveldb/db/log_reader.cc: Removed.
  • leveldb/db/log_reader.h: Removed.
  • leveldb/db/log_test.cc: Removed.
  • leveldb/db/log_writer.cc: Removed.
  • leveldb/db/log_writer.h: Removed.
  • leveldb/db/memtable.cc: Removed.
  • leveldb/db/memtable.h: Removed.
  • leveldb/db/repair.cc: Removed.
  • leveldb/db/skiplist.h: Removed.
  • leveldb/db/skiplist_test.cc: Removed.
  • leveldb/db/snapshot.h: Removed.
  • leveldb/db/table_cache.cc: Removed.
  • leveldb/db/table_cache.h: Removed.
  • leveldb/db/version_edit.cc: Removed.
  • leveldb/db/version_edit.h: Removed.
  • leveldb/db/version_edit_test.cc: Removed.
  • leveldb/db/version_set.cc: Removed.
  • leveldb/db/version_set.h: Removed.
  • leveldb/db/version_set_test.cc: Removed.
  • leveldb/db/write_batch.cc: Removed.
  • leveldb/db/write_batch_internal.h: Removed.
  • leveldb/db/write_batch_test.cc: Removed.
  • leveldb/doc/bench/db_bench_sqlite3.cc: Removed.
  • leveldb/doc/bench/db_bench_tree_db.cc: Removed.
  • leveldb/doc/benchmark.html: Removed.
  • leveldb/doc/doc.css: Removed.
  • leveldb/doc/impl.html: Removed.
  • leveldb/doc/index.html: Removed.
  • leveldb/doc/log_format.txt: Removed.
  • leveldb/doc/table_format.txt: Removed.
  • leveldb/helpers/memenv/memenv.cc: Removed.
  • leveldb/helpers/memenv/memenv.h: Removed.
  • leveldb/helpers/memenv/memenv_test.cc: Removed.
  • leveldb/include/leveldb/c.h: Removed.
  • leveldb/include/leveldb/cache.h: Removed.
  • leveldb/include/leveldb/comparator.h: Removed.
  • leveldb/include/leveldb/db.h: Removed.
  • leveldb/include/leveldb/env.h: Removed.
  • leveldb/include/leveldb/filter_policy.h: Removed.
  • leveldb/include/leveldb/iterator.h: Removed.
  • leveldb/include/leveldb/options.h: Removed.
  • leveldb/include/leveldb/slice.h: Removed.
  • leveldb/include/leveldb/status.h: Removed.
  • leveldb/include/leveldb/table.h: Removed.
  • leveldb/include/leveldb/table_builder.h: Removed.
  • leveldb/include/leveldb/write_batch.h: Removed.
  • leveldb/port/README: Removed.
  • leveldb/port/atomic_pointer.h: Removed.
  • leveldb/port/port.h: Removed.
  • leveldb/port/port_example.h: Removed.
  • leveldb/port/port_posix.cc: Removed.
  • leveldb/port/port_posix.h: Removed.
  • leveldb/port/thread_annotations.h: Removed.
  • leveldb/port/win/stdint.h: Removed.
  • leveldb/table/block.cc: Removed.
  • leveldb/table/block.h: Removed.
  • leveldb/table/block_builder.cc: Removed.
  • leveldb/table/block_builder.h: Removed.
  • leveldb/table/filter_block.cc: Removed.
  • leveldb/table/filter_block.h: Removed.
  • leveldb/table/filter_block_test.cc: Removed.
  • leveldb/table/format.cc: Removed.
  • leveldb/table/format.h: Removed.
  • leveldb/table/iterator.cc: Removed.
  • leveldb/table/iterator_wrapper.h: Removed.
  • leveldb/table/merger.cc: Removed.
  • leveldb/table/merger.h: Removed.
  • leveldb/table/table.cc: Removed.
  • leveldb/table/table_builder.cc: Removed.
  • leveldb/table/table_test.cc: Removed.
  • leveldb/table/two_level_iterator.cc: Removed.
  • leveldb/table/two_level_iterator.h: Removed.
  • leveldb/util/arena.cc: Removed.
  • leveldb/util/arena.h: Removed.
  • leveldb/util/arena_test.cc: Removed.
  • leveldb/util/bloom.cc: Removed.
  • leveldb/util/bloom_test.cc: Removed.
  • leveldb/util/cache.cc: Removed.
  • leveldb/util/cache_test.cc: Removed.
  • leveldb/util/coding.cc: Removed.
  • leveldb/util/coding.h: Removed.
  • leveldb/util/coding_test.cc: Removed.
  • leveldb/util/comparator.cc: Removed.
  • leveldb/util/crc32c.cc: Removed.
  • leveldb/util/crc32c.h: Removed.
  • leveldb/util/crc32c_test.cc: Removed.
  • leveldb/util/env.cc: Removed.
  • leveldb/util/env_posix.cc: Removed.
  • leveldb/util/env_test.cc: Removed.
  • leveldb/util/filter_policy.cc: Removed.
  • leveldb/util/hash.cc: Removed.
  • leveldb/util/hash.h: Removed.
  • leveldb/util/histogram.cc: Removed.
  • leveldb/util/histogram.h: Removed.
  • leveldb/util/logging.cc: Removed.
  • leveldb/util/logging.h: Removed.
  • leveldb/util/mutexlock.h: Removed.
  • leveldb/util/options.cc: Removed.
  • leveldb/util/posix_logger.h: Removed.
  • leveldb/util/random.h: Removed.
  • leveldb/util/status.cc: Removed.
  • leveldb/util/testharness.cc: Removed.
  • leveldb/util/testharness.h: Removed.
  • leveldb/util/testutil.cc: Removed.
  • leveldb/util/testutil.h: Removed.

Source/WebCore:

  • CMakeLists.txt:
  • Modules/indexeddb/IDBObjectStore.cpp:

(WebCore::IDBObjectStore::createIndex):

  • Modules/indexeddb/IDBTransactionCoordinator.cpp:

(WebCore::IDBTransactionCoordinator::canRunTransaction):
(WebCore::doScopesOverlap): Deleted.

  • Modules/indexeddb/leveldb/IDBBackingStoreCursorLevelDB.cpp: Removed.
  • Modules/indexeddb/leveldb/IDBBackingStoreCursorLevelDB.h: Removed.
  • Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp: Removed.
  • Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h: Removed.
  • Modules/indexeddb/leveldb/IDBBackingStoreTransactionLevelDB.cpp: Removed.
  • Modules/indexeddb/leveldb/IDBBackingStoreTransactionLevelDB.h: Removed.
  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp: Removed.
  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h: Removed.
  • Modules/indexeddb/leveldb/IDBIndexWriterLevelDB.cpp: Removed.
  • Modules/indexeddb/leveldb/IDBIndexWriterLevelDB.h: Removed.
  • Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp: Removed.
  • Modules/indexeddb/leveldb/IDBLevelDBCoding.h: Removed.
  • Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp: Removed.
  • Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.h: Removed.
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/DatabaseStrategy.cpp:

(WebCore::DatabaseStrategy::createIDBFactoryBackend):

  • platform/leveldb/LevelDBComparator.h: Removed.
  • platform/leveldb/LevelDBDatabase.cpp: Removed.
  • platform/leveldb/LevelDBDatabase.h: Removed.
  • platform/leveldb/LevelDBIterator.h: Removed.
  • platform/leveldb/LevelDBSlice.h: Removed.
  • platform/leveldb/LevelDBTransaction.cpp: Removed.
  • platform/leveldb/LevelDBTransaction.h: Removed.
  • platform/leveldb/LevelDBWriteBatch.cpp: Removed.
  • platform/leveldb/LevelDBWriteBatch.h: Removed.

Tools:

  • Scripts/webkitpy/common/config/watchlist:
  • Scripts/webkitpy/style/checker.py:
11:29 PM Changeset in webkit [172882] by commit-queue@webkit.org
  • 4 edits in trunk

.:
[EFL] Turn on ENABLE_GAMEPAD_DEPRECATED option.
https://bugs.webkit.org/show_bug.cgi?id=136110

Patch by KwangHyuk Kim <hyuki.kim@samsung.com> on 2014-08-22
Reviewed by Gyuyoung Kim.

Turn on ENABLE_GAMEPAD_DEPRECATED option for the WK2 Efl.

  • Source/cmake/OptionsEfl.cmake:

Source/WebCore:
[EFL] Fix build break caused by ENABLE_GAMEPAD_DEPRECATED.
https://bugs.webkit.org/show_bug.cgi?id=136110

Patch by KwangHyuk Kim <hyuki.kim@samsung.com> on 2014-08-22
Reviewed by Gyuyoung Kim.

WebCore_INCLUDE_DIRECTORY for gamepad was removed from WK2 Efl in order to fix build break when ENABLE_GAMEPAD_DEPRECATED is on.

No new tests because no functional changes.

  • PlatformEfl.cmake:
9:34 PM Changeset in webkit [172881] by zoltan@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL][WK2] Remove fast/css3-text/css3-text-align-last/text-align-last-with-text-align-justify.html from skipped list
https://bugs.webkit.org/show_bug.cgi?id=128732

Reviewed by Gyuyoung Kim.

  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-012.html:
  • platform/efl/TestExpectations:
9:30 PM Changeset in webkit [172880] by benjamin@webkit.org
  • 13 edits
    12 adds in trunk

Style invalidation does not work for adjacent node updates
https://bugs.webkit.org/show_bug.cgi?id=136145

Reviewed by Antti Koivisto.

Source/WebCore:

There were a bunch of cases in which the style would be in an inconsistent
state until the style resolver kicks in for the entire document.

For example, let's take the selector "foo.bar + target". When the class "bar"
changes, the element foo is invalidated. The element target is untouched.

Now, if the style of "target" is accessed, nodeOrItsAncestorNeedsStyleRecalc()
returns false and the old style is accessed.

At some point, when the style of the entire document is resolved, the node
"foo" is styled, and "target" is invalidated.

To fix the issue, this patch adds an extra flag keeping track of subtrees that
have any node needing style recalc: DirectChildNeedsStyleRecalcFlag.

When invalidating the node "foo", its parent is marked with
DirectChildNeedsStyleRecalcFlag to note that one of the child nodes has an invalid style.

When verifying the style state in nodeOrItsAncestorNeedsStyleRecalc(), we check that flag
in addition to the siblings dependencies to find if the node is part of a subtree that may
be invalid due to sibling selectors.

Similarly, in the style resolver, we use the flag to clear the style on all elements
that could potentially be invalid.

This patch removes the changes introduced by r172721
(The style is not updated correctly when the pseudo class :empty is applied on anything but the rightmost element).
That bug was just a special case of what is solved here.

Tests: fast/selectors/attribute-direct-adjacent-style-update.html

fast/selectors/attribute-sibling-style-update.html
fast/selectors/class-direct-adjacent-style-update.html
fast/selectors/class-sibling-style-update.html
fast/selectors/first-child-direct-adjacent-style-update.html
fast/selectors/first-child-sibling-style-update.html

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne):

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsEmpty):
(WebCore::SelectorCompiler::setStyleOfSiblingsAffectedByEmpty): Deleted.

  • dom/ContainerNode.h:

(WebCore::ContainerNode::directChildNeedsStyleRecalc):
(WebCore::ContainerNode::setDirectChildNeedsStyleRecalc):
Remove the special case for :empty.

  • dom/Document.cpp:

(WebCore::nodeOrItsAncestorNeedsStyleRecalc):

  • dom/Element.cpp:

(WebCore::checkForEmptyStyleChange):
(WebCore::checkForSiblingStyleChanges):
(WebCore::Element::setStyleOfSiblingsAffectedByEmpty): Deleted.
(WebCore::Element::rareDataStyleOfSiblingsAffectedByEmpty): Deleted.

  • dom/Element.h:

(WebCore::Element::styleOfSiblingsAffectedByEmpty): Deleted.

  • dom/ElementRareData.h:

(WebCore::ElementRareData::ElementRareData):
(WebCore::ElementRareData::styleOfSiblingsAffectedByEmpty): Deleted.
(WebCore::ElementRareData::setStyleOfSiblingsAffectedByEmpty): Deleted.

  • dom/Node.cpp:

(WebCore::markAncestorsWithChildNeedsStyleRecalc):
(WebCore::Node::setNeedsStyleRecalc):
(WebCore::Node::markAncestorsWithChildNeedsStyleRecalc): Deleted.

  • dom/Node.h:

(WebCore::Node::clearChildNeedsStyleRecalc):

  • style/StyleResolveTree.cpp:

(WebCore::Style::resetStyleForNonRenderedDescendants):

LayoutTests:

Add tests covering the basic cases: classes and attributes.

First-child covers the basic positional updates.

The tests have a version without any indirect adjacent ("~") because the marking
used for those is much more generic and having them hide some bugs.

Some tests are still failing. That is due to the style resolver not handling
direct siblings ("+") correctly when there are multiple of them. I will address
that separately.

  • fast/selectors/attribute-direct-adjacent-style-update-expected.txt: Added.
  • fast/selectors/attribute-direct-adjacent-style-update.html: Added.
  • fast/selectors/attribute-sibling-style-update-expected.txt: Added.
  • fast/selectors/attribute-sibling-style-update.html: Added.
  • fast/selectors/class-direct-adjacent-style-update-expected.txt: Added.
  • fast/selectors/class-direct-adjacent-style-update.html: Added.
  • fast/selectors/class-sibling-style-update-expected.txt: Added.
  • fast/selectors/class-sibling-style-update.html: Added.
  • fast/selectors/first-child-direct-adjacent-style-update.html: Added.
  • fast/selectors/first-child-sibling-style-update-expected.txt: Added.
  • fast/selectors/first-child-sibling-style-update.html: Added.
  • fast/selectors/placeholder-shown-sibling-style-update-expected.txt:
6:58 PM Changeset in webkit [172879] by matthew_hanson@apple.com
  • 5 edits in branches/safari-600.1-branch/Source

Versioning.

6:54 PM Changeset in webkit [172878] by matthew_hanson@apple.com
  • 1 copy in tags/Safari-600.1.15

New Tag.

6:28 PM Changeset in webkit [172877] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Remove unused legacy InspectorFrontendHost methods
https://bugs.webkit.org/show_bug.cgi?id=136186

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-08-22
Reviewed by Andreas Kling.

  • bindings/js/JSInspectorFrontendHostCustom.cpp:

(WebCore::JSInspectorFrontendHost::recordActionTaken): Deleted.
(WebCore::JSInspectorFrontendHost::recordPanelShown): Deleted.
(WebCore::JSInspectorFrontendHost::recordSettingChanged): Deleted.

  • inspector/InspectorFrontendHost.idl:
5:43 PM Changeset in webkit [172876] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Remove unnecessary WTFString creation in Dictionary getter
https://bugs.webkit.org/show_bug.cgi?id=136184

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-08-22
Reviewed by Benjamin Poulain.

  • bindings/js/Dictionary.cpp:

(WebCore::Dictionary::getWithUndefinedOrNullCheck):

  • bindings/js/Dictionary.h:
  • bindings/js/JSDictionary.cpp:

(WebCore::JSDictionary::getWithUndefinedOrNullCheck):

  • bindings/js/JSDictionary.h:
4:04 PM Changeset in webkit [172875] by commit-queue@webkit.org
  • 18 edits in trunk/Source

Unreviewed, rolling out r172866.
https://bugs.webkit.org/show_bug.cgi?id=136177

Broke iOS build (Requested by othermaciej on #webkit).

Reverted changeset:

"Replace use of WKCopyCFLocalizationPreferredName with
NSLocale public API"
https://bugs.webkit.org/show_bug.cgi?id=136082
http://trac.webkit.org/changeset/172866

3:30 PM Changeset in webkit [172874] by hyatt@apple.com
  • 5 edits
    3 adds in trunk

Add proper support for letter-spacing to bopomofo Ruby
https://bugs.webkit.org/show_bug.cgi?id=136171

Reviewed by Sam Weinig.

Source/WebCore:

Added fast/ruby/bopomofo-letter-spacing.html

  • rendering/RenderRubyRun.cpp:

(WebCore::RenderRubyRun::layout):
Alter the layout of bopomofo ruby so that the distance between the base characters is the max of
the letter-spacing between the characters and the minimum required width to hold two rows of
Ruby.

Push the bopomofo ruby into the letter-spacing to ensure that it comes right after the base character
and not after all the letter-spacing.

LayoutTests:

  • fast/ruby/bopomofo-letter-spacing.html: Added.
  • platform/mac/fast/ruby/bopomofo-expected.png:
  • platform/mac/fast/ruby/bopomofo-expected.txt:
  • platform/mac/fast/ruby/bopomofo-letter-spacing-expected.png: Added.
  • platform/mac/fast/ruby/bopomofo-letter-spacing-expected.txt: Added.
3:09 PM Changeset in webkit [172873] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Fix showing paint rects when selecting lines in the timeline
https://bugs.webkit.org/show_bug.cgi?id=136173

Reviewed by Joseph Pecoraro.

Fix the condition used to decide when to show the overlay.

  • inspector/InspectorOverlay.cpp:

(WebCore::InspectorOverlay::shouldShowOverlay):

3:09 PM Changeset in webkit [172872] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Use the correct rect for paint flashing
https://bugs.webkit.org/show_bug.cgi?id=136169

Reviewed by Sam Weinig.

Use the rect we've converted to root document coordinates for paint flashing.

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::didPaint):

1:55 PM Changeset in webkit [172871] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

Google Canvas2D maps are too slow and uncontrollable with Safari with full screen mode
https://bugs.webkit.org/show_bug.cgi?id=136168

Reviewed by Tim Horton.

When Google maps are using their 2D "lite" fallback and you're drawing in a huge
window such as fullscreen 4K, we would drop back to unaccelerated mode, thinking
that we'd exceeded the maximum IOSurface size.

Remove the hardcoded limit on IOSurface sizes, and instead ask the system
what it believe the maximum to be. This was significantly higher than our
limit on the systems I tested.

  • platform/graphics/cg/ImageBufferCG.cpp:

(WebCore::ImageBuffer::ImageBuffer): Include our IOSurface wrapper, which
has a query for maximum size, and use that instead.

1:40 PM Changeset in webkit [172870] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Maybe fix Windows.

  • inspector/InspectorOverlay.cpp:

(WebCore::InspectorOverlay::showPaintRect):

1:26 PM Changeset in webkit [172869] by Simon Fraser
  • 10 edits in trunk/Source

Implement paint flashing in the WK1 InspectorOverlay page
https://bugs.webkit.org/show_bug.cgi?id=136138

Reviewed by Sam Weinig, Joseph Pecoraro.

Implement paint flashing for the WebKit1 InspectorOverlay via a second canvas in the overlay page.
We avoid allocating backing store for this canvas until we have paint rects.

Because this overlay page is weird and doesn't know how to paint itself, InspectorOverlay manages
an array of rects, and pushes them to the page when they change, before forcing a paint.

Because iOS doesn't use the InspectorOverlay page, stub out setShowPaintRects on its
WebKit WebInspectorClient, but don't yet implement paint flashing there.

Source/WebCore:

  • inspector/InspectorOverlay.cpp:

(WebCore::InspectorOverlay::InspectorOverlay):
(WebCore::InspectorOverlay::shouldShowOverlay):
(WebCore::InspectorOverlay::update):
(WebCore::buildObjectForRect):
(WebCore::InspectorOverlay::setShowingPaintRects):
(WebCore::InspectorOverlay::showPaintRect):
(WebCore::InspectorOverlay::updatePaintRectsTimerFired):
(WebCore::InspectorOverlay::drawPaintRects):
(WebCore::InspectorOverlay::forcePaint):
(WebCore::quadToPath): Deleted.
(WebCore::drawOutlinedQuad): Deleted.
(WebCore::InspectorOverlay::drawOutline): Deleted.

  • inspector/InspectorOverlay.h:
  • inspector/InspectorOverlayPage.html:
  • inspector/InspectorOverlayPage.js:

(updatePaintRects):
(reset):
(_drawShapeHighlight):

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::setShowPaintRects):
(WebCore::InspectorPageAgent::didPaint):

Source/WebKit/ios:

  • WebCoreSupport/WebInspectorClientIOS.mm:

(WebInspectorClient::setShowPaintRects):
(WebInspectorClient::showPaintRect):

Source/WebKit/mac:

  • WebCoreSupport/WebInspectorClient.h:
  • WebCoreSupport/WebInspectorClient.mm:

(WebInspectorClient::WebInspectorClient):

1:10 PM Changeset in webkit [172868] by eric.carlson@apple.com
  • 6 edits in trunk/Source/WebCore

[iOS] Cleanup media code
https://bugs.webkit.org/show_bug.cgi?id=136163

Reviewed by Jer Noble.

No new tests, no functionality was changed.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement): Don't initialize m_requestingPlay.
(WebCore::HTMLMediaElement::parseMediaPlayerAttribute): Deleted.
(WebCore::HTMLMediaElement::parseAttribute): Don't call parseMediaPlayerAttribute.
(WebCore::HTMLMediaElement::playInternal): m_requestingPlay is dead, Jim.
(WebCore::HTMLMediaElement::updatePlayState): Ditto.
(WebCore::HTMLMediaElement::updatePlayState): Remove obsolete FIXME.

  • html/HTMLMediaElement.h:
  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::attributeChanged): Deleted.
(WebCore::MediaPlayer::readyForPlayback): Deleted.

  • platform/graphics/MediaPlayer.h:
  • platform/graphics/MediaPlayerPrivate.h:

(WebCore::MediaPlayerPrivateInterface::attributeChanged): Deleted.
(WebCore::MediaPlayerPrivateInterface::readyForPlayback): Deleted.

12:54 PM Changeset in webkit [172867] by msaboff@apple.com
  • 17 edits in trunk/Source/JavaScriptCore

REGRESSION(r163179): Sporadic crash in js/dom/line-column-numbers.html test
https://bugs.webkit.org/show_bug.cgi?id=136111

Reviewed by Filip Pizlo.

The problem was that we weren't properly handling VM::topVMEntryFrame in two ways.

First in the case where we get an exception of a stack overflow during setup of the direct
callee frame of a VM entry frame, we need to throw the exception in the caller's frame.
This requires unrolling topVMEntryFrame while creating the exception object. This is
accomplished with the renamed NativeCallFrameTracerWithRestore object. As part of this,
split the JIT rollback exception handling to call a new helper,
callLookupExceptionHandlerFromCallerFrame, which will unroll the callFrame and VMEntryFrame.

Second, when we unwind to find a handler, we also need to unwind topVMCallFrame for the
case where we end up (re)throwing another exception after entering the catch block, but
before another vmEntry call. Added VM::vmEntryFrameForThrow as a way similar to
VM::callFrameForThrow to pass the appropriate VMENtryFrame to the catch block.

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::compileExceptionHandlers):

  • ftl/FTLCompile.cpp:

(JSC::FTL::fixFunctionBasedOnStackMaps):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileExceptionHandlers):
Split out the unroll cases to use the new helper callLookupExceptionHandlerFromCallerFrame()
to unwind both the callFrame and topVMEntryFrame.

  • interpreter/Interpreter.cpp:

(JSC::UnwindFunctor::UnwindFunctor):
(JSC::UnwindFunctor::operator()):
(JSC::Interpreter::unwind):

  • jit/JITExceptions.cpp:

(JSC::genericUnwind):
Added VMEntryFrame as another component to unwind.

  • interpreter/Interpreter.h:

(JSC::NativeCallFrameTracer::NativeCallFrameTracer):
(JSC::NativeCallFrameTracerWithRestore::NativeCallFrameTracerWithRestore):
(JSC::NativeCallFrameTracerWithRestore::~NativeCallFrameTracerWithRestore):
Renamed and changed to save and restore topCallFrame and topVMEntryFrame around the setting of
both values.

  • interpreter/StackVisitor.cpp:

(JSC::StackVisitor::gotoNextFrame):
(JSC::StackVisitor::readNonInlinedFrame):

  • interpreter/StackVisitor.h:

(JSC::StackVisitor::Frame::vmEntryFrame):
Added code to unwind the VMEntryFrame.

  • jit/CCallHelpers.h:

(JSC::CCallHelpers::jumpToExceptionHandler): Updated comment to indicate that the value
the handler should use for VM::topEntryFrame is in VM::vmEntryFrameForThrow.

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_catch):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_catch):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:

Added code to update VM::topVMEntryFrame from VM::vmEntryFrameForThrowOffset.

  • jit/JITOperations.cpp:
  • jit/JITOperations.h:

(JSC::operationThrowStackOverflowError):
(JSC::operationCallArityCheck):
(JSC::operationConstructArityCheck):

  • runtime/VM.h:

(JSC::VM::vmEntryFrameForThrowOffset):
(JSC::VM::topVMEntryFrameOffset):
Added as the side channel to return the topVMEntryFrame that the handler should use.

12:39 PM Changeset in webkit [172866] by mjs@apple.com
  • 18 edits in trunk/Source

Replace use of WKCopyCFLocalizationPreferredName with NSLocale public API
https://bugs.webkit.org/show_bug.cgi?id=136082

Reviewed by Alexey Proskuryakov.

Source/WebCore:

  • platform/mac/Language.mm:

(WebCore::httpStyleLanguageCode): Replace use of WKCopyCFLocalizationPreferredName
with new WebCoreNSStringExtras helper.

  • platform/mac/WebCoreNSStringExtras.mm: Replacements for the aspects of

WKCopyCFLocalizationPreferredName.
(preferredBundleLocalizationName): New helper - most preferred localization available
in the main bundle, canonicalized the way we like it.
(canonicalLocalizationName): Convert a lcalization name to a string with language and
country code, using default if necessary (e.g. "en" maps to "en_US").

  • WebCore.order: Remove mention of WKCopyCFLocalizationPreferredName.
  • WebCore.exp.in: ditto; also export preferredBundleLocalizationName for WebKit(2).
  • platform/ios/WebCoreSystemInterfaceIOS.mm: ditto
  • platform/mac/WebCoreSystemInterface.h: ditto
  • platform/mac/WebCoreSystemInterface.mm: ditto

Source/WebKit/mac:

  • Plugins/Hosted/NetscapePluginHostManager.mm:

(WebKit::NetscapePluginHostManager::spawnPluginHost): Get current
localization name using WebCore helper instead of SPI.

  • Plugins/WebBasePluginPackage.mm: Fixed the include style for this

file.
(-[WebBasePluginPackage getPluginInfoFromPLists]): Get current
localization name using WebCore helper instead of SPI.
(+[WebBasePluginPackage preferredLocalizationName]): Deleted. This
helper no longer pulls its weight.

  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface): Remove mention of
WKCopyCFLocalizationPreferredName.

  • WebKit.order: ditto

Source/WebKit2:

  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::connectToService): Remove accidental leftover retrieval
of the localization.
(WebKit::createProcess): Get current localization name from
CFBundle API instead of using SPI.

  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:

(InitWebCoreSystemInterface): Remove mention of WKCopyCFLocalizationPreferredName

  • mac/WebKit2.order: ditto
12:09 PM Changeset in webkit [172865] by dbates@webkit.org
  • 30 edits in trunk/Source

[iOS] Disable ENABLE_IOS_{GESTURE, TOUCH}_EVENTS, and temporarily disable ENABLE_TOUCH_EVENTS
and ENABLE_XSLT when building with the iOS public SDK
https://bugs.webkit.org/show_bug.cgi?id=135945

Reviewed by Andy Estes.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Towards bringing up the iOS WebKit port using the iOS public SDK, disable the proprietary
iOS gesture and touch event code. For now we also temporarily disable ENABLE_TOUCH_EVENTS
and ENABLE_XSLT while we focus to get the rest of the port built using the public SDK. We'll
look to enable these features once we stabilize the build.

  • Configurations/FeatureDefines.xcconfig: Disable ENABLE_IOS_{GESTURE, TOUCH}_EVENTS, ENABLE_TOUCH_EVENTS

and ENABLE_XSLT when building with the public SDK.

  • Configurations/WebCore.xcconfig:
  • DerivedSources.make: Conditionally generate derived sources for touch and gesture events as applicable and pass

define WTF_USE_APPLE_INTERNAL_SDK when generating bindings (if applicable). Make the logic for determining
whether WTF_PLATFORM_IOS is defined consistent with logic for determining whether WTF_USE_APPLE_INTERNAL_SDK and
ENABLE_ORIENTATION_EVENTS are defined. We should look to further cleanup this code.

  • bindings/js/ios/TouchConstructors.cpp: Substitute ENABLE(IOS_TOUCH_EVENTS) for macro expression "PLATFORM(IOS) && ENABLE(TOUCH_EVENTS)".
  • bindings/objc/DOMEvents.h: Write preprocessor logic in terms of ENABLE_TOUCH_EVENTS and ENABLE_IOS_GESTURE_EVENTS.
  • bindings/objc/PublicDOMInterfaces.h: Include private header <WebKitAdditions/PublicDOMInterfacesIOS.h> when

it exists as opposed to assuming it exists when building for iOS.

  • dom/Document.cpp:

(WebCore::Document::Document): Substitute ENABLE(IOS_TOUCH_EVENTS) for macro expression "ENABLE(TOUCH_EVENTS) && PLATFORM(IOS)".
(WebCore::Document::prepareForDestruction): Ditto.
(WebCore::Document::removeAllEventListeners): Ditto.

  • dom/Document.h: Write preprocessor logic in terms of ENABLE_IOS_TOUCH_EVENTS and ENABLE_TOUCH_EVENTS.
  • dom/Document.idl: Ditto.
  • dom/Touch.h: Substitute ENABLE(IOS_TOUCH_EVENTS) for PLATFORM(IOS)..
  • dom/TouchEvent.h: Ditto.
  • dom/TouchList.h: Ditto.
  • dom/ios/TouchEvents.cpp: Substitute ENABLE(IOS_TOUCH_EVENTS) for macro expression "PLATFORM(IOS) && ENABLE(TOUCH_EVENTS)".
  • history/CachedFrame.cpp: Add PLATFORM(IOS) guard.
  • html/shadow/SliderThumbElement.cpp:

(WebCore::SliderThumbElement::SliderThumbElement): Substitute ENABLE(IOS_TOUCH_EVENTS) for ENABLE(TOUCH_EVENTS).
(WebCore::SliderThumbElement::willDetachRenderers): Ditto.

  • html/shadow/SliderThumbElement.h: Ditto.
  • loader/EmptyClients.h: Ditto.
  • platform/ios/PlatformEventFactoryIOS.h: Write preprocessor logic in terms of ENABLE_IOS_TOUCH_EVENTS and ENABLE_TOUCH_EVENTS.

Only include header <WebKitAdditions/PlatformTouchEventIOS.h> when building with ENABLE_TOUCH_EVENTS enabled.

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig: Disable ENABLE_IOS_{GESTURE, TOUCH}_EVENTS, ENABLE_TOUCH_EVENTS

and ENABLE_XSLT when building with the public SDK.

  • MigrateHeaders.make: Conditionally migrate headers for touch and gesture events.

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig: Disable ENABLE_IOS_{GESTURE, TOUCH}_EVENTS, ENABLE_TOUCH_EVENTS

and ENABLE_XSLT when building with the public SDK.

  • Shared/WebEventConversion.h: Write preprocessor logic in terms of ENABLE(IOS_TOUCH_EVENTS).
  • WebProcess/WebPage/WebPage.h: Ditto.

Source/WTF:

  • wtf/FeatureDefines.h:
12:07 PM Changeset in webkit [172864] by Simon Fraser
  • 12 edits in trunk/Source

Implement paint flashing via GraphicsLayers in the WK2 inspector overlay
https://bugs.webkit.org/show_bug.cgi?id=136136

Reviewed by Sam Weinig, Joseph Pecoraro.
Source/WebCore:

Allow InspectorClient to have a custom implementation of showPaintRect(). For
WebKit2's WebInspectorClient, implement this by creating a set of GraphicsLayers
which are parented in a document overlay, with 0.25s fade-out animations.

Also change InspectorInstrumentation::didPaintImpl() to no longer take a GraphicsContext;
it makes no sense to paint the paint rects directly into the context of the web page.
Now that the paint rects are painted into an overlay, the rectangles need to be converted
to root document coordinates, which is done in InspectorInstrumentation::didPaintImpl().

Remove the generic InspectorOverlay::drawOutline()-based indicators; they will
be reimplemented in a later patch.

  • WebCore.exp.in:
  • inspector/InspectorClient.h:

(WebCore::InspectorClient::showPaintRect):

  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::didPaintImpl):

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::didPaint):

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::didPaint):

  • inspector/InspectorPageAgent.h:
  • page/FrameView.cpp:

(WebCore::FrameView::didPaintContents):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::paintContents):

Source/WebKit2:

Allow InspectorClient to have a custom implementation of showPaintRect(). For
WebKit2's WebInspectorClient, implement this by creating a set of GraphicsLayers
which are parented in a document overlay, with 0.25s fade-out animations.

Also change InspectorInstrumentation::didPaintImpl() to no longer take a GraphicsContext;
it makes no sense to paint the paint rects directly into the context of the web page.
Now that the paint rects are painted into an overlay, the rectangles need to be converted
to root document coordinates, which is done in InspectorInstrumentation::didPaintImpl().

Remove the generic InspectorOverlay::drawOutline()-based indicators; they will
be reimplemented in a later patch.

  • WebProcess/WebCoreSupport/WebInspectorClient.cpp:

(WebKit::RepaintIndicatorLayerClient::RepaintIndicatorLayerClient):
(WebKit::RepaintIndicatorLayerClient::~RepaintIndicatorLayerClient):
(WebKit::RepaintIndicatorLayerClient::notifyAnimationEnded):
(WebKit::WebInspectorClient::WebInspectorClient):
(WebKit::WebInspectorClient::~WebInspectorClient):
(WebKit::WebInspectorClient::showPaintRect):
(WebKit::WebInspectorClient::animationEndedForLayer):

  • WebProcess/WebCoreSupport/WebInspectorClient.h:

(WebKit::WebInspectorClient::WebInspectorClient): Deleted.

11:59 AM Changeset in webkit [172863] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

Enable fixed executable allocator for any ARM64 target.
https://bugs.webkit.org/show_bug.cgi?id=136162

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-08-22
Reviewed by Michael Saboff.

The ARM64 macro assembler relies on near calls being implemented by BL
instructions, which have only 128MB offset range from PC. The
on-demand executable allocator cannot ensure that any two locations in
memory allocated for the JIT-compiled code are within this range.
However, the fixed executable allocator has a fixed 16MB memory pool for
ARM64.

  • wtf/Platform.h:

Define ENABLE_EXECUTABLE_ALLOCATOR_FIXED if CPU(ARM64), and update
attached comment.

11:25 AM Changeset in webkit [172862] by commit-queue@webkit.org
  • 138 edits in trunk/Source

Unreviewed, rolling out r172844.
https://bugs.webkit.org/show_bug.cgi?id=136164

re-applying WEBCORE_EXPORTS patch (Requested by
alexchristensen on #webkit).

Reverted changeset:

"Revert r172831, it broke the Windows build."
http://trac.webkit.org/changeset/172844

11:18 AM Changeset in webkit [172861] by hyatt@apple.com
  • 14 edits
    6 adds in trunk

Implement rudimentary Bopomofo Ruby support (ruby-position:inter-character)
https://bugs.webkit.org/show_bug.cgi?id=136137
<rdar://problem/12567545>

Reviewed by Sam Weinig.

Source/WebCore:

Added fast/ruby/bopomofo.html and fast/ruby/bopomofo-rl.html.

  • css/CSSParser.cpp:

(WebCore::isValidKeywordPropertyAndValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator RubyPosition):

  • css/CSSPropertyNames.in:
  • css/CSSValueKeywords.in:

Add support for the new inter-character value for ruby-position and also
add support for a new font-size keyword, -webkit-ruby-text, that is used
to set a smart initial font size based off the type of ruby being presented.

  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyFontSize::determineRubyTextSizeMultiplier):
(WebCore::ApplyPropertyFontSize::applyValue):
Determine the Ruby text size multiplier when -webkit-ruby-text is specified
as the font size. For ruby-position of before/after, we use 50% of the parent
font size. For inter-character ruby, we default to 25% instead. If inter-character
Ruby is nested, we assume it's to display tone marks, and we use 100% to ensure
the tone mark is the same size and does not get smaller.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::adjustStyleForInterCharacterRuby):
(WebCore::StyleResolver::applyMatchedProperties):

  • css/StyleResolver.h:

ruby-position is now the highest priority CSS property, and it is resolved
before all other properties to ensure that its value can be checked when
determining a smart default font size. adjustStyleForInterCharacterRuby is a new
function called to auto-adjust inter-character ruby text to be vertical writing mode when
encountered inside horizontal documents.

  • css/html.css:

(ruby > rt):
Change the font-size from 50% to -webkit-ruby-text to allow us to customize it as
needed depending on what kind of Ruby we want to show.

  • rendering/RenderRubyRun.cpp:

(WebCore::RenderRubyRun::layout):

  • rendering/RenderRubyRun.h:

Add layout code to properly position vertical ruby text relative to a horizontal base.

  • rendering/style/RenderStyleConstants.h:

Add the new inter-character constant for ruby-position.

  • rendering/style/StyleRareInheritedData.h:

Increase the number of storage bits for RubyPosition from 1 to 2 now that we support 3 values.

LayoutTests:

  • fast/ruby/bopomofo-rl.html: Added.
  • fast/ruby/bopomofo.html: Added.
  • platform/mac/fast/ruby/bopomofo-expected.png: Added.
  • platform/mac/fast/ruby/bopomofo-expected.txt: Added.
  • platform/mac/fast/ruby/bopomofo-rl-expected.png: Added.
  • platform/mac/fast/ruby/bopomofo-rl-expected.txt: Added.
10:56 AM Changeset in webkit [172860] by jonlee@apple.com
  • 11 edits in trunk/Source

Fix iOS build due to r172832 and move RUBBER_BANDING out of FeatureDefines.h
https://bugs.webkit.org/show_bug.cgi?id=136157

Reviewed by Simon Fraser.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig: Add ENABLE(RUBBER_BANDING).

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig: Add ENABLE(RUBBER_BANDING).

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig: Add ENABLE(RUBBER_BANDING).
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]): Wrap in ENABLE(RUBBER_BANDING).

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig: Add ENABLE(RUBBER_BANDING).

Source/WTF:

  • wtf/FeatureDefines.h: Remove ENABLE(RUBBER_BANDING) logic for Mac platform.
9:09 AM Changeset in webkit [172859] by Lucas Forschler
  • 10 edits
    2 copies in branches/safari-600.1-branch

Merged r172854. <rdar://problem/18001179>

5:40 AM Changeset in webkit [172858] by clopez@igalia.com
  • 2 edits in trunk/Tools

[GTK] install-dependencies don't installs Xvfb that is needed for the tests.
https://bugs.webkit.org/show_bug.cgi?id=136153

Reviewed by Martin Robinson.

  • gtk/install-dependencies: Add Xvfb package to the list of dependencies necessary for running tests.
2:32 AM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
2:27 AM Changeset in webkit [172857] by gyuyoung.kim@samsung.com
  • 3 edits in trunk

[EFL] Apply eflsymbols.filter to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=136148

Reviewed by Csaba Osztrogonác.

eflsymbol filter hasn't been applied to WK2 port. Additionally clean up WK1 symbol
in the eflsymbols.filter.

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/eflsymbols.filter:
1:19 AM Changeset in webkit [172856] by zandobersek@gmail.com
  • 2 edits
    2 adds in trunk/Source/WebCore

[GTK] Add the Wayland protocol extension
https://bugs.webkit.org/show_bug.cgi?id=136102

Reviewed by Martin Robinson.

Add the Wayland protocol extension that allows mapping GtkWidget
objects (via an ID that's unique to that GtkWidget) to the
corresponding Wayland surface objects. This way the nested
compositor has the proper information about what GtkWidget has
to be updated when surfaces are committed by the LayerTreeHost.

  • PlatformGTK.cmake:
  • platform/graphics/wayland: Added.
  • platform/graphics/wayland/WebKitGtkWaylandClientProtocol.xml: Added.

Aug 21, 2014:

10:41 PM Changeset in webkit [172855] by achristensen@apple.com
  • 2 edits in trunk/Tools

[Win] Another unreviewed build fix.

  • DumpRenderTree/config.h:

Defined WEBCORE_EXPORT on Windows.

10:38 PM Changeset in webkit [172854] by Antti Koivisto
  • 10 edits
    2 adds in trunk

Animated GIFs scrolled out of view still cause titlebar blur to update, on tumblr.com page
https://bugs.webkit.org/show_bug.cgi?id=136139

Reviewed by Simon Fraser.

Source/WebCore:

The mechanism for pausing GIF images outside the viewport did not work for subframes.

Test: fast/repaint/no-animation-outside-viewport-subframe.html

  • WebCore.exp.in:
  • page/FrameView.cpp:

(WebCore::FrameView::scrollPositionChanged):
(WebCore::FrameView::resumeVisibleImageAnimationsIncludingSubframes):

Add a function for resuming animations as needed in all subframes.
This is used after scrolling instead of calling the RenderView function directly.

  • page/FrameView.h:
  • page/Page.cpp:

(WebCore::Page::resumeAnimatingImages):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::newImageAnimationFrameAvailable):

Determine the overall visible rect so that it is correct in subframes too.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::scrollTo):

  • rendering/RenderView.cpp:

(WebCore::RenderView::resumePausedImageAnimationsIfNeeded):

LayoutTests:

  • fast/repaint/no-animation-outside-viewport-subframe-expected.txt: Added.
  • fast/repaint/no-animation-outside-viewport-subframe.html: Added.
10:30 PM Changeset in webkit [172853] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

r171362 accidentally increased the size of InlineCallFrame.
<https://webkit.org/b/136141>

Reviewed by Filip Pizlo.

r171362 increased the size of InlineCallFrame::kind to 2 bits. This increased
the size of InlineCallFrame from 72 to 80 though not intentionally. The fix
is to reduce the size of InlineCallFrame::stackOffset to 29 bits.

Also added an assert to ensure that we never set a value that exceeds the size
of InlineCallFrame::stackOffset.

  • bytecode/CodeOrigin.h:

(JSC::InlineCallFrame::setStackOffset):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):

10:27 PM Changeset in webkit [172852] by achristensen@apple.com
  • 2 edits in trunk/Source/WebKit/win

[Win] Unreviewed build fix after r172849.

  • WebKitPrefix.h:

Defined WEBCORE_EXPORT.

10:22 PM Changeset in webkit [172851] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.1-branch/Source/WebCore

Merge r172841. <rdar://problem/17733682>

10:20 PM Changeset in webkit [172850] by matthew_hanson@apple.com
  • 11 edits in branches/safari-600.1-branch

Merge r172707. <rdar://problem/18043281>

9:21 PM Changeset in webkit [172849] by achristensen@apple.com
  • 183 edits in trunk/Source/WebCore

More WEBCORE_EXPORT macros!
https://bugs.webkit.org/show_bug.cgi?id=136146

Reviewed by Benjamin Poulain.

  • Modules/geolocation/GeolocationClient.h:
  • Modules/mediastream/UserMediaClient.h:
  • Modules/mediastream/UserMediaRequest.h:
  • Modules/notifications/NotificationClient.h:
  • Modules/speech/SpeechSynthesis.h:
  • bindings/generic/RuntimeEnabledFeatures.h:
  • bindings/js/DOMWrapperWorld.h:
  • bindings/js/GCController.h:
  • bindings/js/IDBBindingUtilities.h:
  • bindings/js/JSDOMBinding.h:
  • bindings/js/JSNodeCustom.h:
  • bindings/js/JSNodeListCustom.h:
  • bindings/js/JSPluginElementFunctions.h:
  • bindings/js/ScriptController.h:
  • bindings/js/SerializedScriptValue.h:
  • crypto/SerializedCryptoKeyWrap.h:
  • css/LengthFunctions.h:
  • css/StyleProperties.h:
  • css/StyleSheetContents.h:
  • dom/DeviceOrientationClient.h:
  • dom/Range.h:
  • dom/ScriptExecutionContext.h:
  • dom/StyledElement.h:
  • dom/TreeScope.h:
  • dom/UIEventWithKeyState.h:
  • dom/UserGestureIndicator.h:
  • dom/UserTypingGestureIndicator.h:
  • dom/ViewportArguments.h:
  • editing/SmartReplace.h:
  • editing/TextIterator.h:
  • editing/VisiblePosition.h:
  • editing/VisibleSelection.h:
  • editing/VisibleUnits.h:
  • editing/cocoa/HTMLConverter.h:
  • editing/htmlediting.h:
  • editing/mac/TextAlternativeWithRange.h:
  • editing/mac/TextUndoInsertionMarkupMac.h:
  • editing/markup.h:
  • history/HistoryItem.cpp:
  • history/PageCache.h:
  • html/TimeRanges.h:
  • html/parser/HTMLParserIdioms.h:
  • inspector/InstrumentingAgents.h:
  • loader/FrameLoader.h:
  • loader/ResourceBuffer.h:
  • loader/ResourceLoadScheduler.h:
  • loader/ResourceLoader.h:

(WebCore::ResourceLoader::originalRequest):

  • loader/SubframeLoader.h:
  • loader/SubresourceLoader.h:
  • loader/TextResourceDecoder.h:
  • loader/appcache/ApplicationCacheStorage.h:
  • loader/cache/MemoryCache.h:
  • loader/icon/IconDatabaseBase.h:
  • loader/ios/DiskImageCacheIOS.h:
  • page/Chrome.h:
  • page/SecurityOrigin.h:
  • page/SecurityPolicy.h:
  • page/Settings.h:
  • page/UserContentController.h:
  • page/UserContentURLPattern.h:
  • page/UserMessageHandlerDescriptor.h:
  • page/ViewportConfiguration.h:
  • page/VisitedLinkStore.h:
  • page/WheelEventDeltaTracker.h:
  • page/cocoa/UserAgent.h:
  • page/scrolling/ScrollingConstraints.h:
  • page/scrolling/ScrollingCoordinator.h:
  • page/scrolling/ScrollingStateFixedNode.h:
  • page/scrolling/ScrollingStateFrameScrollingNode.h:
  • page/scrolling/ScrollingStateNode.h:
  • page/scrolling/ScrollingStateOverflowScrollingNode.h:
  • page/scrolling/ScrollingStateScrollingNode.h:
  • page/scrolling/ScrollingStateStickyNode.h:
  • page/scrolling/ScrollingStateTree.h:
  • page/scrolling/ScrollingThread.h:
  • page/scrolling/ScrollingTree.h:
  • page/scrolling/ScrollingTreeOverflowScrollingNode.h:
  • page/scrolling/ScrollingTreeScrollingNode.h:
  • page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.h:
  • page/scrolling/mac/ScrollingTreeFixedNode.h:
  • page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h:
  • page/scrolling/mac/ScrollingTreeStickyNode.h:
  • platform/Cursor.h:
  • platform/DragImage.h:
  • platform/FileSystem.h:
  • platform/Language.h:
  • platform/LinkHash.h:
  • platform/LocalizedStrings.h:
  • platform/Logging.h:
  • platform/MemoryPressureHandler.h:
  • platform/NotImplemented.h:
  • platform/PlatformStrategies.h:
  • platform/PublicSuffix.h:
  • platform/RuntimeApplicationChecks.h:
  • platform/RuntimeApplicationChecksIOS.h:
  • platform/SchemeRegistry.h:
  • platform/ScrollView.h:
  • platform/ScrollableArea.h:
  • platform/Scrollbar.h:
  • platform/ScrollbarTheme.h:
  • platform/SharedBuffer.h:
  • platform/ThreadCheck.h:
  • platform/ThreadGlobalData.h:
  • platform/Timer.h:
  • platform/URL.h:
  • platform/UUID.h:
  • platform/UserActivity.h:
  • platform/Widget.h:
  • platform/cf/CFURLExtras.h:
  • platform/cf/RunLoopObserver.h:
  • platform/cocoa/SystemVersion.h:
  • platform/graphics/Color.h:
  • platform/graphics/FloatRect.h:
  • platform/graphics/FontCache.h:
  • platform/graphics/GeometryUtilities.h:
  • platform/graphics/GraphicsContext.h:
  • platform/graphics/IntRect.h:
  • platform/graphics/LayoutRect.h:
  • platform/graphics/StringTruncator.h:
  • platform/graphics/TextRun.h:
  • platform/graphics/ca/TileController.h:
  • platform/graphics/ca/mac/PlatformCAAnimationMac.h:
  • platform/graphics/cg/GraphicsContextCG.h:
  • platform/graphics/mac/ColorMac.h:
  • platform/graphics/transforms/TransformationMatrix.h:
  • platform/ios/FileSystemIOS.h:
  • platform/ios/PlatformEventFactoryIOS.h:
  • platform/ios/SelectionRect.h:
  • platform/ios/SystemMemory.h:
  • platform/ios/TileControllerMemoryHandlerIOS.h:
  • platform/ios/WebVideoFullscreenInterfaceAVKit.h:
  • platform/mac/PlatformEventFactoryMac.h:
  • platform/mac/ScrollbarThemeMac.h:
  • platform/mac/WebCoreNSURLExtras.h:
  • platform/mac/WebNSAttributedStringExtras.h:
  • platform/network/BlobRegistry.h:
  • platform/network/CookieStorage.h:
  • platform/network/DNS.h:
  • platform/network/NetworkStateNotifier.h:
  • platform/network/PlatformCookieJar.h:
  • platform/network/ProxyServer.h:
  • platform/network/ResourceErrorBase.h:
  • platform/network/ResourceHandle.h:
  • platform/network/ResourceHandleClient.h:
  • platform/network/ResourceRequestBase.h:
  • platform/network/ResourceResponseBase.h:
  • platform/network/SynchronousLoaderClient.h:
  • platform/network/cf/ResourceError.h:
  • platform/network/cf/ResourceRequest.h:
  • platform/network/cf/ResourceResponse.h:
  • platform/network/ios/QuickLook.h:
  • platform/network/mac/AuthenticationMac.h:
  • platform/sql/SQLiteDatabase.cpp:
  • platform/text/LocaleToScriptMapping.h:
  • platform/text/TextBreakIterator.h:
  • platform/text/TextEncoding.h:

(WebCore::TextEncoding::decode):

  • platform/text/TextEncodingRegistry.h:
  • platform/text/TextStream.h:
  • rendering/RenderBlock.h:
  • rendering/RenderBox.h:
  • rendering/RenderEmbeddedObject.h:
  • rendering/RenderLayer.h:
  • rendering/RenderLayerBacking.h:
  • rendering/RenderLayerCompositor.h:
  • rendering/RenderListItem.h:
  • rendering/RenderObject.h:
  • rendering/RenderText.h:
  • rendering/RenderTextControl.h:
  • rendering/RenderThemeIOS.h:
  • rendering/RenderTreeAsText.h:
  • rendering/RenderView.h:
  • rendering/RenderWidget.h:
  • rendering/ScrollBehavior.cpp:
  • rendering/break_lines.cpp:
  • rendering/style/RenderStyle.h:
  • replay/UserInputBridge.h:
  • storage/StorageEventDispatcher.h:
  • storage/StorageMap.h:
  • storage/StorageStrategy.h:
  • storage/StorageTracker.h:
  • testing/Internals.h:
  • workers/WorkerThread.h:

Added more WEBCORE_EXPORT macros where needed.

8:55 PM Changeset in webkit [172848] by matthew_hanson@apple.com
  • 5 edits in branches/safari-600.1-branch/Source

Versioning.

8:35 PM Changeset in webkit [172847] by Alan Bujtas
  • 2 edits
    1 add
    1 delete in trunk/LayoutTests

ruby-base-merge-block-children-crash-2.html should not use render tree dump.

Unreviewed gardening.

  • fast/ruby/ruby-base-merge-block-children-crash-2-expected.txt: Added.
  • fast/ruby/ruby-base-merge-block-children-crash-2.html: restore previous version of the test.
  • platform/mac/fast/ruby/ruby-base-merge-block-children-crash-2-expected.txt: Removed.
8:27 PM Changeset in webkit [172846] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Possible RetainPtr misuse in WKScriptMessage.mm - could leak
https://bugs.webkit.org/show_bug.cgi?id=136140

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-08-21
Reviewed by Darin Adler.

Adopt a copy into a RetainPtr to avoid leaking.

  • UIProcess/API/Cocoa/WKScriptMessage.mm:

(-[WKScriptMessage _initWithBody:webView:frameInfo:name:]):

8:22 PM Changeset in webkit [172845] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Web Inspector: RetainPtr misuse, CFRunLoopSource leak
https://bugs.webkit.org/show_bug.cgi?id=136143

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-08-21
Reviewed by Timothy Hatcher.

Adopt a Create into the RetainPtr to avoid leaking.

  • inspector/remote/RemoteInspectorDebuggableConnection.mm:

(Inspector::RemoteInspectorDebuggableConnection::setupRunLoop):

8:14 PM Changeset in webkit [172844] by timothy_horton@apple.com
  • 138 edits in trunk/Source

Revert r172831, it broke the Windows build.

  • wtf/ExportMacros.h:

... and many more.

8:07 PM Changeset in webkit [172843] by Alan Bujtas
  • 1 edit
    2 deletes in trunk/LayoutTests

Remove flaky saturated reftest. UnitTest takes care of saturated arithmetics.

Unreviewed gardening.

  • fast/dynamic/saturated-layout-arithmetic-expected.html: Removed.
  • fast/dynamic/saturated-layout-arithmetic.html: Removed.
6:28 PM Changeset in webkit [172842] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix when RUBBER_BANDING is not enabled.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::overhangAmount):
(WebCore::RenderLayer::setHasHorizontalScrollbar):
(WebCore::RenderLayer::setHasVerticalScrollbar):

6:19 PM Changeset in webkit [172841] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

[Win] WebCore.proj is not copying WebKit resource files.
https://bugs.webkit.org/show_bug.cgi?id=136142
<rdar://problem/17733682>

Reviewed by Tim Horton.

  • WebCore.vcxproj/WebCore.proj: Copy missing resource files during

post-build step.

5:25 PM Changeset in webkit [172840] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL][WK2] Minibrowser : Add stop button to abort page load
https://bugs.webkit.org/show_bug.cgi?id=136122

Patch by Rohit Kumar <kumar.rohit@samsung.com> on 2014-08-21
Reviewed by Gyuyoung Kim.

  • MiniBrowser/efl/main.c:

(on_key_down):
(on_stop_button_clicked): Callback for stop button press.
(window_create):

4:49 PM Changeset in webkit [172839] by Simon Fraser
  • 3 edits
    1 add in trunk/Source/WebInspectorUI

Add a button to enable paint flashing in the web inspector
https://bugs.webkit.org/show_bug.cgi?id=136133

Reviewed by Tim Hatcher.

Add a button to the right of the layer borders button to turn on paint flashing.
Future patches will actually enable this feature.

  • Localizations/en.lproj/localizedStrings.js: Tooltip strings.
  • UserInterface/Images/PaintFlashing.svg: Added. "Paintbrush" icon.
  • UserInterface/Views/DOMTreeContentView.js:

(WebInspector.DOMTreeContentView):
(WebInspector.DOMTreeContentView.prototype.get navigationItems):
(WebInspector.DOMTreeContentView.prototype._togglePaintFlashing):

4:11 PM Changeset in webkit [172838] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION(r172808): It made 6 different tests fail on 32 bit platforms.
<https://webkit.org/b/136123>

Reviewed by Filip Pizlo.

The original patch in r172808 removed the code to skip the top scope in
the 64-bit port of JIT::emitResolveClosure() but not in the 32-bit port.
This patch fixes that and achieves parity.

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emitResolveClosure):

4:09 PM Changeset in webkit [172837] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Try to fix the 32-bit build by using wildcards in the exported non-virtual thunks
for GraphicsLayerCA::platformCALayerAnimationStarted and GraphicsLayerCA::platformCALayerAnimationEnded.

  • WebCore.exp.in:
3:43 PM Changeset in webkit [172836] by Simon Fraser
  • 31 edits in trunk/Source

Add animationDidEnd callbacks on GraphicsLayer
https://bugs.webkit.org/show_bug.cgi?id=136084

Reviewed by Tim Horton.

Hook up GraphicsLayerClient::notifyAnimationEnded() so that code using GraphicsLayers directly
can add animations, and know when they finish.

Source/WebCore:

  • WebCore.exp.in:
  • platform/graphics/GraphicsLayerClient.h:

(WebCore::GraphicsLayerClient::notifyAnimationStarted):
(WebCore::GraphicsLayerClient::notifyAnimationEnded):

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::platformCALayerAnimationStarted):
(WebCore::GraphicsLayerCA::platformCALayerAnimationEnded):

  • platform/graphics/ca/GraphicsLayerCA.h:
  • platform/graphics/ca/PlatformCALayer.h:
  • platform/graphics/ca/PlatformCALayerClient.h:

(WebCore::PlatformCALayerClient::platformCALayerAnimationStarted):
(WebCore::PlatformCALayerClient::platformCALayerAnimationEnded):

  • platform/graphics/ca/mac/PlatformCALayerMac.h:
  • platform/graphics/ca/mac/PlatformCALayerMac.mm:

(-[WebAnimationDelegate animationDidStart:]):
(-[WebAnimationDelegate animationDidStop:finished:]):
(PlatformCALayerMac::animationStarted):
(PlatformCALayerMac::animationEnded):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::notifyAnimationStarted):

  • rendering/RenderLayerBacking.h:

Source/WebKit2:

  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:

(WebKit::RemoteLayerTreeDrawingAreaProxy::acceleratedAnimationDidEnd):

  • UIProcess/mac/RemoteLayerTreeHost.h:
  • UIProcess/mac/RemoteLayerTreeHost.mm:

(WebKit::RemoteLayerTreeHost::animationDidEnd):

  • WebProcess/WebPage/DrawingArea.h:

(WebKit::DrawingArea::acceleratedAnimationDidEnd):

  • WebProcess/WebPage/DrawingArea.messages.in:
  • WebProcess/WebPage/mac/PlatformCAAnimationRemote.mm:

(-[WKAnimationDelegate animationDidStop:finished:]):

  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(WebKit::PlatformCALayerRemote::animationStarted):
(WebKit::PlatformCALayerRemote::animationEnded):

  • WebProcess/WebPage/mac/PlatformCALayerRemote.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:

(WebKit::RemoteLayerTreeContext::layerWillBeDestroyed):
(WebKit::RemoteLayerTreeContext::willStartAnimationOnLayer):
(WebKit::RemoteLayerTreeContext::animationDidStart):
(WebKit::RemoteLayerTreeContext::animationDidEnd):

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::acceleratedAnimationDidEnd):

2:34 PM Changeset in webkit [172835] by Alan Bujtas
  • 17 edits
    2 adds in trunk

Enable SATURATED_LAYOUT_ARITHMETIC.
https://bugs.webkit.org/show_bug.cgi?id=136106

Reviewed by Simon Fraser.

SATURATED_LAYOUT_ARITHMETIC protects LayoutUnit against arithmetic overflow.
(No measurable performance regression on Mac.)

.:

  • Source/cmake/OptionsMac.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Test: fast/dynamic/saturated-layout-arithmetic.html

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:

  • wtf/FeatureDefines.h:

LayoutTests:

  • fast/dynamic/saturated-layout-arithmetic-expected.html: Added.
  • fast/dynamic/saturated-layout-arithmetic.html: Added.
  • fast/ruby/ruby-base-merge-block-children-crash-2.html: saturated arithmetics changes behavior. fix test case.
  • scrollbars/scrollbar-large-overflow-rectangle.html: saturated arithmetics changes behavior. fix test case.
2:30 PM Changeset in webkit [172834] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

New ruby parsing rule breaks some real web sites.
https://bugs.webkit.org/show_bug.cgi?id=136062

Patch by Yuki Sekiguchi <yuki.sekiguchi@access-company.com> on 2014-08-21
Reviewed by Ryosuke Niwa.

Source/WebCore:

An RP element should not auto close an RTC element.

The HTML5.1 spec was changed:
http://www.w3.org/html/wg/drafts/html/master/syntax.html#parsing-main-inbody
This was done at the following commit:
https://github.com/w3c/html/commit/c61397b989b28235ee2228f280aa8d475f3b9ebf

This patch changed the RP element's behavior to follow the spec change.

Test: fast/ruby/rp-inside-rtc.html

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::processStartTagForInBody):

LayoutTests:

html5lib-test was updated using my pull request:
https://github.com/darobin/html5lib-tests/pull/2

  • fast/ruby/rp-inside-rtc-expected.html: Added.
  • fast/ruby/rp-inside-rtc.html: Added.
  • html5lib/resources/ruby.dat: The rp element should not auto close the rtc element.
1:29 PM Changeset in webkit [172833] by commit-queue@webkit.org
  • 4 edits
    4 adds in trunk

REGRESSION: CSS not() selector does not work when it appears after or within @supports
https://bugs.webkit.org/show_bug.cgi?id=136063

Patch by Yuki Sekiguchi <yuki.sekiguchi@access-company.com> on 2014-08-21
Reviewed by Darin Adler.

Source/WebCore:

CSSParser changes its m_parsingMode to SupportsMode when it finds
"@supports" token. However, the mode will be never changed to
NormalMode. This changes parsing algorithm for "not" token forever,
and it cannot parse not pseudo class selector.

When we finish parsing @supports rule, we should change to normal
mode.

@media does the same thing. This patch changed CharacterEndMediaQuery
to CharacterEndConditionQuery, and we change parsing mode from
SupportsMode to NormalMode when the parser finished to parse
@supports rule.

Like "@-webkit-mediaquery", we cannot use '{' to
"@-webkit-supports-condition". Changed "@-webkit-supports-condition"
parsing rule and parseSupportsCondition() not to use '{'.

Tests: css3/supports-not-selector-cssom.html

css3/supports-not-selector.html

  • css/CSSGrammar.y.in:
  • css/CSSParser.cpp:

(WebCore::CSSParser::parseSupportsCondition):
(WebCore::isCSSLetter):
(WebCore::CSSParser::realLex):

LayoutTests:

Test that @supports doesn't break "not" pseudo class selector.

  • css3/supports-not-selector-cssom-expected.txt: Added.
  • css3/supports-not-selector-cssom.html: Added.
  • css3/supports-not-selector-expected.html: Added.
  • css3/supports-not-selector.html: Added.
1:08 PM Changeset in webkit [172832] by Beth Dakin
  • 22 edits in trunk

overflow:scroll elements should support rubber-banding
https://bugs.webkit.org/show_bug.cgi?id=91655

Reviewed by Sam Weinig and Darin Adler.

Source/WebCore:

This patch enables rubber-banding in overflow regions and it keeps latching
working as currently implemented.

We cannot return early here if there is no scroll delta. There won't be a scroll
delta in most cases during event.phase() == PlatformWheelEventPhaseEnded, but that
phase is required to be processed in order for rubber-banding to work properly.

  • dom/Element.cpp:

(WebCore::Element::dispatchWheelEvent):

  • page/EventHandler.cpp:

(WebCore::handleWheelEventInAppropriateEnclosingBoxForSingleAxis):

Add a setting for this, which will default to true. This allows us to disable the
feature in WebKit1 for now. There is a bug about making it work.

  • page/Settings.in:

allowsHorizontalStretching() and allowsVerticalStretching() now take the
PlatformWheelEvent as a parameter, so that ScrollElasticityAutomatic can use the
event to decide whether or not stretching should be allowed in this case.
ScrollElasticityAutomatic will not allow stretching if it is a brand new gesture
that would result in a rubber-band. We don't want to rubber-band in that case
because we want the event to propagate up to a parent view. Also added some helper
functions just to make that code easier to read.

  • page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h:
  • page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:

(WebCore::newGestureIsStarting):
(WebCore::ScrollingTreeFrameScrollingNodeMac::isAlreadyPinnedInDirectionOfGesture):
(WebCore::ScrollingTreeFrameScrollingNodeMac::allowsHorizontalStretching):
(WebCore::ScrollingTreeFrameScrollingNodeMac::allowsVerticalStretching):

  • platform/mac/ScrollAnimatorMac.h:
  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::ScrollAnimatorMac::handleWheelEvent):
(WebCore::newGestureIsStarting):
(WebCore::ScrollAnimatorMac::isAlreadyPinnedInDirectionOfGesture):
(WebCore::ScrollAnimatorMac::allowsVerticalStretching):
(WebCore::ScrollAnimatorMac::allowsHorizontalStretching):

  • platform/mac/ScrollElasticityController.h:
  • platform/mac/ScrollElasticityController.mm:

(WebCore::ScrollElasticityController::handleWheelEvent):

To opt into rubber-banding, all we have to do is implement overhangAmount and set
scroll elasticity. We'll choose ScrollElasticityAutomatic which means that we'll
only rubber-band in directions that can scroll and that we won't rubber-band for
new gestures when we're already pinned to the edge.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::overhangAmount):
(WebCore::RenderLayer::setHasHorizontalScrollbar):
(WebCore::RenderLayer::setHasVerticalScrollbar):

Source/WebKit/mac:

Disable rubber-banding in overflow areas for now.

  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):

LayoutTests:

Re-baseline. Mostly these tests are different now that end end event is handled.

  • platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-div-latched-div-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-div-latched-div-with-handler-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-div-latched-mainframe-with-handler-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe-with-handler-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe-with-handler-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-select-latched-mainframe-with-handler-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-select-latched-select-with-handler-expected.txt:

This test requires a longer timeout to ensure that the rubber-band has ended.

  • platform/mac/fast/scrolling/scroll-latched-nested-div.html:
12:51 PM Changeset in webkit [172831] by achristensen@apple.com
  • 138 edits in trunk/Source

More WEBCORE_EXPORT macros.
https://bugs.webkit.org/show_bug.cgi?id=136129

Reviewed by Tim Horton.

Source/WebCore:

  • Modules/geolocation/Geolocation.h:
  • Modules/geolocation/GeolocationController.h:
  • Modules/indexeddb/IDBDatabaseBackend.h:
  • Modules/indexeddb/IDBDatabaseMetadata.h:
  • Modules/indexeddb/IDBKey.h:
  • Modules/indexeddb/IDBKeyData.h:
  • Modules/indexeddb/IDBKeyPath.h:
  • Modules/indexeddb/IDBKeyRange.h:
  • Modules/indexeddb/IDBKeyRangeData.h:
  • Modules/notifications/Notification.h:
  • Modules/notifications/NotificationController.h:
  • bindings/js/GCController.h:
  • bridge/IdentifierRep.h:
  • css/StyleProperties.h:
  • dom/ExceptionCodePlaceholder.h:
  • dom/KeyboardEvent.h:
  • dom/MouseEvent.h:
  • dom/MouseRelatedEvent.h:
  • dom/Node.h:

(WebCore::Node::hasEditableStyle):

  • dom/NodeTraversal.h:
  • dom/Position.h:

(WebCore::Position::Position):

  • dom/Range.h:

(WebCore::Range::startContainer):
(WebCore::Range::startOffset):
(WebCore::Range::endContainer):
(WebCore::Range::endOffset):

  • editing/FrameSelection.h:

(WebCore::DragCaretController::clear):

  • history/HistoryItem.h:
  • history/PageCache.h:
  • html/FormController.h:
  • html/HTMLElement.h:
  • html/HTMLFormElement.h:
  • html/HTMLFrameOwnerElement.h:
  • html/HTMLInputElement.h:
  • html/HTMLMediaElement.h:
  • html/HTMLOptGroupElement.h:
  • html/HTMLOptionElement.h:
  • html/HTMLPlugInElement.h:
  • html/HTMLPlugInImageElement.h:
  • html/HTMLSelectElement.h:
  • html/HTMLTableCellElement.h:
  • html/HTMLTextAreaElement.h:
  • html/HTMLTextFormControlElement.h:
  • html/HTMLVideoElement.h:
  • html/ImageDocument.h:
  • html/PluginDocument.h:
  • html/forms/FileIconLoader.h:
  • html/shadow/InsertionPoint.h:
  • inspector/InspectorClient.h:
  • inspector/InspectorController.h:
  • inspector/InspectorFrontendClientLocal.h:
  • inspector/InspectorInstrumentation.h:
  • loader/FrameLoadRequest.h:
  • loader/FrameLoader.h:
  • loader/FrameLoaderStateMachine.h:
  • loader/HistoryController.h:
  • loader/LoaderStrategy.h:
  • loader/NavigationAction.h:
  • loader/NetscapePlugInStreamLoader.h:
  • loader/ProgressTracker.h:
  • loader/archive/cf/LegacyWebArchive.h:
  • loader/cache/MemoryCache.h:
  • loader/icon/IconController.h:
  • loader/icon/IconDatabase.h:
  • loader/icon/IconDatabaseBase.h:
  • page/FocusController.h:
  • page/Frame.h:
  • page/FrameDestructionObserver.h:

Replaced WEBCORE_TESTING with WEBCORE_EXPORT.

  • page/FrameTree.h:
  • page/FrameView.h:
  • page/Page.h:
  • page/PageConsole.h:
  • page/PageGroup.h:
  • page/PageThrottler.h:
  • page/PrintContext.h:
  • page/scrolling/ScrollingConstraints.h:
  • page/scrolling/ScrollingStateNode.h:
  • platform/FileChooser.h:
  • platform/GamepadProvider.h:
  • platform/Length.h:
  • platform/MIMETypeRegistry.h:
  • platform/MemoryPressureHandler.h:
  • platform/Pasteboard.h:
  • platform/PlatformExportMacros.h:

Removed WEBCORE_TESTING, which I'm replacing with WEBCORE_EXPORT.

  • platform/PlatformKeyboardEvent.h:
  • platform/PlatformPasteboard.h:
  • platform/PlatformSpeechSynthesisVoice.h:
  • platform/PlatformSpeechSynthesizer.h:
  • platform/audio/MediaSessionManager.h:
  • platform/graphics/FloatPoint.h:
  • platform/graphics/FloatQuad.h:
  • platform/graphics/FloatRect.h:
  • platform/graphics/FloatSize.h:
  • platform/graphics/Font.h:
  • platform/graphics/FontCache.h:
  • platform/graphics/FontGlyphs.h:
  • platform/graphics/FontPlatformData.h:
  • platform/graphics/GlyphPageTreeNode.h:
  • platform/graphics/Gradient.h:
  • platform/graphics/GraphicsContext.h:
  • platform/graphics/GraphicsLayer.h:
  • platform/graphics/Icon.h:
  • platform/graphics/Image.h:
  • platform/graphics/ImageBuffer.h:
  • platform/graphics/IntPoint.h:
  • platform/graphics/IntRect.h:
  • platform/graphics/IntSize.h:
  • platform/graphics/LayoutRect.h:
  • platform/graphics/MediaPlayer.h:
  • platform/graphics/Path.h:
  • platform/graphics/Region.h:
  • platform/graphics/ca/GraphicsLayerCA.h:
  • platform/graphics/ca/LayerFlushScheduler.h:
  • platform/graphics/ca/LayerPool.h:
  • platform/graphics/ca/PlatformCAFilters.h:
  • platform/graphics/ca/PlatformCALayer.h:
  • platform/graphics/ca/mac/PlatformCAAnimationMac.h:
  • platform/graphics/ca/mac/PlatformCALayerMac.h:
  • platform/graphics/cg/IOSurfacePool.h:
  • platform/graphics/cocoa/IOSurface.h:
  • platform/graphics/filters/FilterOperations.h:
  • platform/graphics/mac/MediaPlayerPrivateQTKit.h:
  • platform/ios/LegacyTileCache.h:
  • platform/ios/PlatformEventFactoryIOS.h:
  • platform/ios/wak/FloatingPointEnvironment.h:
  • platform/mac/HIDGamepadProvider.h:
  • platform/mock/MockMediaStreamCenter.h:
  • platform/network/FormData.h:
  • platform/network/HTTPHeaderMap.h:
  • platform/network/NetworkStorageSession.h:
  • platform/network/ProtectionSpaceBase.h:
  • platform/network/cocoa/ProtectionSpaceCocoa.h:

(WebCore::ProtectionSpace::encodingRequiresPlatformData):

  • platform/network/ios/QuickLook.h:
  • platform/text/TextBreakIterator.h:
  • plugins/PluginData.h:
  • plugins/PluginMainThreadScheduler.h:
  • rendering/HitTestLocation.h:
  • rendering/HitTestResult.h:
  • rendering/InlineBox.h:

Added more WEBCORE_EXPORT macros, which don't do anything yet.

Source/WTF:

  • wtf/ExportMacros.h:

Removed WTF_TESTING which isn't used.

8:47 AM Changeset in webkit [172830] by clopez@igalia.com
  • 8 edits in trunk/Tools

[GTK] Load the llvmpipe (Mesa) libraries when running the tests with Xvfb.
https://bugs.webkit.org/show_bug.cgi?id=134070

Reviewed by Martin Robinson.

  • Scripts/webkitpy/port/base.py:

(Port.init): Set default _jhbuild_wrapper variable.
(Port._should_use_jhbuild): Implement generic check.

  • Scripts/webkitpy/port/efl.py: Rename to jhbuild_wrapper variable

to make it consistent with the other ports.

  • Scripts/webkitpy/port/gtk.py:

(GtkPort.init): Use the new _should_use_jhbuild() method.
(GtkPort.setup_environ_for_server): Get the path for llvmpipe_libgl_path by
querying the jhbuild with printenv. Also check that the path contains
the libraries we expect. Preload this path only for XvfbDriver.

  • Scripts/webkitpy/port/xvfbdriver.py:

(XvfbDriver.check_driver): Check for the jhbuild wrapper and use it.
(XvfbDriver._start): The environment for llvmpipe_libgl_path is now
configured at setup_environ_for_server()

  • Scripts/webkitpy/port/xvfbdriver_unittest.py:

(XvfbDriverTest.make_driver): Get the port default environment.
(XvfbDriverTest.test_start_no_pixel_tests): The expected log now
should include the environment that is passed when running Xvfb.
(XvfbDriverTest.test_start_pixel_tests): Ditto.
(XvfbDriverTest.test_start_arbitrary_worker_number): Ditto.
(XvfbDriverTest.test_start_next_worker): Ditto.

  • gtk/jhbuild.modules: Rename checkoutdir to generic "Mesa" to

prevent future problems when the version is raised. Add also a
comment with a warning.

  • gtk/jhbuildrc: The path LLVMPIPE_LIBGL_PATH should be the one

that has the llvm optimized Gallium libGL libraries.

6:06 AM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
5:29 AM Changeset in webkit [172829] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Fix countFailures of RunLLINTCLoopTests and Run32bitJSCTests.
https://bugs.webkit.org/show_bug.cgi?id=136125

Patch by Renato Nagy <nagy.renato@stud.u-szeged.hu> on 2014-08-21
Reviewed by Csaba Osztrogonác.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(RunLLINTCLoopTests.countFailures):
(Run32bitJSCTests.countFailures):

  • BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:

(RunLLINTCLoopTestsTest):
(RunLLINTCLoopTestsTest.assertResults):
(RunLLINTCLoopTestsTest.test_failures):
(RunLLINTCLoopTestsTest.test_failure):
(RunLLINTCLoopTestsTest.test_no_failure):
(Run32bitJSCTestsTest):
(Run32bitJSCTestsTest.assertResults):
(Run32bitJSCTestsTest.test_failures):
(Run32bitJSCTestsTest.test_failure):
(Run32bitJSCTestsTest.test_no_failure):

4:00 AM WebKitGTK/2.4.x edited by vjaquez@igalia.com
minor code style fix (diff)
3:57 AM WebKitGTK/2.4.x edited by vjaquez@igalia.com
propose r172828 for 2.4.5 (diff)
3:51 AM Changeset in webkit [172828] by vjaquez@igalia.com
  • 6 edits in trunk

[GTK] WebkitWebProcess crashing navigating away from ogg video element
https://bugs.webkit.org/show_bug.cgi?id=135348

Reviewed by Philippe Normand.

Source/WebCore:

Let GraphicsLayerTextureMapper know it needs to detach the platform
layer when a MediaPlayerPrivateGStreamerBase is destroyed.

No new test since media/restore-from-page-cache.html covers it.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::MediaPlayerPrivateGStreamerBase::~MediaPlayerPrivateGStreamerBase):

Source/WebKit2:

When a page is cached, by default doesn't recreate the backing store
(an optimization added in r89316).

Not all the ports uses that optimization. For example IOS port doesn't
use it (r161185).

In the case of the GTK port, the MediaPlayerPrivateGStreamer, not only
processes video buffers, also display them, because it is a
TextureMapperPlatformLayer too.

Nevertheless, in r153937, when a page is cached, the player is
destroyed. But our player has a backing store and the render tree
doesn't know that the player has gone. Hence, when the page is redraw,
the TextureMapper tree visits the video element, which doesn't exist
anymore, a segmentation fault occurs.

So, as our media player renders, and as we cannot trust that the
player exists when a page is painted, we cannot rely in the r89316
optimization.

Disabling the backing stores optimization fixes the problem.

Covered by existing tests.

  • WebProcess/soup/WebProcessSoup.cpp:

(WebKit::WebProcess::platformSetCacheModel): Enable the backing store
clearing when page caching for GTK.

LayoutTests:

  • platform/gtk/TestExpectations: Enable

media/restore-from-page-cache.html,
plugins/netscape-plugin-page-cache-works.html and
animations/resume-after-page-cache.html. They should pass correctly.
Skip compositing/iframes/page-cache-layer-tree.html since we disable
that optimization.

2:32 AM Changeset in webkit [172827] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL][WK2] Websocket Layout Tests passed in latest build.
https://bugs.webkit.org/show_bug.cgi?id=136100

Unreviewed gardening.

Websocket Layout Tests passed in latest build, possibly because r172438 (https://bugs.webkit.org/show_bug.cgi?id=135831) in version
172796.

Patch by Shivakumar JM <shiva.jm@samsung.com> on 2014-08-21

  • platform/efl/TestExpectations:

Aug 20, 2014:

8:33 PM Changeset in webkit [172826] by benjamin@webkit.org
  • 22 edits
    12 adds in trunk

CSS: Implement the :placeholder-shown pseudo-class from Selectors Level 4
https://bugs.webkit.org/show_bug.cgi?id=118162

Reviewed by Antti Koivisto.

Source/WebCore:

Previously, HTMLTextFormControlElement was using some mix of its own state
and style to change the visibility of the placeholder. That approach was a little
bit too fragile, and we do not want the style to depends on the renderer() since
that creates circular dependencies.

The biggest change here is refactoring HTMLTextFormControlElement to have
1) An explicit "visible placeholder" state.
2) Separate the textUpdate() from the visibilityUpdate().
3) Remove the dependencies between the Element's style and the placeholder's style.

This is done by simply using display:none; on the placeholder so that its parent's visibility
is irrelevant.

When matching the selector, the style is set as unique since style sharing does not deal with
the changes of HTMLTextFormControlElement.

Tests: fast/css/placeholder-shown-basics.html

fast/selectors/placeholder-shown-long-adjacent-backtracking.html
fast/selectors/placeholder-shown-sibling-style-update.html
fast/selectors/placeholder-shown-style-update.html
fast/selectors/placeholder-shown-with-input-basics.html
fast/selectors/placeholder-shown-with-textarea-basics.html

  • css/CSSSelector.cpp:

(WebCore::CSSSelector::selectorText):
Add the CSS Selector description for CSSOM.

  • css/CSSSelector.h:
  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne):

  • css/SelectorCheckerTestFunctions.h:

(WebCore::isPlaceholderShown):

  • css/SelectorPseudoClassAndCompatibilityElementMap.in:
  • css/html.css:

(::-webkit-input-placeholder):
Previously, the display was forced through the UA stylesheet. Since the display is now part
of the placeholder visibility, it is explicitly handled by HTMLTextFormControlElement and
its subclasses.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::addPseudoClassType):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::makeUniqueIfNecessaryAndTestIsPlaceholderShown):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasPlaceholderShown):

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::parseAttribute):

  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::updateValue):
(WebCore::HTMLTextAreaElement::setValueCommon):
(WebCore::HTMLTextAreaElement::updatePlaceholderText):

  • html/HTMLTextFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::HTMLTextFormControlElement):
(WebCore::HTMLTextFormControlElement::dispatchFocusEvent):
(WebCore::HTMLTextFormControlElement::dispatchBlurEvent):
(WebCore::HTMLTextFormControlElement::placeholderShouldBeVisible):
(WebCore::HTMLTextFormControlElement::updatePlaceholderVisibility):
(WebCore::HTMLTextFormControlElement::selectionDirection):
(WebCore::HTMLTextFormControlElement::restoreCachedSelection):
(WebCore::HTMLTextFormControlElement::parseAttribute):
(WebCore::HTMLTextFormControlElement::hidePlaceholder):
(WebCore::HTMLTextFormControlElement::showPlaceholderIfNecessary):

  • html/HTMLTextFormControlElement.h:

(WebCore::HTMLTextFormControlElement::isPlaceholderVisible):
(WebCore::HTMLTextFormControlElement::cachedSelectionDirection):

  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::updatePlaceholderText):
(WebCore::TextFieldInputType::subtreeHasChanged):
(WebCore::TextFieldInputType::updateInnerTextValue):

  • rendering/RenderTextControl.cpp:

(WebCore::RenderTextControl::styleDidChange):

  • testing/Internals.cpp:

(WebCore::Internals::visiblePlaceholder):

LayoutTests:

Add basic test coverage for common operations: styling, querySelector, CSSOM.

The layout test failure of placeholder-shown-sibling-style-update.html seems unrelated
to this patch, it fails in many more cases. This will be investigated separately, the failure
are used as expected values for now.

  • fast/css/css-selector-text-expected.txt:
  • fast/css/css-selector-text.html:
  • fast/css/css-set-selector-text-expected.txt:
  • fast/css/css-set-selector-text.html:
  • fast/css/placeholder-shown-basics-expected.html: Added.
  • fast/css/placeholder-shown-basics.html: Added.
  • fast/selectors/placeholder-shown-long-adjacent-backtracking-expected.txt: Added.
  • fast/selectors/placeholder-shown-long-adjacent-backtracking.html: Added.
  • fast/selectors/placeholder-shown-sibling-style-update-expected.txt: Added.
  • fast/selectors/placeholder-shown-sibling-style-update.html: Added.
  • fast/selectors/placeholder-shown-style-update-expected.txt: Added.
  • fast/selectors/placeholder-shown-style-update.html: Added.
  • fast/selectors/placeholder-shown-with-input-basics-expected.txt: Added.
  • fast/selectors/placeholder-shown-with-input-basics.html: Added.
  • fast/selectors/placeholder-shown-with-textarea-basics-expected.txt: Added.
  • fast/selectors/placeholder-shown-with-textarea-basics.html: Added.
8:24 PM Changeset in webkit [172825] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Tools

Unreviewed, EFL build fix since r172814.

  • WebKitTestRunner/config.h: Define WEBCORE_EXPORT.
8:20 PM Changeset in webkit [172824] by dburkart@apple.com
  • 1 copy in tags/Safari-600.1.14

Tag 600.1.14

7:45 PM Changeset in webkit [172823] by matthew_hanson@apple.com
  • 5 edits in branches/safari-600.1-branch/Source

Versioning.

7:29 PM Changeset in webkit [172822] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Fix how CodeBlock dumps the opcode op_profile_type
https://bugs.webkit.org/show_bug.cgi?id=136088

Patch by Saam Barati <sbarati@apple.com> on 2014-08-20
Reviewed by Filip Pizlo.

op_profile_type was modified to receive two extra arguments,
but its dump in CodeBlock::dumpBytecode wasn't changed to
account for this, so it broke CodeBlock::dumpBytecode when
op_profile_type was in the stream of bytecode instructions.
CodeBlock::dumpBytecode now accounts for the change in
op_profile_type's arity.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):

6:18 PM Changeset in webkit [172821] by dburkart@apple.com
  • 1 copy in tags/Safari-600.1.13

Tagging.

6:03 PM Changeset in webkit [172820] by commit-queue@webkit.org
  • 38 edits
    4 moves in trunk/Source

Rename HighFidelityTypeProfiling variables for more clarity
https://bugs.webkit.org/show_bug.cgi?id=135899

Patch by Saam Barati <sbarati@apple.com> on 2014-08-20
Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Many names that are used in the type profiling infrastructure
prefix themselves with "HighFidelity" or include the words "high"
and/or "fidelity" in some way. But the words "high" and "fidelity" don't
add anything descriptive to the names surrounding type profiling.
So this patch removes all uses of "HighFidelity" and its variants.

Most renamings change "HighFidelity*" to "TypeProfiler*" or simply
drop the prefix "HighFidelity" all together. Now, almost all names
in relation to type profiling contain in them "TypeProfiler" or
"TypeProfiling" or some combination of the words "type" and "profile".

This patch also changes how we check if type profiling is enabled:
We no longer call vm::isProfilingTypesWithHighFidelity. We now just
check that vm::typeProfiler is not null.

This patch also changes all calls to TypeProfilerLog::processLogEntries
to use ASCIILiteral to form WTFStrings instead of vanilla C string literals.

  • CMakeLists.txt:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/BytecodeList.json:
  • bytecode/BytecodeUseDef.h:

(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::CodeBlock):

  • bytecode/TypeLocation.h:
  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::UnlinkedFunctionExecutable::UnlinkedFunctionExecutable):
(JSC::UnlinkedCodeBlock::typeProfilerExpressionInfoForBytecodeOffset):
(JSC::UnlinkedCodeBlock::addTypeProfilerExpressionInfo):
(JSC::UnlinkedCodeBlock::highFidelityTypeProfileExpressionInfoForBytecodeOffset): Deleted.
(JSC::UnlinkedCodeBlock::addHighFidelityTypeProfileExpressionInfo): Deleted.

  • bytecode/UnlinkedCodeBlock.h:

(JSC::UnlinkedFunctionExecutable::typeProfilingStartOffset):
(JSC::UnlinkedFunctionExecutable::typeProfilingEndOffset):
(JSC::UnlinkedFunctionExecutable::highFidelityTypeProfilingStartOffset): Deleted.
(JSC::UnlinkedFunctionExecutable::highFidelityTypeProfilingEndOffset): Deleted.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::generate):
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::emitMove):
(JSC::BytecodeGenerator::emitTypeProfilerExpressionInfo):
(JSC::BytecodeGenerator::emitProfileType):
(JSC::BytecodeGenerator::emitHighFidelityTypeProfilingExpressionInfo): Deleted.
(JSC::BytecodeGenerator::emitProfileTypesWithHighFidelity): Deleted.

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::isProfilingTypesWithHighFidelity): Deleted.

  • bytecompiler/NodesCodegen.cpp:

(JSC::ThisNode::emitBytecode):
(JSC::ResolveNode::emitBytecode):
(JSC::BracketAccessorNode::emitBytecode):
(JSC::DotAccessorNode::emitBytecode):
(JSC::FunctionCallValueNode::emitBytecode):
(JSC::FunctionCallResolveNode::emitBytecode):
(JSC::FunctionCallBracketNode::emitBytecode):
(JSC::FunctionCallDotNode::emitBytecode):
(JSC::CallFunctionCallDotNode::emitBytecode):
(JSC::ApplyFunctionCallDotNode::emitBytecode):
(JSC::PostfixNode::emitResolve):
(JSC::PostfixNode::emitBracket):
(JSC::PostfixNode::emitDot):
(JSC::PrefixNode::emitResolve):
(JSC::PrefixNode::emitBracket):
(JSC::PrefixNode::emitDot):
(JSC::ReadModifyResolveNode::emitBytecode):
(JSC::AssignResolveNode::emitBytecode):
(JSC::AssignDotNode::emitBytecode):
(JSC::ReadModifyDotNode::emitBytecode):
(JSC::AssignBracketNode::emitBytecode):
(JSC::ReadModifyBracketNode::emitBytecode):
(JSC::ConstDeclNode::emitCodeSingle):
(JSC::EmptyVarExpression::emitBytecode):
(JSC::ReturnNode::emitBytecode):
(JSC::FunctionBodyNode::emitBytecode):

  • heap/Heap.cpp:

(JSC::Heap::collect):

  • inspector/agents/InspectorRuntimeAgent.cpp:

(Inspector::InspectorRuntimeAgent::getRuntimeTypesForVariablesAtOffsets):
(Inspector::recompileAllJSFunctionsForTypeProfiling):
(Inspector::InspectorRuntimeAgent::willDestroyFrontendAndBackend):
(Inspector::InspectorRuntimeAgent::enableTypeProfiler):
(Inspector::InspectorRuntimeAgent::disableTypeProfiler):
(Inspector::InspectorRuntimeAgent::setTypeProfilerEnabledState):
(Inspector::InspectorRuntimeAgent::enableHighFidelityTypeProfiling): Deleted.
(Inspector::InspectorRuntimeAgent::disableHighFidelityTypeProfiling): Deleted.
(Inspector::InspectorRuntimeAgent::setHighFidelityTypeProfilingEnabledState): Deleted.

  • inspector/agents/InspectorRuntimeAgent.h:
  • inspector/protocol/Runtime.json:
  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompile):

  • jit/JIT.h:
  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_profile_type):
(JSC::JIT::emit_op_profile_types_with_high_fidelity): Deleted.

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_profile_type):
(JSC::JIT::emit_op_profile_types_with_high_fidelity): Deleted.

  • jit/JITOperations.cpp:
  • jsc.cpp:

(functionDumpTypesForAllVariables):

  • llint/LLIntSlowPaths.cpp:
  • llint/LowLevelInterpreter.asm:
  • runtime/CodeCache.cpp:

(JSC::CodeCache::getGlobalCodeBlock):

  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

  • runtime/CommonSlowPaths.h:
  • runtime/Executable.cpp:

(JSC::ScriptExecutable::ScriptExecutable):
(JSC::ProgramExecutable::ProgramExecutable):
(JSC::FunctionExecutable::FunctionExecutable):
(JSC::ProgramExecutable::initializeGlobalProperties):

  • runtime/Executable.h:

(JSC::ScriptExecutable::typeProfilingStartOffset):
(JSC::ScriptExecutable::typeProfilingEndOffset):
(JSC::ScriptExecutable::highFidelityTypeProfilingStartOffset): Deleted.
(JSC::ScriptExecutable::highFidelityTypeProfilingEndOffset): Deleted.

  • runtime/HighFidelityLog.cpp: Removed.
  • runtime/HighFidelityLog.h: Removed.
  • runtime/HighFidelityTypeProfiler.cpp: Removed.
  • runtime/HighFidelityTypeProfiler.h: Removed.
  • runtime/Options.h:
  • runtime/SymbolTable.cpp:

(JSC::SymbolTable::prepareForTypeProfiling):
(JSC::SymbolTable::uniqueIDForVariable):
(JSC::SymbolTable::uniqueIDForRegister):
(JSC::SymbolTable::prepareForHighFidelityTypeProfiling): Deleted.

  • runtime/SymbolTable.h:
  • runtime/TypeProfiler.cpp: Added.

(JSC::TypeProfiler::logTypesForTypeLocation):
(JSC::TypeProfiler::insertNewLocation):
(JSC::TypeProfiler::getTypesForVariableAtOffsetForInspector):
(JSC::descriptorMatchesTypeLocation):
(JSC::TypeProfiler::findLocation):

  • runtime/TypeProfiler.h: Added.

(JSC::QueryKey::QueryKey):
(JSC::QueryKey::isHashTableDeletedValue):
(JSC::QueryKey::operator==):
(JSC::QueryKey::hash):
(JSC::QueryKeyHash::hash):
(JSC::QueryKeyHash::equal):
(JSC::TypeProfiler::functionHasExecutedCache):
(JSC::TypeProfiler::typeLocationCache):

  • runtime/TypeProfilerLog.cpp: Added.

(JSC::TypeProfilerLog::initializeLog):
(JSC::TypeProfilerLog::~TypeProfilerLog):
(JSC::TypeProfilerLog::processLogEntries):

  • runtime/TypeProfilerLog.h: Added.

(JSC::TypeProfilerLog::LogEntry::structureIDOffset):
(JSC::TypeProfilerLog::LogEntry::valueOffset):
(JSC::TypeProfilerLog::LogEntry::locationOffset):
(JSC::TypeProfilerLog::TypeProfilerLog):
(JSC::TypeProfilerLog::recordTypeInformationForLocation):
(JSC::TypeProfilerLog::logEndPtr):
(JSC::TypeProfilerLog::logStartOffset):
(JSC::TypeProfilerLog::currentLogEntryOffset):

  • runtime/VM.cpp:

(JSC::VM::VM):
(JSC::VM::enableTypeProfiler):
(JSC::VM::disableTypeProfiler):
(JSC::VM::dumpTypeProfilerData):
(JSC::VM::enableHighFidelityTypeProfiling): Deleted.
(JSC::VM::disableHighFidelityTypeProfiling): Deleted.
(JSC::VM::dumpHighFidelityProfilingTypes): Deleted.

  • runtime/VM.h:

(JSC::VM::typeProfilerLog):
(JSC::VM::typeProfiler):
(JSC::VM::isProfilingTypesWithHighFidelity): Deleted.
(JSC::VM::highFidelityLog): Deleted.
(JSC::VM::highFidelityTypeProfiler): Deleted.

Source/WebInspectorUI:

Change a reference in a comment to a JavaScriptCore file to its
newly renamed variant.

  • UserInterface/Models/ScriptSyntaxTree.js:
5:32 PM Changeset in webkit [172819] by bshafiei@apple.com
  • 5 edits in branches/safari-600.1.4.11-branch/Source

Versioning.

4:55 PM Changeset in webkit [172818] by mrowe@apple.com
  • 2 edits in trunk/Source/WebCore

Fix the release build after r172806.

  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveRenderingError): Add a missing semicolon.

3:55 PM Changeset in webkit [172817] by benjamin@webkit.org
  • 16 edits
    4 deletes in trunk

Remove HTMLInputElement's suggestedValue
https://bugs.webkit.org/show_bug.cgi?id=136094

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-08-20
Reviewed by Darin Adler.

Source/WebCore:

That code is Chrome specific. It is unused now.

  • WebCore.exp.in:
  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::setValue):
(WebCore::HTMLInputElement::setValueFromRenderer):
(WebCore::HTMLInputElement::suggestedValue): Deleted.
(WebCore::HTMLInputElement::setSuggestedValue): Deleted.

  • html/HTMLInputElement.h:
  • html/HTMLTextFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::placeholderShouldBeVisible):

  • html/HTMLTextFormControlElement.h:

(WebCore::HTMLTextFormControlElement::isEmptySuggestedValue): Deleted.

  • html/InputType.cpp:

(WebCore::InputType::canSetSuggestedValue): Deleted.

  • html/InputType.h:
  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::updateInnerTextValue):
(WebCore::TextFieldInputType::canSetSuggestedValue): Deleted.

  • html/TextFieldInputType.h:
  • testing/Internals.cpp:

(WebCore::Internals::suggestedValue): Deleted.
(WebCore::Internals::setSuggestedValue): Deleted.

  • testing/Internals.h:
  • testing/Internals.idl:

Source/WebKit:

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

LayoutTests:

  • fast/forms/suggested-value-after-setvalue-expected.txt: Removed.
  • fast/forms/suggested-value-after-setvalue.html: Removed.
  • fast/forms/suggested-value-expected.txt: Removed.
  • fast/forms/suggested-value.html: Removed.
3:39 PM Changeset in webkit [172816] by dino@apple.com
  • 3 edits
    2 adds in trunk

WebAudio FFT analysis uses incorrect scaling
https://bugs.webkit.org/show_bug.cgi?id=136120

Reviewed by Tim Horton.

Source/WebCore:

This is a port of Blink r166687 (author rtoy)
https://codereview.chromium.org/156993002

Currently, for a fixed sine-wave input, the peak FFT amplitude changes
depending on the selected FFT size. This is incorrect; the FFT amplitude
should not appreciably change when the FFT size changes.

Layout test added to verify the FFT result stays approximately constant,
independent of the FFT size used.

When this test is run using an older version of WebKit, the peak varies
from about -44 dB (FFT size 32) to -7 dB (FFT size 2048). With this CL,
the peak is about -7 dB. (It's not 0 dB because of the Blackman window that is applied.)

Note: this change may break existing applications that depended on this strange scaling effect.

Test: webaudio/realtimeanalyser-fft-scaling.html

  • Modules/webaudio/RealtimeAnalyser.cpp:

(WebCore::RealtimeAnalyser::doFFTAnalysis):

LayoutTests:

Test from Blink r166687.

  • webaudio/realtimeanalyser-fft-scaling.html: Added.
  • webaudio/realtimeanalyser-fft-scaling-expected.txt: Added.
3:08 PM Changeset in webkit [172815] by bshafiei@apple.com
  • 1 copy in tags/Safari-600.1.4.11.2

New tag.

2:56 PM Changeset in webkit [172814] by achristensen@apple.com
  • 107 edits in trunk

Introducing WEBCORE_EXPORT macro.
https://bugs.webkit.org/show_bug.cgi?id=136108

Reviewed by Antti Koivisto.

Source/WebCore:

This should eventually replace WebCore.exp.in.

  • platform/PlatformExportMacros.h:

Define WEBCORE_EXPORT to nothing to not cause problems while I'm working on it.

  • Modules/encryptedmedia/CDM.h:
  • Modules/speech/DOMWindowSpeechSynthesis.h:
  • Modules/webdatabase/DatabaseManager.h:
  • Modules/webdatabase/DatabaseTracker.h:
  • accessibility/AXObjectCache.h:
  • bindings/js/DOMWrapperWorld.h:
  • bridge/jsc/BridgeJSC.h:
  • bridge/runtime_method.h:
  • bridge/runtime_object.h:
  • bridge/runtime_root.h:
  • css/CSSComputedStyleDeclaration.h:
  • css/CSSParserMode.h:
  • css/CSSValue.h:
  • css/DOMWindowCSS.h:
  • css/StyleSheetContents.h:
  • dom/CharacterData.h:
  • dom/ClientRect.h:
  • dom/ClientRectList.h:
  • dom/ContainerNode.h:
  • dom/ContextDestructionObserver.h:
  • dom/DOMImplementation.h:
  • dom/DataTransfer.h:
  • dom/DeviceMotionData.h:
  • dom/DeviceOrientationData.h:
  • dom/Document.h:

(WebCore::Document::setAnnotatedRegionsDirty):

  • dom/DocumentMarker.h:
  • dom/DocumentMarkerController.h:
  • dom/DocumentStyleSheetCollection.h:
  • dom/Element.h:
  • dom/Event.h:

(WebCore::Event::create):

  • dom/EventListenerMap.h:
  • editing/DictationAlternative.h:
  • editing/EditCommand.h:
  • editing/EditingStyle.h:
  • editing/Editor.h:
  • editing/mac/AlternativeTextUIController.h:
  • history/BackForwardController.h:
  • history/BackForwardList.h:
  • history/CachedFrame.h:
  • loader/CookieJar.h:
  • loader/CrossOriginPreflightResultCache.h:
  • loader/DocumentLoader.h:
  • loader/DocumentWriter.h:
  • loader/appcache/ApplicationCache.h:
  • loader/appcache/ApplicationCacheHost.h:
  • loader/appcache/ApplicationCacheStorage.h:
  • loader/archive/ArchiveResource.h:
  • loader/cache/CachedImage.h:
  • loader/cache/CachedResource.h:
  • loader/cache/CachedResourceHandle.h:
  • loader/cache/CachedResourceLoader.h:
  • page/Chrome.h:
  • page/ContextMenuController.h:
  • page/DOMWindow.h:
  • page/DOMWindowExtension.h:
  • page/DragController.h:
  • page/EventHandler.h:
  • page/animation/AnimationController.h:
  • page/scrolling/AsyncScrollingCoordinator.h:
  • platform/CalculationValue.h:
  • platform/ContentFilter.h:
  • platform/ContextMenu.h:
  • platform/ContextMenuItem.h:
  • platform/CrossThreadCopier.h:
  • platform/Cursor.h:
  • platform/DatabaseStrategy.h:
  • platform/DisplaySleepDisabler.h:
  • platform/DragData.h:
  • platform/LocalizedStrings.h:
  • platform/audio/AudioHardwareListener.h:
  • platform/audio/AudioSession.h:
  • platform/audio/ios/MediaSessionManagerIOS.mm:
  • platform/graphics/BitmapImage.h:
  • platform/graphics/Color.h:
  • platform/graphics/DisplayRefreshMonitor.h:
  • platform/graphics/transforms/AffineTransform.h:
  • platform/ios/WebCoreSystemInterfaceIOS.mm:
  • platform/ios/WebVideoFullscreenModelMediaElement.h:
  • platform/ios/wak/WAKView.mm:
  • platform/ios/wak/WKContentObservation.h:
  • platform/ios/wak/WKView.h:
  • platform/ios/wak/WebCoreThread.h:
  • platform/ios/wak/WebCoreThreadMessage.h:
  • platform/mac/BlockExceptions.h:
  • platform/mock/DeviceOrientationClientMock.h:
  • platform/network/AuthenticationChallengeBase.h:
  • platform/network/BlobData.h:
  • platform/network/BlobDataFileReference.h:
  • platform/network/BlobRegistry.h:
  • platform/network/BlobRegistryImpl.h:
  • platform/network/CredentialBase.h:
  • platform/network/CredentialStorage.h:
  • platform/network/PlatformCookieJar.h:
  • platform/network/cf/AuthenticationChallenge.h:
  • platform/network/cocoa/CredentialCocoa.h:
  • platform/network/mac/CertificateInfo.h:
  • platform/sql/SQLiteDatabase.h:

(WebCore::SQLiteDatabase::disableThreadingChecks):

  • platform/sql/SQLiteDatabaseTracker.h:
  • platform/sql/SQLiteStatement.h:
  • platform/sql/SQLiteTransaction.h:
  • platform/text/BidiContext.h:

Added WEBCORE_EXPORT macros.

Source/WebKit2:

  • config.h:

Added stub definition of WEBCORE_EXPORT defined to nothing to be able to compile with WebCore headers.

Tools:

  • TestWebKitAPI/config.h:

Added stub definition of WEBCORE_EXPORT defined to nothing to be able to compile with WebCore headers.

2:43 PM Changeset in webkit [172813] by Csaba Osztrogonác
  • 3 edits in trunk/Source/JavaScriptCore

URTBF after r172799.

  • disassembler/ARM64/A64DOpcode.cpp:
  • disassembler/ARM64Disassembler.cpp:
2:43 PM Changeset in webkit [172812] by mrowe@apple.com
  • 2 edits in trunk/Source/WebKit

<https://webkit.org/b/136119> WebKit1 plug-in test failures in production builds after r172595

Reviewed by Alexey Proskuryakov.

  • WebKit.xcodeproj/project.pbxproj: Add the symlinks at the top level of WebKitLegacy.framework

even in Production builds. Add the symlinks in the right locations too.

2:07 PM Changeset in webkit [172811] by psolanki@apple.com
  • 8 edits
    4 copies
    1 add in trunk/Source

Move DiskCacheMonitor to WebCore so that WebKit1 clients can use it as well
https://bugs.webkit.org/show_bug.cgi?id=135896

Reviewed by Andreas Kling.

Source/WebCore:

Refactor code and move it to WebCore.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • loader/ResourceLoader.h:

Make willCacheResponse protected so that SubresourceLoader can override it.

  • loader/SubresourceLoader.h:
  • loader/cocoa/DiskCacheMonitorCocoa.h: Added.

Mostly the same as the existing NetworkDiskCacheMonitor class in WebKit2. In the
CFNetwork callback block, it calls a virtual function that is overridden by
NetworkDiskCacheMonitor to send a message to WebContent process.

(WebCore::DiskCacheMonitor::~DiskCacheMonitor):
(WebCore::DiskCacheMonitor::resourceRequest):
(WebCore::DiskCacheMonitor::sessionID):

  • loader/cocoa/DiskCacheMonitorCocoa.mm:

(WebCore::DiskCacheMonitor::tryGetFileBackedSharedBufferFromCFURLCachedResponse):

Copied from NetworkResourceLoader::tryGetFileBackedSharedBufferFromCFURLCachedResponse.

(WebCore::DiskCacheMonitor::monitorFileBackingStoreCreation):
(WebCore::DiskCacheMonitor::DiskCacheMonitor):
(WebCore::DiskCacheMonitor::resourceBecameFileBacked):

Replace the cached resource data with the contents of the file backed buffer. This is
used in WebKit1 (and also for any resource loads that happen from the WebContent
process).

  • loader/cocoa/SubresourceLoaderCocoa.mm: Added.

(WebCore::SubresourceLoader::willCacheResponse):

Override willCacheresponse from ResourceLoader to listen for disk cache notifications.

Source/WebKit2:

  • NetworkProcess/mac/NetworkDiskCacheMonitor.h:

Inherit from WebCore::DiskCacheMonitor which has the bulk of the functionality now.

(WebKit::NetworkDiskCacheMonitor::~NetworkDiskCacheMonitor):

  • NetworkProcess/mac/NetworkDiskCacheMonitor.mm:

(WebKit::NetworkDiskCacheMonitor::monitorFileBackingStoreCreation):
(WebKit::NetworkDiskCacheMonitor::NetworkDiskCacheMonitor):
(WebKit::NetworkDiskCacheMonitor::resourceBecameFileBacked):

Override virtual method and send the data to the WebContent process as before.

2:04 PM Changeset in webkit [172810] by Lucas Forschler
  • 2 edits in branches/safari-600.1-branch/Source/JavaScriptCore

Merged r172805. <rdar://problem/18075852>

2:02 PM Changeset in webkit [172809] by eric.carlson@apple.com
  • 4 edits in trunk/Source/WebCore

Cleanup MediaSession
https://bugs.webkit.org/show_bug.cgi?id=136116

Reviewed by Brent Fulgham.

MediaSessionManagerClient interface isn't used, remove it.
No new tests, this doesn't change behavior.

  • WebCore.exp.in:
  • platform/audio/MediaSessionManager.cpp:

(WebCore::MediaSessionManager::addSession):
(WebCore::MediaSessionManager::removeSession):
(WebCore::MediaSessionManager::sessionWillBeginPlayback):
(WebCore::MediaSessionManager::addClient): Deleted.
(WebCore::MediaSessionManager::removeClient): Deleted.

  • platform/audio/MediaSessionManager.h:

(WebCore::MediaSessionManagerClient::~MediaSessionManagerClient): Deleted.
(WebCore::MediaSessionManagerClient::MediaSessionManagerClient): Deleted.

1:47 PM Changeset in webkit [172808] by oliver@apple.com
  • 19 edits in trunk/Source/JavaScriptCore

Stop implicitly skipping a function's own activation when walking the scope chain
https://bugs.webkit.org/show_bug.cgi?id=136118

Reviewed by Geoffrey Garen.

Remove the current logic that implicitly skips a function's
own activation when walking the scope chain. This is ground
work for ensuring that all closed variable access is made
through the function's activation. This leads to a further
10% regression on earley, but we're already tracking the
overall performance regression.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::getScope):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGDoesGC.cpp:

(JSC::DFG::doesGC):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGHeapLocation.cpp:

(WTF::printInternal):

  • dfg/DFGHeapLocation.h:
  • dfg/DFGNodeType.h:
  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emitResolveClosure):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • runtime/JSScope.cpp:

(JSC::JSScope::abstractResolve):

  • runtime/JSScope.h:
1:28 PM Changeset in webkit [172807] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION: Web Inspector crashes when reloading apple.com with Timeline recording active
https://bugs.webkit.org/show_bug.cgi?id=136034

Reviewed by Mark Lam.

DebuggerCallFrame::positionForCallFrame is trying to unwind starting somewhere in the middle
of the stack. Hardened StackVisitor to skip over the frames between the current top frame
and the requested start frame.

  • interpreter/StackVisitor.cpp:

(JSC::StackVisitor::StackVisitor):

1:19 PM Changeset in webkit [172806] by eric.carlson@apple.com
  • 3 edits in trunk/Source/WebCore

[MSE] add additional SourceBuffer and MediaSource logging
https://bugs.webkit.org/show_bug.cgi?id=136114

Reviewed by Brent Fulgham.

No new tests, this adds debug-only logging.

  • Modules/mediasource/MediaSource.cpp:

(WebCore::MediaSource::setReadyState): Fix a typo.
(WebCore::MediaSource::streamEndedWithError): Log the error.

  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::sourceBufferPrivateAppendComplete): Log when parsing fails.
(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveRenderingError): Log error.
(WebCore::SourceBuffer::sourceBufferPrivateDidEndStream): Ditto.
(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveInitializationSegment): Log.
(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveSample): Log error.

12:46 PM Changeset in webkit [172805] by Brent Fulgham
  • 2 edits in trunk/Source/JavaScriptCore

[Win] JavaScriptCore.dll is missing version information.
https://bugs.webkit.org/show_bug.cgi?id=136105
<rdar://problem/18075852>

Reviewed by Dean Jackson.

  • JavaScriptCore.vcxproj/JavaScriptCorePreBuild.cmd: Add missing step to generate

version information for intermediary build path.

12:27 PM Changeset in webkit [172804] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Fix a memory leak in TypeSet
https://bugs.webkit.org/show_bug.cgi?id=135913

Patch by Saam Barati <sbarati@apple.com> on 2014-08-20
Reviewed by Filip Pizlo.

Currently, TypeSet unconditionally allocates memory for its member
variable m_structureHistory, but never deallocates it. Change this
from being a pointer that is unconditionally allocated to a member
variable that will be deallocated when TypeSet itself is deallocated.

  • runtime/TypeSet.cpp:

(JSC::TypeSet::TypeSet):
(JSC::TypeSet::addTypeInformation):
(JSC::TypeSet::seenTypes):
(JSC::TypeSet::displayName):
(JSC::TypeSet::allStructureRepresentations):
(JSC::StructureShape::leastCommonAncestor):

  • runtime/TypeSet.h:
12:10 PM Changeset in webkit [172803] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

import-w3c-tests doesn't import .svg support files
https://bugs.webkit.org/show_bug.cgi?id=135928

Patch by Rebecca Hauck <rhauck@adobe.com> on 2014-08-20
Reviewed by Bem Jones-Bey.

This patch fixes the W3C import script to not treat all
files with an xml mimetype as convertible tests, which
was causing SVG support files to not be imported.

  • Scripts/webkitpy/w3c/test_importer.py:

(TestImporter.find_importable_tests):

11:37 AM Changeset in webkit [172802] by commit-queue@webkit.org
  • 105 edits in trunk/Source/WebCore

Unreviewed, rolling out r172798.
https://bugs.webkit.org/show_bug.cgi?id=136113

Broke builds (Requested by msaboff on #webkit).

Reverted changeset:

"Introducing WEBCORE_EXPORT macro."
https://bugs.webkit.org/show_bug.cgi?id=136108
http://trac.webkit.org/changeset/172798

11:11 AM Changeset in webkit [172801] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[Win] Assertion fails when running JSC stress tests.
https://bugs.webkit.org/show_bug.cgi?id=136103

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-08-20
Reviewed by Darin Adler.

Use unsigned bitfield member instead of enum bitfield member to avoid negative values.

  • bytecode/CodeOrigin.h: Use unsigned bitfield member.

(JSC::InlineCallFrame::specializationKind): Compile fix.

11:05 AM Changeset in webkit [172800] by ap@apple.com
  • 2 edits in trunk/LayoutTests

fast/multicol/mixed-opacity-fixed-test.html fails in compositing mode
https://bugs.webkit.org/show_bug.cgi?id=136109

  • platform/mac-wk2/TestExpectations: Updated test expectations to a non-flaky failure,

and to point to the new bug.

10:59 AM Changeset in webkit [172799] by commit-queue@webkit.org
  • 6 edits in trunk/Source

Enable ARM64 disassembler on EFL
https://bugs.webkit.org/show_bug.cgi?id=136089

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-08-20
Reviewed by Filip Pizlo.

Source/JavaScriptCore:

  • CMakeLists.txt:

Added disassembler/ARM64Disassembler.cpp and
disassembler/ARM64/A64DOpcode.cpp to JavaScriptCore_SOURCES.

  • disassembler/ARM64/A64DOpcode.cpp:

Added USE(ARM64_DISASSEMBLER) guard around implementation.

  • disassembler/ARM64/A64DOpcode.h:

(JSC::ARM64Disassembler::A64DOpcode::appendUnsignedImmediate64):
(JSC::ARM64Disassembler::A64DOpcode::appendPCRelativeOffset):
Made format strings portable by changing "%llx" to "%" PRIx64 for
uint64_t arguments.

Source/WTF:

  • wtf/Platform.h:

Enable WTF_USE_ARM64_DISASSEMBLER for EFL as well.

10:56 AM Changeset in webkit [172798] by achristensen@apple.com
  • 105 edits in trunk/Source/WebCore

Introducing WEBCORE_EXPORT macro.
https://bugs.webkit.org/show_bug.cgi?id=136108

Reviewed by Antti Koivisto.

This should eventually replace WebCore.exp.in.

  • platform/PlatformExportMacros.h:

Define WEBCORE_EXPORT to nothing to not cause problems while I'm working on it.

  • Modules/encryptedmedia/CDM.h:
  • Modules/speech/DOMWindowSpeechSynthesis.h:
  • Modules/webdatabase/DatabaseManager.h:
  • Modules/webdatabase/DatabaseTracker.h:
  • accessibility/AXObjectCache.h:
  • bindings/js/DOMWrapperWorld.h:
  • bridge/jsc/BridgeJSC.h:
  • bridge/runtime_method.cpp:
  • bridge/runtime_method.h:
  • bridge/runtime_object.cpp:
  • bridge/runtime_object.h:
  • bridge/runtime_root.h:
  • css/CSSComputedStyleDeclaration.h:
  • css/CSSParserMode.h:
  • css/CSSValue.h:
  • css/DOMWindowCSS.h:
  • css/StyleSheetContents.h:
  • dom/CharacterData.h:
  • dom/ClientRect.h:
  • dom/ClientRectList.h:
  • dom/ContainerNode.h:
  • dom/ContextDestructionObserver.h:
  • dom/DOMImplementation.h:
  • dom/DataTransfer.h:
  • dom/DeviceMotionData.h:
  • dom/DeviceOrientationData.h:
  • dom/Document.h:

(WebCore::Document::setAnnotatedRegionsDirty):

  • dom/DocumentMarker.h:
  • dom/DocumentMarkerController.h:
  • dom/DocumentStyleSheetCollection.h:
  • dom/Element.h:
  • dom/Event.h:

(WebCore::Event::create):

  • dom/EventListenerMap.h:
  • editing/DictationAlternative.h:
  • editing/EditCommand.h:
  • editing/EditingStyle.h:
  • editing/Editor.h:
  • editing/mac/AlternativeTextUIController.h:
  • history/BackForwardController.h:
  • history/BackForwardList.h:
  • history/CachedFrame.h:
  • loader/CookieJar.h:
  • loader/CrossOriginPreflightResultCache.h:
  • loader/DocumentLoader.h:
  • loader/DocumentWriter.h:
  • loader/appcache/ApplicationCache.h:
  • loader/appcache/ApplicationCacheHost.h:
  • loader/appcache/ApplicationCacheStorage.h:
  • loader/archive/ArchiveResource.h:
  • loader/cache/CachedImage.h:
  • loader/cache/CachedResource.h:
  • loader/cache/CachedResourceHandle.h:
  • loader/cache/CachedResourceLoader.h:
  • page/Chrome.h:
  • page/ContextMenuController.h:
  • page/DOMWindow.h:
  • page/DOMWindowExtension.h:
  • page/DragController.h:
  • page/EventHandler.h:
  • page/animation/AnimationController.h:
  • page/scrolling/AsyncScrollingCoordinator.h:
  • platform/CalculationValue.h:
  • platform/ContentFilter.h:
  • platform/ContextMenu.h:
  • platform/ContextMenuItem.h:
  • platform/CrossThreadCopier.h:
  • platform/Cursor.h:
  • platform/DatabaseStrategy.h:
  • platform/DisplaySleepDisabler.h:
  • platform/DragData.h:
  • platform/LocalizedStrings.h:
  • platform/audio/AudioHardwareListener.h:
  • platform/audio/AudioSession.h:
  • platform/audio/ios/MediaSessionManagerIOS.mm:
  • platform/graphics/BitmapImage.h:
  • platform/graphics/Color.h:
  • platform/graphics/DisplayRefreshMonitor.h:
  • platform/graphics/transforms/AffineTransform.h:
  • platform/ios/WebCoreSystemInterfaceIOS.mm:
  • platform/ios/WebVideoFullscreenModelMediaElement.h:
  • platform/ios/wak/WAKView.mm:
  • platform/ios/wak/WKContentObservation.h:
  • platform/ios/wak/WKView.h:
  • platform/ios/wak/WebCoreThread.h:
  • platform/ios/wak/WebCoreThreadMessage.h:
  • platform/mac/BlockExceptions.h:
  • platform/mock/DeviceOrientationClientMock.h:
  • platform/network/AuthenticationChallengeBase.h:
  • platform/network/BlobData.h:
  • platform/network/BlobDataFileReference.h:
  • platform/network/BlobRegistry.h:
  • platform/network/BlobRegistryImpl.h:
  • platform/network/CredentialBase.h:
  • platform/network/CredentialStorage.h:
  • platform/network/PlatformCookieJar.h:
  • platform/network/cf/AuthenticationChallenge.h:
  • platform/network/cocoa/CredentialCocoa.h:
  • platform/network/mac/CertificateInfo.h:
  • platform/sql/SQLiteDatabase.h:

(WebCore::SQLiteDatabase::disableThreadingChecks):

  • platform/sql/SQLiteDatabaseTracker.h:
  • platform/sql/SQLiteStatement.h:
  • platform/sql/SQLiteTransaction.h:
  • platform/text/BidiContext.h:

Added WEBCORE_EXPORT macros.

7:44 AM Changeset in webkit [172797] by Alan Bujtas
  • 4 edits
    32 adds in trunk

Dashed/dotted borders do not paint.
https://bugs.webkit.org/show_bug.cgi?id=135898

Reviewed by Simon Fraser.

Source/WebCore:

Remove the empty line checks for drawLines. There's no need to protect the graphics
context from empty lines.

Tests: fast/borders/border-painting-dashed-at-all.html

fast/borders/border-painting-dashed.html
fast/borders/border-painting-dotted-at-all.html
fast/borders/border-painting-dotted.html
fast/borders/border-painting-double-at-all.html
fast/borders/border-painting-double.html
fast/borders/border-painting-groove-at-all.html
fast/borders/border-painting-inset-at-all.html
fast/borders/border-painting-inset.html
fast/borders/border-painting-outset-at-all.html
fast/borders/border-painting-outset.html
fast/borders/border-painting-ridge-at-all.html
fast/borders/border-painting-solid-at-all.html
fast/borders/border-painting-solid.html
fast/borders/hidpi-border-painting-groove.html
fast/borders/hidpi-border-painting-ridge.html

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::drawLineForBoxSide):
(WebCore::drawBorderLineRect): Deleted.
(WebCore::drawBorderLine): Deleted.

LayoutTests:

*-at-all files test that we always paint borders.
The other set of files test that borders are painted properly. They take
advantage of the fact that borders with radius use a different painting code path.

  • TestExpectations:
  • fast/borders/border-painting-dashed-at-all-expected.html: Added.
  • fast/borders/border-painting-dashed-at-all.html: Added.
  • fast/borders/border-painting-dashed-expected.html: Added.
  • fast/borders/border-painting-dashed.html: Added.
  • fast/borders/border-painting-dotted-at-all-expected.html: Added.
  • fast/borders/border-painting-dotted-at-all.html: Added.
  • fast/borders/border-painting-dotted-expected.html: Added.
  • fast/borders/border-painting-dotted.html: Added.
  • fast/borders/border-painting-double-at-all-expected.html: Added.
  • fast/borders/border-painting-double-at-all.html: Added.
  • fast/borders/border-painting-double-expected.html: Added.
  • fast/borders/border-painting-double.html: Added.
  • fast/borders/border-painting-groove-at-all-expected.html: Added.
  • fast/borders/border-painting-groove-at-all.html: Added.
  • fast/borders/border-painting-inset-at-all-expected.html: Added.
  • fast/borders/border-painting-inset-at-all.html: Added.
  • fast/borders/border-painting-inset-expected.html: Added.
  • fast/borders/border-painting-inset.html: Added.
  • fast/borders/border-painting-outset-at-all-expected.html: Added.
  • fast/borders/border-painting-outset-at-all.html: Added.
  • fast/borders/border-painting-outset-expected.html: Added.
  • fast/borders/border-painting-outset.html: Added.
  • fast/borders/border-painting-ridge-at-all-expected.html: Added.
  • fast/borders/border-painting-ridge-at-all.html: Added.
  • fast/borders/border-painting-solid-at-all-expected.html: Added.
  • fast/borders/border-painting-solid-at-all.html: Added.
  • fast/borders/border-painting-solid-expected.html: Added.
  • fast/borders/border-painting-solid.html: Added.
  • fast/borders/hidpi-border-painting-groove-expected.html: Added.
  • fast/borders/hidpi-border-painting-groove.html: Added.
  • fast/borders/hidpi-border-painting-ridge-expected.html: Added.
  • fast/borders/hidpi-border-painting-ridge.html: Added.

Aug 19, 2014:

9:32 PM Changeset in webkit [172796] by jinwoo7.song@samsung.com
  • 4 edits
    2 adds in trunk

Ignore usemap attributes without '#' in img element
https://bugs.webkit.org/show_bug.cgi?id=133336

Reviewed by Ryosuke Niwa.

HTML5 specification says we should ignore usemap attributes without #.
http://www.w3.org/TR/html5/infrastructure.html#valid-hash-name-reference

Source/WebCore:

Test: fast/dom/replaced-image-map-valid-hash-name.html

  • dom/TreeScope.cpp:

(WebCore::TreeScope::getImageMap):

LayoutTests:

  • fast/dom/replaced-image-map-valid-hash-name-expected.txt: Added.
  • fast/dom/replaced-image-map-valid-hash-name.html: Added.
  • fast/images/image-map-multiple-xhtml.xhtml: Modified usemap attribute value to use '#'.
8:02 PM Changeset in webkit [172795] by mitz@apple.com
  • 2 edits in trunk/Tools

update-webkit should not check for the presence of Apple’s Internal directory
Last part of https://bugs.webkit.org/show_bug.cgi?id=135815

Reviewed by Tim Horton.

  • Scripts/update-webkit:
7:38 PM Changeset in webkit [172794] by fpizlo@apple.com
  • 7 edits
    5 adds in trunk

REGRESSION(r172401): for-in optimization no longer works at all
https://bugs.webkit.org/show_bug.cgi?id=136056

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Roll this back in, along with a fix to make proxies work. Previously, for-in over proxies
would instacrash every time.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitGetByVal):
(JSC::BytecodeGenerator::pushIndexedForInScope):
(JSC::BytecodeGenerator::pushStructureForInScope):

  • bytecompiler/BytecodeGenerator.h:

(JSC::ForInContext::ForInContext):
(JSC::StructureForInContext::StructureForInContext):
(JSC::IndexedForInContext::IndexedForInContext):
(JSC::ForInContext::base): Deleted.

  • bytecompiler/NodesCodegen.cpp:

(JSC::ForInNode::emitMultiLoopBytecode):

  • runtime/JSProxy.cpp:

(JSC::JSProxy::getStructurePropertyNames):
(JSC::JSProxy::getGenericPropertyNames):

  • tests/stress/for-in-base-reassigned-later-and-change-structure.js: Added.

(foo):

  • tests/stress/for-in-base-reassigned-later.js: Added.

(foo):

  • tests/stress/for-in-base-reassigned.js: Added.

(foo):

  • tests/stress/for-in-proxy-target-changed-structure.js: Added.

(deleteAll):
(foo):

  • tests/stress/for-in-proxy.js: Added.

(foo):

LayoutTests:

This just needs a rebase because the number of calls into the DOM has changed and so the
number of console messages about security stuff has now changed.

  • http/tests/security/cross-frame-access-enumeration-expected.txt:
7:17 PM Changeset in webkit [172793] by ljaehun.lim@samsung.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, fix EFL build after r17275

Fix error: ignoring #pragma clang diagnostic [-Werror=unknown-pragmas]

  • runtime/JSDataViewPrototype.cpp:

Add #if COMPILER(CLANG) and #endif.

5:36 PM Changeset in webkit [172792] by msaboff@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Crash in jsc-layout-tests.yaml/js/script-tests/reentrant-caching.js
https://bugs.webkit.org/show_bug.cgi?id=136080

Reviewed by Mark Lam.

Update VM::topVMEntryFrame via NativeCallFrameTracer() when we pass the caller's frame
to NativeCallFrameTracer() as the callee's frame may be the first callee from an entry
frame. In that case, the caller will have the prior VM entry frame.

The new NativeCallFrameTracer with a VMEntryFrame parameter should be used when throwing
an exception from a caller frame. The value to use for the VMEntryFrame should be a
value possibly modified by CallFrame::callerFrame(&*VMEntryFrame) used to find the caller.

  • interpreter/Interpreter.h:

(JSC::NativeCallFrameTracer::NativeCallFrameTracer): Added a new constructor that takes a
VMEntryFrame. Added an ASSERT to both constructors to check that the updated topCallFrame
is below the current vmEntryFrame.

  • jit/JITOperations.cpp:

(JSC::operationThrowStackOverflowError):
(JSC::operationCallArityCheck):
(JSC::operationConstructArityCheck):
Set VM::topVMEntryFrame to the possibly updated VMEntryFrame after getting the caller's frame.

5:22 PM Changeset in webkit [172791] by dburkart@apple.com
  • 3 edits in branches/safari-600.1-branch/Source/WebCore

Merge r172317. <rdar://problem/18052514>

4:55 PM Changeset in webkit [172790] by psolanki@apple.com
  • 31 edits
    3 deletes in trunk/Source

Remove PurgeableBuffer since it is not very useful any more
https://bugs.webkit.org/show_bug.cgi?id=135939

Reviewed by Andreas Kling.

Source/WebCore:

The usefulness of having purgeable memory for cached resources has diminished now that
WebKit uses file backed resources when possible. Since this is read only memory, it is in
essence "purgeable". Having the PurgeableBuffer code adds additional complexity that we
don't need. e.g. on my Mac, I am not seeing any entry for "WebCore purgeable data" when I
run vmmap against the web processes that I have running. It is used on iOS, however even
there much of the purgeable memory we create gets replaced by file backed memory once we get
the notification from CFNetwork.

No new tests because no functional changes.

  • WebCore.xcodeproj/project.pbxproj:
  • inspector/InspectorPageAgent.cpp:

(WebCore::prepareCachedResourceBuffer):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::subresource):

  • loader/ResourceBuffer.cpp:

(WebCore::ResourceBuffer::hasPurgeableBuffer): Deleted.
(WebCore::ResourceBuffer::setShouldUsePurgeableMemory): Deleted.
(WebCore::ResourceBuffer::createPurgeableBuffer): Deleted.
(WebCore::ResourceBuffer::releasePurgeableBuffer): Deleted.

  • loader/ResourceBuffer.h:
  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didFinishLoading):

  • loader/cache/CachedCSSStyleSheet.cpp:

(WebCore::CachedCSSStyleSheet::sheetText):
(WebCore::CachedCSSStyleSheet::destroyDecodedData):

  • loader/cache/CachedCSSStyleSheet.h:
  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::image):
(WebCore::CachedImage::imageForRenderer):
(WebCore::CachedImage::imageSizeForRenderer):
(WebCore::CachedImage::destroyDecodedData):
(WebCore::CachedImage::canUseDiskImageCache):

  • loader/cache/CachedImage.h:
  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::addClientToSet):
(WebCore::CachedResource::isSafeToMakePurgeable): Deleted.
(WebCore::CachedResource::makePurgeable): Deleted.
(WebCore::CachedResource::isPurgeable): Deleted.
(WebCore::CachedResource::wasPurged): Deleted.

  • loader/cache/CachedResource.h:

(WebCore::CachedResource::resourceBuffer):
(WebCore::CachedResource::purgePriority): Deleted.

  • loader/cache/CachedScript.cpp:

(WebCore::CachedScript::script):
(WebCore::CachedScript::destroyDecodedData):

  • loader/cache/CachedScript.h:
  • loader/cache/MemoryCache.cpp:

(WebCore::MemoryCache::resourceForRequestImpl):
(WebCore::MemoryCache::pruneDeadResourcesToSize):
(WebCore::MemoryCache::evict):
(WebCore::MemoryCache::TypeStatistic::addResource):
(WebCore::MemoryCache::dumpStats):
(WebCore::MemoryCache::dumpLRULists):
(WebCore::MemoryCache::makeResourcePurgeable): Deleted.

  • loader/cache/MemoryCache.h:

(WebCore::MemoryCache::TypeStatistic::TypeStatistic):
(WebCore::MemoryCache::shouldMakeResourcePurgeableOnEviction): Deleted.

  • platform/PurgePriority.h: Removed.
  • platform/PurgeableBuffer.h: Removed.
  • platform/SharedBuffer.cpp:

(WebCore::SharedBuffer::SharedBuffer):
(WebCore::SharedBuffer::size):
(WebCore::SharedBuffer::data):
(WebCore::SharedBuffer::append):
(WebCore::SharedBuffer::clear):
(WebCore::SharedBuffer::copy):
(WebCore::SharedBuffer::getSomeData):
(WebCore::SharedBuffer::adoptPurgeableBuffer): Deleted.
(WebCore::SharedBuffer::createPurgeableBuffer): Deleted.
(WebCore::SharedBuffer::releasePurgeableBuffer): Deleted.

  • platform/SharedBuffer.h:

(WebCore::SharedBuffer::hasPurgeableBuffer): Deleted.
(WebCore::SharedBuffer::shouldUsePurgeableMemory): Deleted.

  • platform/cf/SharedBufferCF.cpp:

(WebCore::SharedBuffer::SharedBuffer):

  • platform/mac/PurgeableBufferMac.cpp: Removed.
  • platform/mac/SharedBufferMac.mm:

(WebCore::SharedBuffer::createCFData):

  • platform/soup/SharedBufferSoup.cpp:

Source/WebKit/mac:

  • Misc/WebCache.mm:

(+[WebCache statistics]):

Source/WebKit/win:

  • WebCache.cpp:

(WebCache::statistics):

Source/WebKit2:

  • WebProcess/WebProcess.cpp:

(WebKit::getWebCoreMemoryCacheStatistics):

Source/WTF:

  • wtf/Platform.h: Remove ENABLE_PURGEABLE_MEMORY define.
  • wtf/VMTags.h: Remove VM tags used by WebCore for cached resource purgeable memory.
4:53 PM Changeset in webkit [172789] by dburkart@apple.com
  • 4 edits
    2 copies in branches/safari-600.1-branch

Merge r172727. <rdar://problem/18051847>

4:50 PM Changeset in webkit [172788] by dburkart@apple.com
  • 2 edits in branches/safari-600.1-branch/Source/WebCore

Merge r172720. <rdar://problem/17767169>

4:49 PM Changeset in webkit [172787] by dburkart@apple.com
  • 13 edits
    12 copies
    10 deletes in branches/safari-600.1-branch

Merge r172709. <rdar://problem/17850158>

4:45 PM Changeset in webkit [172786] by dburkart@apple.com
  • 4 edits in branches/safari-600.1-branch/Source/WebCore

Merge r172705. <rdar://problem/17767169>

4:43 PM Changeset in webkit [172785] by dburkart@apple.com
  • 4 edits in branches/safari-600.1-branch/Source/WebCore

Merge r172703. <rdar://problem/17767169>

4:39 PM Changeset in webkit [172784] by dburkart@apple.com
  • 2 edits in branches/safari-600.1-branch/Source/WebCore

Merge r172693. <rdar://problem/17577321>

4:38 PM Changeset in webkit [172783] by aestes@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

[Cocoa] Offline Assembler build phase fails when $BUILT_PRODUCTS_DIR contains spaces
https://bugs.webkit.org/show_bug.cgi?id=136086

Reviewed by Filip Pizlo.

Enclosed arguments to asm.rb containing $BUILT_PRODUCTS_DIR in double quotes so that they don't get split on
whitespace. Also let Xcode have its way with an unrelated part of the project file.

4:35 PM Changeset in webkit [172782] by dburkart@apple.com
  • 6 edits in branches/safari-600.1-branch/Source/WebInspectorUI

Merge r172689. <rdar://problem/18040028>

4:33 PM Changeset in webkit [172781] by dburkart@apple.com
  • 5 edits in branches/safari-600.1-branch/Source/WebInspectorUI

Merge r172682. <rdar://problem/18038767>

4:33 PM Changeset in webkit [172780] by commit-queue@webkit.org
  • 14 edits in trunk/Source

Expose injected bundle SPI to get a node's URL element, get the visible selection range of that
element, and snapshot that range
https://bugs.webkit.org/show_bug.cgi?id=136076

Patch by Peyton Randolph <prandolph@apple.com> on 2014-08-19
Reviewed by Tim Horton.

  • WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp:

(WKBundleHitTestResultCopyURLElementHandle): Added.

  • WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.h:
  • WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp:

(WKBundleNodeHandleCopyVisibleRange): Added.

  • WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h:
  • WebProcess/InjectedBundle/API/c/WKBundleRangeHandle.cpp:

(WKBundleRangeHandleGetBoundingRectInWindowCoordinates): Added.
(WKBundleRangeHandleCopySnapshotWithOptions): Added.

  • WebProcess/InjectedBundle/API/c/WKBundleRangeHandlePrivate.h:
  • WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:

(WebKit::InjectedBundleNodeHandle::visibleRange): Added.

  • WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
  • WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:

(WebKit::InjectedBundleRangeHandle::boundingRectInWindowCoordinates): Added.
(WebKit::InjectedBundleRangeHandle::renderedImage): Added.

  • WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.h:
  • WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:

(WebKit::InjectedBundleHitTestResult::urlElementHandle): Added.

  • WebProcess/InjectedBundle/InjectedBundleHitTestResult.h:
4:29 PM Changeset in webkit [172779] by dburkart@apple.com
  • 2 edits in branches/safari-600.1-branch/Source/WebInspectorUI

Merge r172662. <rdar://problem/17971908>

4:26 PM Changeset in webkit [172778] by dburkart@apple.com
  • 16 edits in branches/safari-600.1-branch/Source/WebCore

Merge r172657. <rdar://problem/17896828>

4:25 PM Changeset in webkit [172777] by fpizlo@apple.com
  • 7 edits in trunk/Source/JavaScriptCore

LLInt build should be way faster
https://bugs.webkit.org/show_bug.cgi?id=136085

Reviewed by Geoffrey Garen.

This does three things to improve the LLInt build performance. One of them is only for
Xcode for now while the others should benefit all platforms:

  • Don't exponentially build settings combinations that correspond to being on two backends simultaneously. This is by far the biggest win.


  • Don't generate offset extraction code for backends that aren't supported by the current port. This currently only works on Xcode-based ports. This is a relatively small win.


  • Remove the ALWAYS_ALLOCATE_SLOW option. Each option increases build time, and we haven't used this one in a long time. Anyway, setting this option could be emulated by just directly hacking the code.


This is an enormous speed-up in the LLInt build.

  • JavaScriptCore.xcodeproj/project.pbxproj: Prune the set of backends that we should consider on Xcode-based platforms.
  • llint/LLIntOfflineAsmConfig.h: Remove ALWAYS_ALLOCATE_SLOW
  • llint/LowLevelInterpreter.asm: Remove ALWAYS_ALLOCATE_SLOW
  • offlineasm/backends.rb: Add infrastructure for reasoning about valid backends.
  • offlineasm/generate_offset_extractor.rb: Allow the client to specify a filtered set of valid backends.
  • offlineasm/settings.rb: Improve the construction of settings combinations so that it doesn't traverse the enourmous set of obviously invalid multi-backend combinations. Also glue into support for valid backends.
4:20 PM Changeset in webkit [172776] by dburkart@apple.com
  • 6 edits
    2 copies in branches/safari-600.1-branch

Merge r172656. <rdar://problem/17961698>

4:12 PM Changeset in webkit [172775] by dburkart@apple.com
  • 2 edits in branches/safari-600.1-branch/Source/WebInspectorUI

Merge r172650. <rdar://problem/18034356>

4:09 PM Changeset in webkit [172774] by dburkart@apple.com
  • 2 edits in branches/safari-600.1-branch/Source/WebKit2

Merge r172643. <rdar://problem/18032571>

4:06 PM Changeset in webkit [172773] by dburkart@apple.com
  • 2 edits in branches/safari-600.1-branch/Source/WebInspectorUI

Merge r172640. <rdar://problem/18025668>

4:02 PM Changeset in webkit [172772] by dburkart@apple.com
  • 2 edits in branches/safari-600.1-branch/Source/WebKit2

Merge r172639. <rdar://problem/17957716>

4:00 PM Changeset in webkit [172771] by dburkart@apple.com
  • 6 edits in branches/safari-600.1-branch/Source/WebKit2

Merge r172636. <rdar://problem/17957716>

3:54 PM Changeset in webkit [172770] by dburkart@apple.com
  • 12 edits in branches/safari-600.1-branch/Source/WebKit2

Merge r172635. <rdar://problem/18006149>

3:47 PM Changeset in webkit [172769] by dburkart@apple.com
  • 3 edits in branches/safari-600.1-branch/Source/WebInspectorUI

Merge r172617. <rdar://problem/18023242>

3:43 PM Changeset in webkit [172768] by dburkart@apple.com
  • 2 edits in branches/safari-600.1-branch/Source/WebInspectorUI

Merge r172615. <rdar://problem/18024530>

3:25 PM Changeset in webkit [172767] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix indentation and style in LowLevelInterpreter.asm
https://bugs.webkit.org/show_bug.cgi?id=136083

Reviewed by Mark Lam.

  • llint/LowLevelInterpreter.asm:
3:25 PM Changeset in webkit [172766] by dburkart@apple.com
  • 2 edits in branches/safari-600.1-branch/Source/WebInspectorUI

Merged r172606. <rdar://problem/18022467>

3:18 PM Changeset in webkit [172765] by dburkart@apple.com
  • 3 edits
    3 copies in branches/safari-600.1-branch

Merged r172603. <rdar://problem/17989469>

3:05 PM Changeset in webkit [172764] by dburkart@apple.com
  • 2 edits in branches/safari-600.1-branch/Source/WebInspectorUI

Merged r172601. <rdar://problem/18021462>

2:39 PM Changeset in webkit [172763] by dburkart@apple.com
  • 2 edits in branches/safari-600.1-branch/Source/WebCore

Merged r172600. <rdar://problem/18021928>

2:34 PM Changeset in webkit [172762] by dburkart@apple.com
  • 2 edits in branches/safari-600.1-branch/Source/WebKit2

Merged r172596. <rdar://problem/17957690>

2:31 PM Changeset in webkit [172761] by dburkart@apple.com
  • 6 edits in branches/safari-600.1-branch/Source

Merged r172502. <rdar://problem/18022784>

2:28 PM Changeset in webkit [172760] by dburkart@apple.com
  • 3 edits in branches/safari-600.1-branch/Source/WebCore

Merged r172481. <rdar://problem/17954473>

2:25 PM Changeset in webkit [172759] by berto@igalia.com
  • 4 edits in trunk/Source

TEXTREL in libjavascriptcoregtk-1.0.so.0.11.0 on x86 (or i586)
https://bugs.webkit.org/show_bug.cgi?id=70610

Patch by Magnus Granberg <zorry@gentoo.org> on 2014-08-19
Reviewed by Darin Adler.

Source/JavaScriptCore:

Setup %ebx so we can use the plt.

  • jit/ThunkGenerators.cpp:

Source/WTF:

Add PLT if we're building with PIC.

  • wtf/InlineASM.h:
2:02 PM Changeset in webkit [172758] by Alan Bujtas
  • 29 edits in trunk

Remove ENABLE(SUBPIXEL_LAYOUT).
https://bugs.webkit.org/show_bug.cgi?id=136077

Reviewed by Simon Fraser.

Remove compile time flag SUBPIXEL_LAYOUT. All ports have it enabled for a while now.

.:

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/OptionsMac.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:
  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::computeLength):

  • dom/Element.cpp:

(WebCore::adjustForLocalZoom):
(WebCore::Element::offsetWidth):
(WebCore::Element::offsetHeight):
(WebCore::Element::clientLeft):
(WebCore::Element::clientTop):
(WebCore::Element::clientWidth):
(WebCore::Element::clientHeight):

  • platform/LayoutUnit.h:

(WebCore::LayoutUnit::LayoutUnit):
(WebCore::LayoutUnit::ceilToFloat):
(WebCore::LayoutUnit::ceil):
(WebCore::LayoutUnit::round):
(WebCore::LayoutUnit::floor):
(WebCore::boundedMultiply):
(WebCore::operator*):
(WebCore::operator/):
(WebCore::intMod):
(WebCore::operator%):
(WebCore::roundedLayoutUnit):
(WebCore::ceiledLayoutUnit):
(WebCore::LayoutUnit::toInt): Deleted.
(WebCore::LayoutUnit::toFloat): Deleted.
(WebCore::LayoutUnit::toDouble): Deleted.
(WebCore::LayoutUnit::epsilon): Deleted.

  • platform/graphics/LayoutPoint.h:

(WebCore::roundedForPainting):
(WebCore::flooredForPainting):
(WebCore::ceiledForPainting):
(WebCore::roundedLayoutPoint):

  • platform/graphics/LayoutRect.cpp:

(WebCore::enclosingLayoutRect):

  • platform/graphics/LayoutRect.h:

(WebCore::pixelSnappedIntRect):
(WebCore::pixelSnappedForPainting):

  • platform/graphics/LayoutSize.h:

(WebCore::roundedLayoutSize):
(WebCore::flooredForPainting):

  • rendering/RenderBlock.cpp:

(WebCore::adjustFloatForSubPixelLayout):

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::layoutBlockChild):

  • rendering/RenderElement.h:

(WebCore::adjustLayoutUnitForAbsoluteZoom):

  • rendering/style/RenderStyle.h:

(WebCore::adjustLayoutUnitForAbsoluteZoom):

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:

  • wtf/FeatureDefines.h:

Tools:

  • TestWebKitAPI/Tests/WebCore/LayoutUnit.cpp:
1:41 PM Changeset in webkit [172757] by Bem Jones-Bey
  • 6 edits in trunk

[CSS Shapes] A few calc() test failures in the shape-image-threshold parsing tests
https://bugs.webkit.org/show_bug.cgi?id=135926

Reviewed by Dirk Schulze.

Source/WebCore:

shape-image-threshold is a Number, so it should be parsed as one. The
default parsing doesn't support calcs, but numbers do.

No new tests, fixes exitsing test to pass.

  • css/DeprecatedStyleBuilder.cpp:

(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder): Use

ApplyPropertyNumber instead of ApplyPropertyDefault for
shape-image-threshold.

LayoutTests:

  • TestExpectations: Remove Failure and Crash expectations.
  • css3/shapes/shape-outside/values/shape-image-threshold-001-expected.txt:

Proper expected results now that the test passes.

  • css3/shapes/shape-outside/values/shape-image-threshold-001.html:

Adding together calcs isn't valid, so move the addition inside of
the calc expression. This will also be updated upstream.

11:57 AM Changeset in webkit [172756] by mmirman@apple.com
  • 12 edits
    1 delete in trunk/Source/JavaScriptCore

Merges the two native inlining passes from the build.
Also adds the AvailableExternallyLinkage assertion to linked
functions to allow unused and duplicate ones to be removed.
https://bugs.webkit.org/show_bug.cgi?id=135526

Reviewed by Filip Pizlo.

Removed second generation of llvm binary files.
Fixed the flags on the first pass.

  • build-symbol-table-index.py: Modified some paths.
  • build-symbol-table-index.sh: Removed.
  • copy-llvm-ir-to-derived-sources.sh: Now calls build-symbol-table-index directly.
  • ftl/FTLLowerDFGToLLVM.cpp: Added LLVMAvailableExternallyLinkage assertion.

(JSC::FTL::LowerDFGToLLVM::getModuleByPathForSymbol):

  • runtime/ArrayPrototype.cpp: Removed static declarations.
  • runtime/DateConstructor.cpp: ditto.

(JSC::dateParse):
(JSC::dateNow):
(JSC::dateUTC):

  • runtime/DatePrototype.cpp: ditto.
  • runtime/JSDataViewPrototype.cpp: ditto on both.

(JSC::dataViewProtoFuncGetInt8):
(JSC::dataViewProtoFuncGetInt16):
(JSC::dataViewProtoFuncGetInt32):
(JSC::dataViewProtoFuncGetUint8):
(JSC::dataViewProtoFuncGetUint16):
(JSC::dataViewProtoFuncGetUint32):
(JSC::dataViewProtoFuncGetFloat32):
(JSC::dataViewProtoFuncGetFloat64):
(JSC::dataViewProtoFuncSetInt8):
(JSC::dataViewProtoFuncSetInt16):
(JSC::dataViewProtoFuncSetInt32):
(JSC::dataViewProtoFuncSetUint8):
(JSC::dataViewProtoFuncSetUint16):
(JSC::dataViewProtoFuncSetUint32):
(JSC::dataViewProtoFuncSetFloat32):
(JSC::dataViewProtoFuncSetFloat64):

  • runtime/JSONObject.cpp: ditto.
  • runtime/ObjectConstructor.cpp: ditto.
  • runtime/StringPrototype.cpp: ditto.
11:32 AM Changeset in webkit [172755] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit2

Extend injected bundle node snapshotting to support forced white and black text
https://bugs.webkit.org/show_bug.cgi?id=136061

Patch by Peyton Randolph <prandolph@apple.com> on 2014-08-19
Reviewed by Beth Dakin.

  • Shared/API/c/WKImage.h:

Add -ForceBlackText and -ForceWhiteText snapshotting options.

  • Shared/API/c/WKSharedAPICast.h:

(WebKit::toSnapshotOptions):
Support aforementioned text snapshotting options.

  • Shared/ImageOptions.h:
  • WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:

(WebKit::imageForRect):
Respect text color snapshotting options by setting appropriate paint behaviors.

10:36 AM Changeset in webkit [172754] by commit-queue@webkit.org
  • 4 edits in trunk/Source/JavaScriptCore

[CMake] Generate LLInt assembly correctly on Windows.
https://bugs.webkit.org/show_bug.cgi?id=135888

Patch by Alex Christensen <achristensen@webkit.org> on 2014-08-19
Reviewed by Oliver Hunt.

  • CMakeLists.txt:

Generate LowLevelInterpreterWin.asm instead of LLIntAssembly.h on Windows like the existing build system.

  • PlatformWin.cmake:

Don't build JSGlobalObjectInspectorController.cpp on Windows.

  • offlineasm/x86.rb:

Detect non-cygwin ruby installations correctly.

10:04 AM Changeset in webkit [172753] by ap@apple.com
  • 2 edits in trunk/LayoutTests

ASSERT_NOT_REACHED on css3/shapes/shape-outside/values/shape-image-threshold-001.html
https://bugs.webkit.org/show_bug.cgi?id=136075

8:43 AM Changeset in webkit [172752] by bshafiei@apple.com
  • 7 edits in branches/safari-600.1.4.11-branch

Merged r172213. <rdar://problem/18052523>

6:09 AM Changeset in webkit [172751] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Let the caller define JSC_timeout for run-javascriptcore-tests
https://bugs.webkit.org/show_bug.cgi?id=136068

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-08-19
Reviewed by Csaba Osztrogonác.

Keep the 60 second timeout for jsc tests as the default setting but
don't override the value of JSC_timeout if already set.

  • Scripts/run-javascriptcore-tests:
5:05 AM Changeset in webkit [172750] by clopez@igalia.com
  • 2 edits in trunk/LayoutTests

[GTK] Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Mark tests failing after r172733 (W3C CSS Shapes test suite import)

Update list of flaky tests. Report and mark new failures. Remove expectations for new passing tests.

2:41 AM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
1:37 AM Changeset in webkit [172749] by mjs@apple.com
  • 20 edits
    3 adds in trunk/Source

Use NSURLFileTypeMappings directly instead of depending on WebKitSystemInterface wrappers for it
https://bugs.webkit.org/show_bug.cgi?id=136035

Reviewed by Dan Bernstein.

Source/WebCore:

  • WebCore.exp.in: Remove reference to no longer existent sumbols.
  • WebCore.order: ditto
  • WebCore.xcodeproj/project.pbxproj: Install new NSURLFileTyeMappings.h header.
  • platform/ios/MIMETypeRegistryIOS.mm:

(WebCore::MIMETypeRegistry::getMIMETypeForExtension): Use NSURLFileTypeMappings
directly instead of via WKSI wrapper.

  • platform/mac/MIMETypeRegistryMac.mm:

(WebCore::MIMETypeRegistry::getMIMETypeForExtension): ditto
(WebCore::MIMETypeRegistry::getExtensionsForMIMEType): ditto
(WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType): ditto

  • platform/mac/WebCoreSystemInterface.h: Remove references to the no-longer-used

WKGetExtensionsForMIMEType, WKGetPreferredExtensionForMIMEType, or WKGetMIMETypeForExtension

  • platform/mac/WebCoreSystemInterface.mm: ditto
  • platform/spi: Added. This is where headers to declare SPI go.
  • platform/spi/cocoa: Added. See above.
  • platform/spi/cocoa/NSURLFileTypeMappingsSPI.h: Added. Header to declare

the internal class NSURLFileTypeMappings and some of its methods.

Source/WebKit/mac:

  • Misc/WebNSViewExtras.m:

(-[NSView _web_DragImageForElement:rect:event:pasteboard:source:offset:]): Remove comment
reference to obsolete WKSI function.

  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface): Don't initialize the no-longer-used WKGetExtensionsForMIMEType,
WKGetPreferredExtensionForMIMEType, or WKGetMIMETypeForExtension

  • Plugins/WebPluginDatabase.mm:

(-[WebPluginDatabase pluginForExtension:]): Include SPI header from WebCore; use
NSURLFileTypeMappings directly instead of via WKSI wrapper.

  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::objectContentType): ditto

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _imageExistsAtPaths:]): ditto

  • WebView/WebView.mm:

(+[WebView _supportedFileExtensions]): ditto
(+[WebView suggestedFileExtensionForMIMEType:]): ditto
(+[WebView _MIMETypeForFile:]): ditto

Source/WebKit2:

  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:

(InitWebCoreSystemInterface): Don't initialize the no-longer-used WKGetExtensionsForMIMEType,
WKGetPreferredExtensionForMIMEType, or WKGetMIMETypeForExtension

  • mac/WebKit2.order: Remove exports related to above.

Source/WTF:

  • wtf/Platform.h: Define USE(APPLE_INTERNAL_SDK) by default on platforms that have it.
1:09 AM Changeset in webkit [172748] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Remove obsolete run-javascriptcore-tests result parsing from master.cfg
https://bugs.webkit.org/show_bug.cgi?id=136039

Patch by Renato Nagy <nagy.renato@stud.u-szeged.hu> on 2014-08-19
Reviewed by Csaba Osztrogonác.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(RunJavaScriptCoreTests.commandComplete):

  • BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:

(RunJavaScriptCoreTestsTest.test_no_failure_new_output):
(RunJavaScriptCoreTestsTest.test_mozilla_failure_old_output):
(RunJavaScriptCoreTestsTest):
(RunJavaScriptCoreTestsTest.test_jsc_stress_failure_new_output):
(RunJavaScriptCoreTestsTest.test_mozilla_failure_new_output): Deleted.
(test_layout_failure_new_output): Deleted.
(test_layout_crash_new_output): Deleted.
(test_mozilla_and_layout_failure_new_output): Deleted.
(test_jsc_stress_failure_new_output): Deleted.
(test_js_crashes_and_jsc_stress_failures_new_output): Deleted.

12:37 AM Changeset in webkit [172747] by ap@apple.com
  • 3 edits in trunk/Tools

build.webkit.org/dashboard should not request 50 revisions from trac each time
https://bugs.webkit.org/show_bug.cgi?id=127130

build.webkit.org/dashboard sometimes fetches a Trac revision in an intermediate state, and never updates later
https://bugs.webkit.org/show_bug.cgi?id=127131

Reviewed by Timothy Hatcher.

Turns out that requesting 50 builds is much slower than requesting by date - even
if the request ends up returning more than 50 results. There is no way to only
request updates, but this change brings request time from 6-8 seconds down to
less than a second.

This patch generalizes date handling for later use in metrics code. As part of the
rewrite, I made newly fetched data update author e-mail in previously fetched
revisions, as it changes after commit queue first lands.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:

Updated for event rename. I changed the trac event to not contain the list of new
commits, as we now sometimes update old commits, and that couldn't be expressed
in event data. We never used the list anywhere in the first place.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:

(Trac.prototype._xmlTimelineURL): Made this function take arbitrary dates. When called
without arguments, return commits for today and yesterday.
(Trac.prototype._loaded):
(Trac.prototype.update): Moved the function for processing loaded results out of
here for clarity, and also because I'm going to have a separate loading code path
for metrics.

12:14 AM Changeset in webkit [172746] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION(r163179): It broke the build on ARM Thumb2 with GCC
https://bugs.webkit.org/show_bug.cgi?id=136028

Patch by Michael Saboff <msaboff@apple.com> on 2014-08-19
Reviewed by Oliver Hunt.

Added back ARMv7 conditionals around three op addp and subp since ARM Thumb2 spec says that
the behavior for those ops are undefined. This was originally done in changeset 163179.

  • llint/LowLevelInterpreter32_64.asm:

Aug 18, 2014:

11:12 PM Changeset in webkit [172745] by bshafiei@apple.com
  • 3 edits in branches/safari-600.1.4.11-branch/Source/WebCore

Merged r172317. <rdar://problem/18052514>

10:10 PM Changeset in webkit [172744] by commit-queue@webkit.org
  • 31 edits
    3 adds in trunk/Source

Unreviewed, rolling out r172736.
https://bugs.webkit.org/show_bug.cgi?id=136060

Caused 14% PLT regressions (Requested by rniwa on #webkit).

Reverted changeset:

"Remove PurgeableBuffer since it is not very useful any more"
https://bugs.webkit.org/show_bug.cgi?id=135939
http://trac.webkit.org/changeset/172736

10:04 PM Changeset in webkit [172743] by dburkart@apple.com
  • 5 edits in branches/safari-600.1-branch/Source

Bump versioning

9:41 PM Changeset in webkit [172742] by commit-queue@webkit.org
  • 4 edits
    3 deletes in trunk/Source/JavaScriptCore

Unreviewed, rolling out r172741.
https://bugs.webkit.org/show_bug.cgi?id=136058

This change is breaking PLT. (Requested by mlam on #webkit).

Reverted changeset:

"REGRESSION(r172401): for-in optimization no longer works at
all"
https://bugs.webkit.org/show_bug.cgi?id=136056
http://trac.webkit.org/changeset/172741

7:48 PM Changeset in webkit [172741] by fpizlo@apple.com
  • 4 edits
    3 adds in trunk/Source/JavaScriptCore

REGRESSION(r172401): for-in optimization no longer works at all
https://bugs.webkit.org/show_bug.cgi?id=136056

Reviewed by Mark Hahnenberg.

This is a partial roll-out of r172401. It turns out that the fix wasn't actually fixing a
real bug (since it's fine to use op_get_direct_pname on the wrong base because it has a
structure check) and it was actually breaking the entire for-in optimization (since there is
no way that we can statically prove that the base matches, because the base we see is a
newly created temporary, and anyway doing it right would be really hard in our bytecode
because it's 3AC form).

But, I added a new test for the problem, and kept the original test. Both the old test and
the new test prove that r172401 wasn't fixing what it thought it was fixing. To the extent
that it resolved crashes it was because it just disabled the for-in optimization entirely.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitGetByVal):
(JSC::BytecodeGenerator::pushIndexedForInScope):
(JSC::BytecodeGenerator::pushStructureForInScope):

  • bytecompiler/BytecodeGenerator.h:

(JSC::ForInContext::ForInContext):
(JSC::StructureForInContext::StructureForInContext):
(JSC::IndexedForInContext::IndexedForInContext):
(JSC::ForInContext::base): Deleted.

  • bytecompiler/NodesCodegen.cpp:

(JSC::ForInNode::emitMultiLoopBytecode):

  • tests/stress/for-in-base-reassigned.js: Added.
  • tests/stress/for-in-base-reassigned-later.js: Added.
  • tests/stress/for-in-base-reassigned-later-and-change-structure.js: Added.
7:46 PM Changeset in webkit [172740] by benjamin@webkit.org
  • 2 edits in trunk/LayoutTests

Mark shape-image-threshold-001.html as crashing in debug

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-08-18

The test css3/shapes/shape-outside/values/shape-image-threshold-001.html systematically assert
in debug. Skip the results until the author investigate.

7:31 PM Changeset in webkit [172739] by mark.lam@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Gardening: build fix for non-Mac builds after r172737.
https://bugs.webkit.org/show_bug.cgi?id=135750

Not reviewed.

6:04 PM Changeset in webkit [172738] by Simon Fraser
  • 7 edits in trunk/Source

Provide default implementations of all GraphicsLayerClient methods
https://bugs.webkit.org/show_bug.cgi?id=136054

Reviewed by Tim Horton.
Source/WebCore:

Make none of the functions in GraphicsLayerClient pure virtual, since in many cases
subclasses don't need to provide their own implementations.

  • platform/graphics/GraphicsLayerClient.h:

(WebCore::GraphicsLayerClient::notifyAnimationStarted):
(WebCore::GraphicsLayerClient::notifyFlushRequired):
(WebCore::GraphicsLayerClient::paintContents):

  • rendering/RenderLayerCompositor.h:

Source/WebKit2:

Remove overrides which are no longer required.

  • WebProcess/WebPage/PageOverlayController.h:
  • WebProcess/WebPage/ServicesOverlayController.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
5:55 PM Changeset in webkit [172737] by fpizlo@apple.com
  • 15 edits
    2 moves in trunk/Source/JavaScriptCore

REGRESSION(r172129): ftlopt branch merge made performance tests flakey crash
https://bugs.webkit.org/show_bug.cgi?id=135750

Reviewed by Mark Lam.

This was caused by a rather embarrassing oversight in how the DFG tracks structures: we
could sometimes perform an optimization that requires a structure to be alive but forget to
ensure that the structure is actually kept alive. In particular, any watchpoint-based
optimizations involve setting watchpoints even if the code that got optimized is eventually
deleted because it is unreachable. All such optimizations would leave behind something in
the IR to tell us that we are interested in the structure and that therefore it should be
kept alive. But, IR can be deleted if it is unreachable.

The solution is to ensure that as soon as the DFG is made aware of a structure, it adds it
to the set of weak references.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

  • dfg/DFGAbstractValue.cpp:

(JSC::DFG::AbstractValue::setOSREntryValue):
(JSC::DFG::AbstractValue::set):
(JSC::DFG::AbstractValue::normalizeClarity):
(JSC::DFG::AbstractValue::assertIsRegistered):
(JSC::DFG::AbstractValue::assertIsWatched): Deleted.

  • dfg/DFGAbstractValue.h:

(JSC::DFG::AbstractValue::assertIsRegistered):
(JSC::DFG::AbstractValue::assertIsWatched): Deleted.

  • dfg/DFGCommon.h:
  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::addStructureTransitionCheck):

  • dfg/DFGDesiredWeakReferences.cpp:

(JSC::DFG::DesiredWeakReferences::addLazily):
(JSC::DFG::DesiredWeakReferences::contains):
(JSC::DFG::DesiredWeakReferences::reallyAdd):
(JSC::DFG::DesiredWeakReferences::visitChildren):

  • dfg/DFGDesiredWeakReferences.h:
  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::canOptimizeStringObjectAccess):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::Graph):
(JSC::DFG::Graph::registerFrozenValues):
(JSC::DFG::Graph::convertToConstant):
(JSC::DFG::Graph::registerStructure):
(JSC::DFG::Graph::assertIsRegistered):
(JSC::DFG::Graph::assertIsWatched): Deleted.

  • dfg/DFGGraph.h:
  • dfg/DFGPlan.cpp:

(JSC::DFG::Plan::compileInThreadImpl):

  • dfg/DFGStructureAbstractValue.cpp:

(JSC::DFG::StructureAbstractValue::assertIsRegistered):
(JSC::DFG::StructureAbstractValue::assertIsWatched): Deleted.

  • dfg/DFGStructureAbstractValue.h:

(JSC::DFG::StructureAbstractValue::assertIsRegistered):
(JSC::DFG::StructureAbstractValue::assertIsWatched): Deleted.

  • dfg/DFGStructureRegistrationPhase.cpp: Copied from Source/JavaScriptCore/dfg/DFGWatchableStructureWatchingPhase.cpp.

(JSC::DFG::StructureRegistrationPhase::StructureRegistrationPhase):
(JSC::DFG::StructureRegistrationPhase::run):
(JSC::DFG::StructureRegistrationPhase::registerStructures):
(JSC::DFG::StructureRegistrationPhase::registerStructure):
(JSC::DFG::performStructureRegistration):
(JSC::DFG::WatchableStructureWatchingPhase::WatchableStructureWatchingPhase): Deleted.
(JSC::DFG::WatchableStructureWatchingPhase::run): Deleted.
(JSC::DFG::WatchableStructureWatchingPhase::tryWatch): Deleted.
(JSC::DFG::performWatchableStructureWatching): Deleted.

  • dfg/DFGStructureRegistrationPhase.h: Copied from Source/JavaScriptCore/dfg/DFGWatchableStructureWatchingPhase.h.
  • dfg/DFGWatchableStructureWatchingPhase.cpp: Removed.
  • dfg/DFGWatchableStructureWatchingPhase.h: Removed.
4:25 PM Changeset in webkit [172736] by psolanki@apple.com
  • 31 edits
    3 deletes in trunk/Source

Remove PurgeableBuffer since it is not very useful any more
https://bugs.webkit.org/show_bug.cgi?id=135939

Reviewed by Geoffrey Garen.

Source/WebCore:

The usefulness of having purgeable memory for cached resources has diminished now that
WebKit uses file backed resources when possible. Since this is read only memory, it is in
essence "purgeable". Having the PurgeableBuffer code adds additional complexity that we
don't need. e.g. on my Mac, I am not seeing any entry for "WebCore purgeable data" when I
run vmmap against the web processes that I have running. It is used on iOS, however even
there much of the purgeable memory we create gets replaced by file backed memory once we get
the notification from CFNetwork.

No new tests because no functional changes.

  • WebCore.xcodeproj/project.pbxproj:
  • inspector/InspectorPageAgent.cpp:

(WebCore::prepareCachedResourceBuffer):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::subresource):

  • loader/ResourceBuffer.cpp:

(WebCore::ResourceBuffer::hasPurgeableBuffer): Deleted.
(WebCore::ResourceBuffer::setShouldUsePurgeableMemory): Deleted.
(WebCore::ResourceBuffer::createPurgeableBuffer): Deleted.
(WebCore::ResourceBuffer::releasePurgeableBuffer): Deleted.

  • loader/ResourceBuffer.h:
  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didFinishLoading):

  • loader/cache/CachedCSSStyleSheet.cpp:

(WebCore::CachedCSSStyleSheet::sheetText):
(WebCore::CachedCSSStyleSheet::destroyDecodedData):

  • loader/cache/CachedCSSStyleSheet.h:
  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::image):
(WebCore::CachedImage::imageForRenderer):
(WebCore::CachedImage::imageSizeForRenderer):
(WebCore::CachedImage::destroyDecodedData):
(WebCore::CachedImage::canUseDiskImageCache):

  • loader/cache/CachedImage.h:
  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::addClientToSet):
(WebCore::CachedResource::isSafeToMakePurgeable): Deleted.
(WebCore::CachedResource::makePurgeable): Deleted.
(WebCore::CachedResource::isPurgeable): Deleted.
(WebCore::CachedResource::wasPurged): Deleted.

  • loader/cache/CachedResource.h:

(WebCore::CachedResource::resourceBuffer):
(WebCore::CachedResource::purgePriority): Deleted.

  • loader/cache/CachedScript.cpp:

(WebCore::CachedScript::script):
(WebCore::CachedScript::destroyDecodedData):

  • loader/cache/CachedScript.h:
  • loader/cache/MemoryCache.cpp:

(WebCore::MemoryCache::resourceForRequestImpl):
(WebCore::MemoryCache::pruneDeadResourcesToSize):
(WebCore::MemoryCache::evict):
(WebCore::MemoryCache::TypeStatistic::addResource):
(WebCore::MemoryCache::dumpStats):
(WebCore::MemoryCache::dumpLRULists):
(WebCore::MemoryCache::makeResourcePurgeable): Deleted.

  • loader/cache/MemoryCache.h:

(WebCore::MemoryCache::TypeStatistic::TypeStatistic):
(WebCore::MemoryCache::shouldMakeResourcePurgeableOnEviction): Deleted.

  • platform/PurgePriority.h: Removed.
  • platform/PurgeableBuffer.h: Removed.
  • platform/SharedBuffer.cpp:

(WebCore::SharedBuffer::SharedBuffer):
(WebCore::SharedBuffer::size):
(WebCore::SharedBuffer::data):
(WebCore::SharedBuffer::append):
(WebCore::SharedBuffer::clear):
(WebCore::SharedBuffer::copy):
(WebCore::SharedBuffer::getSomeData):
(WebCore::SharedBuffer::adoptPurgeableBuffer): Deleted.
(WebCore::SharedBuffer::createPurgeableBuffer): Deleted.
(WebCore::SharedBuffer::releasePurgeableBuffer): Deleted.

  • platform/SharedBuffer.h:

(WebCore::SharedBuffer::hasPurgeableBuffer): Deleted.
(WebCore::SharedBuffer::shouldUsePurgeableMemory): Deleted.

  • platform/cf/SharedBufferCF.cpp:

(WebCore::SharedBuffer::SharedBuffer):

  • platform/mac/PurgeableBufferMac.cpp: Removed.
  • platform/mac/SharedBufferMac.mm:

(WebCore::SharedBuffer::createCFData):

  • platform/soup/SharedBufferSoup.cpp:

Source/WebKit/mac:

  • Misc/WebCache.mm:

(+[WebCache statistics]):

Source/WebKit/win:

  • WebCache.cpp:

(WebCache::statistics):

Source/WebKit2:

  • WebProcess/WebProcess.cpp:

(WebKit::getWebCoreMemoryCacheStatistics):

Source/WTF:

  • wtf/Platform.h: Remove ENABLE_PURGEABLE_MEMORY define.
  • wtf/VMTags.h: Remove VM tags used by WebCore for cached resource purgeable memory.
4:22 PM Changeset in webkit [172735] by psolanki@apple.com
  • 2 edits in trunk/Source/WebCore

Use modern for loop instead of iterators in SharedBufferCF.cpp
https://bugs.webkit.org/show_bug.cgi?id=136000

Reviewed by Andreas Kling.

  • platform/cf/SharedBufferCF.cpp:

(WebCore::SharedBuffer::copyBufferAndClear):
(WebCore::SharedBuffer::copySomeDataFromDataArray):
(WebCore::SharedBuffer::maybeAppendDataArray): Use auto& instead of auto for less RetainPtr/refcount churn.

4:20 PM Changeset in webkit [172734] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Fix ASSERT in ARM64's JSC::GPRInfo::debugName
https://bugs.webkit.org/show_bug.cgi?id=136050

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-08-18
Reviewed by Darin Adler.

Remove cast of GPRReg to unsigned to prevent signed/unsigned comparison
error.

  • jit/GPRInfo.h:

(JSC::GPRInfo::debugName):

4:10 PM Changeset in webkit [172733] by commit-queue@webkit.org
  • 2 edits
    405 adds in trunk/LayoutTests

[CSS Shapes] Import the CSS Shapes W3C test suite
https://bugs.webkit.org/show_bug.cgi?id=135921

Patch by Rebecca Hauck <rhauck@adobe.com> on 2014-08-18
Reviewed by Bem Jones-Bey.

This patch contains the imported CSS Shapes W3C test suite
brought in and converted to WebKit style using
Tools/Scripts/impoart-w3c-tests.

  • TestExpectations:
  • css3/shapes/shape-outside-invalid-001-expected.txt: Added.
  • css3/shapes/shape-outside-invalid-001.html: Added.
  • css3/shapes/shape-outside-invalid-circle-000-expected.txt: Added.
  • css3/shapes/shape-outside-invalid-circle-000.html: Added.
  • css3/shapes/shape-outside-invalid-circle-001-expected.txt: Added.
  • css3/shapes/shape-outside-invalid-circle-001.html: Added.
  • css3/shapes/shape-outside-invalid-circle-002-expected.txt: Added.
  • css3/shapes/shape-outside-invalid-circle-002.html: Added.
  • css3/shapes/shape-outside-invalid-circle-003-expected.txt: Added.
  • css3/shapes/shape-outside-invalid-circle-003.html: Added.
  • css3/shapes/shape-outside-invalid-ellipse-001-expected.txt: Added.
  • css3/shapes/shape-outside-invalid-ellipse-001.html: Added.
  • css3/shapes/shape-outside-invalid-ellipse-002-expected.txt: Added.
  • css3/shapes/shape-outside-invalid-ellipse-002.html: Added.
  • css3/shapes/shape-outside-invalid-ellipse-003-expected.txt: Added.
  • css3/shapes/shape-outside-invalid-ellipse-003.html: Added.
  • css3/shapes/shape-outside-invalid-ellipse-004-expected.txt: Added.
  • css3/shapes/shape-outside-invalid-ellipse-004.html: Added.
  • css3/shapes/shape-outside-invalid-ellipse-005-expected.txt: Added.
  • css3/shapes/shape-outside-invalid-ellipse-005.html: Added.
  • css3/shapes/shape-outside-invalid-ellipse-006-expected.txt: Added.
  • css3/shapes/shape-outside-invalid-ellipse-006.html: Added.
  • css3/shapes/shape-outside-invalid-inset-001-expected.txt: Added.
  • css3/shapes/shape-outside-invalid-inset-001.html: Added.
  • css3/shapes/shape-outside-invalid-inset-002-expected.txt: Added.
  • css3/shapes/shape-outside-invalid-inset-002.html: Added.
  • css3/shapes/shape-outside-invalid-inset-003-expected.txt: Added.
  • css3/shapes/shape-outside-invalid-inset-003.html: Added.
  • css3/shapes/shape-outside-invalid-inset-004-expected.txt: Added.
  • css3/shapes/shape-outside-invalid-inset-004.html: Added.
  • css3/shapes/shape-outside/shape-box/shape-outside-box-002-expected.html: Added.
  • css3/shapes/shape-outside/shape-box/shape-outside-box-002.html: Added.
  • css3/shapes/shape-outside/shape-box/shape-outside-box-003-expected.html: Added.
  • css3/shapes/shape-outside/shape-box/shape-outside-box-003.html: Added.
  • css3/shapes/shape-outside/shape-box/shape-outside-box-004-expected.html: Added.
  • css3/shapes/shape-outside/shape-box/shape-outside-box-004.html: Added.
  • css3/shapes/shape-outside/shape-box/shape-outside-box-006-expected.html: Added.
  • css3/shapes/shape-outside/shape-box/shape-outside-box-006.html: Added.
  • css3/shapes/shape-outside/shape-box/shape-outside-box-007-expected.html: Added.
  • css3/shapes/shape-outside/shape-box/shape-outside-box-007.html: Added.
  • css3/shapes/shape-outside/shape-box/shape-outside-box-008-expected.html: Added.
  • css3/shapes/shape-outside/shape-box/shape-outside-box-008.html: Added.
  • css3/shapes/shape-outside/shape-box/w3c-import.log: Added.
  • css3/shapes/shape-outside/shape-image/gradients/shape-outside-linear-gradient-001-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/gradients/shape-outside-linear-gradient-001.html: Added.
  • css3/shapes/shape-outside/shape-image/gradients/shape-outside-linear-gradient-002-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/gradients/shape-outside-linear-gradient-002.html: Added.
  • css3/shapes/shape-outside/shape-image/gradients/shape-outside-linear-gradient-003-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/gradients/shape-outside-linear-gradient-003.html: Added.
  • css3/shapes/shape-outside/shape-image/gradients/shape-outside-linear-gradient-004-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/gradients/shape-outside-linear-gradient-004.html: Added.
  • css3/shapes/shape-outside/shape-image/gradients/shape-outside-radial-gradient-001-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/gradients/shape-outside-radial-gradient-001.html: Added.
  • css3/shapes/shape-outside/shape-image/gradients/shape-outside-radial-gradient-002-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/gradients/shape-outside-radial-gradient-002.html: Added.
  • css3/shapes/shape-outside/shape-image/gradients/shape-outside-radial-gradient-003-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/gradients/shape-outside-radial-gradient-003.html: Added.
  • css3/shapes/shape-outside/shape-image/gradients/shape-outside-radial-gradient-004-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/gradients/shape-outside-radial-gradient-004.html: Added.
  • css3/shapes/shape-outside/shape-image/gradients/w3c-import.log: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-000-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-000.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-001-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-001.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-002-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-002.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-003-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-003.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-004-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-004.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-005-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-005.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-012-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-012.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-013-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-013.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-014-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-014.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-015-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-015.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-016-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-016.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-017-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-017.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-018-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-018.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-019-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-019.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-020-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-020.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-021-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-021.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-022-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-022.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-023-expected.html: Added.
  • css3/shapes/shape-outside/shape-image/shape-image-023.html: Added.
  • css3/shapes/shape-outside/shape-image/support/left-half-rectangle-20.png: Added.
  • css3/shapes/shape-outside/shape-image/support/left-half-rectangle-20.svg: Added.
  • css3/shapes/shape-outside/shape-image/support/left-half-rectangle-50.png: Added.
  • css3/shapes/shape-outside/shape-image/support/left-half-rectangle-50.svg: Added.
  • css3/shapes/shape-outside/shape-image/support/left-half-rectangle-70.png: Added.
  • css3/shapes/shape-outside/shape-image/support/left-half-rectangle-70.svg: Added.
  • css3/shapes/shape-outside/shape-image/support/left-half-rectangle.jpg: Added.
  • css3/shapes/shape-outside/shape-image/support/left-half-rectangle.png: Added.
  • css3/shapes/shape-outside/shape-image/support/left-half-rectangle.svg: Added.
  • css3/shapes/shape-outside/shape-image/support/right-half-rectangle-20.png: Added.
  • css3/shapes/shape-outside/shape-image/support/right-half-rectangle-50.png: Added.
  • css3/shapes/shape-outside/shape-image/support/right-half-rectangle-70.png: Added.
  • css3/shapes/shape-outside/shape-image/support/right-half-rectangle-70.svg: Added.
  • css3/shapes/shape-outside/shape-image/support/right-half-rectangle.gif: Added.
  • css3/shapes/shape-outside/shape-image/support/right-half-rectangle.jpg: Added.
  • css3/shapes/shape-outside/shape-image/support/right-half-rectangle.png: Added.
  • css3/shapes/shape-outside/shape-image/support/right-half-rectangle.svg: Added.
  • css3/shapes/shape-outside/shape-image/support/w3c-import.log: Added.
  • css3/shapes/shape-outside/shape-image/w3c-import.log: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-013-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-013.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-014-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-014.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-015-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-015.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-016-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-016.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-017-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-017.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-018-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-018.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-019-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-019.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-020-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-020.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-021-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-021.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-022-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-022.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-024-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-024.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-025-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-025.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-026-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-026.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-027-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-027.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-028-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-028.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-029-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-029.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-030-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-030.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-031-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/shape-outside-circle-031.html: Added.
  • css3/shapes/shape-outside/supported-shapes/circle/w3c-import.log: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-013-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-013.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-014-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-014.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-015-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-015.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-016-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-016.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-017-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-017.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-018-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-018.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-019-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-019.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-020-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-020.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-021-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-021.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-022-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-022.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-023-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-023.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-024-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-024.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-025-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-025.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-030-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-030.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-031-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/shape-outside-ellipse-031.html: Added.
  • css3/shapes/shape-outside/supported-shapes/ellipse/w3c-import.log: Added.
  • css3/shapes/shape-outside/supported-shapes/inset/shape-outside-inset-010-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/inset/shape-outside-inset-010.html: Added.
  • css3/shapes/shape-outside/supported-shapes/inset/shape-outside-inset-011-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/inset/shape-outside-inset-011.html: Added.
  • css3/shapes/shape-outside/supported-shapes/inset/shape-outside-inset-012-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/inset/shape-outside-inset-012.html: Added.
  • css3/shapes/shape-outside/supported-shapes/inset/shape-outside-inset-013-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/inset/shape-outside-inset-013.html: Added.
  • css3/shapes/shape-outside/supported-shapes/inset/shape-outside-inset-014-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/inset/shape-outside-inset-014.html: Added.
  • css3/shapes/shape-outside/supported-shapes/inset/shape-outside-inset-015-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/inset/shape-outside-inset-015.html: Added.
  • css3/shapes/shape-outside/supported-shapes/inset/w3c-import.log: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-007-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-007.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-008-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-008.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-009-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-009.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-010-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-010.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-011-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-011.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-012-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-012.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-013-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-013.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-014-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-014.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-015-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-015.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-016-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-016.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-017-expected.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-017.html: Added.
  • css3/shapes/shape-outside/supported-shapes/polygon/w3c-import.log: Added.
  • css3/shapes/shape-outside/supported-shapes/support/rounded-rectangle.js: Added.

(ellipseXIntercept):
(scanConvertRoundedRectangleOutside):
(genLeftRoundedRectFloatShapeOutsideRefTest):
(getRoundedRectLeftEdge):
(genRightRoundedRectFloatShapeOutsideRefTest):

  • css3/shapes/shape-outside/supported-shapes/support/subpixel-utils.js: Added.

(SubPixelLayout):
(SubPixelLayout.):

  • css3/shapes/shape-outside/supported-shapes/support/test-utils.js: Added.

(verifyTextPoints):

  • css3/shapes/shape-outside/values/shape-image-threshold-000-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-image-threshold-000.html: Added.
  • css3/shapes/shape-outside/values/shape-image-threshold-001-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-image-threshold-001.html: Added.
  • css3/shapes/shape-outside/values/shape-image-threshold-002-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-image-threshold-002.html: Added.
  • css3/shapes/shape-outside/values/shape-image-threshold-003-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-image-threshold-003.html: Added.
  • css3/shapes/shape-outside/values/shape-margin-000-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-margin-000.html: Added.
  • css3/shapes/shape-outside/values/shape-margin-001-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-margin-001.html: Added.
  • css3/shapes/shape-outside/values/shape-margin-002-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-margin-002.html: Added.
  • css3/shapes/shape-outside/values/shape-margin-003-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-margin-003.html: Added.
  • css3/shapes/shape-outside/values/shape-margin-004-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-margin-004.html: Added.
  • css3/shapes/shape-outside/values/shape-margin-005-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-margin-005.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-box-000-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-box-000.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-000-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-000.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-001-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-001.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-002-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-002.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-003-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-003.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-004-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-004.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-005-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-005.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-006-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-006.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-007-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-007.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-008-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-008.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-009-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-009.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-010-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-010.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-011-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-circle-011.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-computed-shape-000-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-computed-shape-000.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-computed-shape-001-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-computed-shape-001.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-000-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-000.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-001-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-001.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-002-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-002.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-003-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-003.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-004-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-004.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-005-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-005.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-006-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-006.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-007-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-007.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-008-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-008.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-009-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-009.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-010-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-010.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-011-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-ellipse-011.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-000-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-000.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-001-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-001.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-002-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-002.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-003-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-003.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-004-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-004.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-005-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-005.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-006-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-006.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-007-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-007.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-008-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-008.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-009-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-inset-009.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-polygon-000-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-polygon-000.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-polygon-001-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-polygon-001.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-polygon-002-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-polygon-002.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-polygon-003-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-polygon-003.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-polygon-004-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-polygon-004.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-polygon-005-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-polygon-005.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-polygon-006-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-polygon-006.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-shape-arguments-000-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-shape-arguments-000.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-shape-arguments-001-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-shape-arguments-001.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-shape-box-pair-000-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-shape-box-pair-000.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-shape-inherit-000-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-shape-inherit-000.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-shape-initial-000-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-shape-initial-000.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-shape-none-000-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-shape-none-000.html: Added.
  • css3/shapes/shape-outside/values/shape-outside-shape-notation-000-expected.txt: Added.
  • css3/shapes/shape-outside/values/shape-outside-shape-notation-000.html: Added.
  • css3/shapes/shape-outside/values/support/parsing-utils.js: Added.

(ParsingUtils):
(ParsingUtils.):

  • css3/shapes/shape-outside/values/support/w3c-import.log: Added.
  • css3/shapes/shape-outside/values/w3c-import.log: Added.
  • css3/shapes/spec-examples/shape-outside-001-expected.html: Added.
  • css3/shapes/spec-examples/shape-outside-001.html: Added.
  • css3/shapes/spec-examples/shape-outside-002-expected.html: Added.
  • css3/shapes/spec-examples/shape-outside-002.html: Added.
  • css3/shapes/spec-examples/shape-outside-003-expected.html: Added.
  • css3/shapes/spec-examples/shape-outside-003.html: Added.
  • css3/shapes/spec-examples/shape-outside-004-expected.html: Added.
  • css3/shapes/spec-examples/shape-outside-004.html: Added.
  • css3/shapes/spec-examples/shape-outside-005-expected.html: Added.
  • css3/shapes/spec-examples/shape-outside-005.html: Added.
  • css3/shapes/spec-examples/shape-outside-006-expected.html: Added.
  • css3/shapes/spec-examples/shape-outside-006.html: Added.
  • css3/shapes/spec-examples/shape-outside-007-expected.html: Added.
  • css3/shapes/spec-examples/shape-outside-007.html: Added.
  • css3/shapes/spec-examples/shape-outside-008-expected.html: Added.
  • css3/shapes/spec-examples/shape-outside-008.html: Added.
  • css3/shapes/spec-examples/shape-outside-010-expected.html: Added.
  • css3/shapes/spec-examples/shape-outside-010.html: Added.
  • css3/shapes/spec-examples/shape-outside-011-expected.html: Added.
  • css3/shapes/spec-examples/shape-outside-011.html: Added.
  • css3/shapes/spec-examples/shape-outside-012-expected.html: Added.
  • css3/shapes/spec-examples/shape-outside-012.html: Added.
  • css3/shapes/spec-examples/shape-outside-013-expected.html: Added.
  • css3/shapes/spec-examples/shape-outside-013.html: Added.
  • css3/shapes/spec-examples/shape-outside-014-expected.html: Added.
  • css3/shapes/spec-examples/shape-outside-014.html: Added.
  • css3/shapes/spec-examples/shape-outside-015-expected.html: Added.
  • css3/shapes/spec-examples/shape-outside-015.html: Added.
  • css3/shapes/spec-examples/shape-outside-016-expected.html: Added.
  • css3/shapes/spec-examples/shape-outside-016.html: Added.
  • css3/shapes/spec-examples/shape-outside-017-expected.html: Added.
  • css3/shapes/spec-examples/shape-outside-017.html: Added.
  • css3/shapes/spec-examples/shape-outside-018-expected.html: Added.
  • css3/shapes/spec-examples/shape-outside-018.html: Added.
  • css3/shapes/spec-examples/shape-outside-019-expected.html: Added.
  • css3/shapes/spec-examples/shape-outside-019.html: Added.
  • css3/shapes/spec-examples/support/circle-no-shadow.png: Added.
  • css3/shapes/spec-examples/support/circle-shadow.png: Added.
  • css3/shapes/spec-examples/support/rounded-triangle.svg: Added.
  • css3/shapes/spec-examples/support/w3c-import.log: Added.
  • css3/shapes/spec-examples/w3c-import.log: Added.
  • css3/shapes/w3c-import.log: Added.
3:42 PM Changeset in webkit [172732] by dburkart@apple.com
  • 4 edits in branches/safari-600.1-branch

Merged r172680. <rdar://problem/18049780>

3:39 PM Changeset in webkit [172731] by dburkart@apple.com
  • 5 edits in branches/safari-600.1-branch/Source/WebKit2

Merged r172660. <rdar://problem/18049780>

3:16 PM Changeset in webkit [172730] by Antti Koivisto
  • 9 edits in trunk/Source/WebCore

Tighten RenderCounter typing
https://bugs.webkit.org/show_bug.cgi?id=136049

Reviewed by Andreas Kling.

RenderObject* -> RenderElement&

  • rendering/CounterNode.cpp:

(WebCore::CounterNode::CounterNode):
(WebCore::CounterNode::create):
(WebCore::showTreeAndMark):

  • rendering/CounterNode.h:

(WebCore::CounterNode::owner):

  • rendering/RenderCounter.cpp:

(WebCore::previousInPreOrder):
(WebCore::parentOrPseudoHostElement):
(WebCore::previousSiblingOrParent):
(WebCore::areRenderersElementsSiblings):
(WebCore::nextInPreOrder):
(WebCore::planCounter):
(WebCore::findPlaceForCounter):
(WebCore::makeCounterNode):
(WebCore::RenderCounter::originalText):
(WebCore::destroyCounterNodeWithoutMapRemoval):
(WebCore::RenderCounter::destroyCounterNodes):
(WebCore::RenderCounter::destroyCounterNode):
(WebCore::RenderCounter::rendererRemovedFromTree):
(WebCore::updateCounters):
(WebCore::RenderCounter::rendererSubtreeAttached):
(WebCore::RenderCounter::rendererStyleChanged):
(showCounterRendererTree):

  • rendering/RenderCounter.h:
  • rendering/RenderElement.cpp:

(WebCore::RenderElement::RenderElement):
(WebCore::RenderElement::insertChildInternal):
(WebCore::RenderElement::removeChildInternal):
(WebCore::RenderElement::styleDidChange):
(WebCore::RenderElement::willBeDestroyed):

  • rendering/RenderElement.h:

(WebCore::RenderElement::hasCounterNodeMap):
(WebCore::RenderElement::setHasCounterNodeMap):

Move CounterNodeMap to RenderElement from RenderObject.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::willBeDestroyed):

  • rendering/RenderObject.h:

(WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
(WebCore::RenderObject::hasCounterNodeMap): Deleted.
(WebCore::RenderObject::setHasCounterNodeMap): Deleted.

3:03 PM Changeset in webkit [172729] by commit-queue@webkit.org
  • 19 edits in trunk/Source

Expose long mouse press WebKit API. Part of 135257 - Add long mouse press gesture
https://bugs.webkit.org/show_bug.cgi?id=136048

Patch by Peyton Randolph <prandolph@apple.com> on 2014-08-18
Reviewed by Dan Bernstein.

This patch exposes long mouse press API callbacks in both the injected bundle and on the UI process
through their respective page UI clients. The callbacks are modeled off of the mouseDidMoveOverElement
callback. Like the mouseDidMoveOverElement callback, these callbacks allow the bundle to pass
information to the UI process via a userData out parameter.

Source/WebCore:

  • page/Chrome.cpp:

(WebCore::Chrome::didBeginTrackingPotentialLongMousePress): Added.
(WebCore::Chrome::didRecognizeLongMousePress): Added.
(WebCore::Chrome::didCancelTrackingPotentialLongMousePress): Added.

  • page/Chrome.h:
  • page/ChromeClient.h:

(WebCore::ChromeClient::didBeginTrackingPotentialLongMousePress): Added.
(WebCore::ChromeClient::didRecognizeLongMousePress): Added.
(WebCore::ChromeClient::didCancelTrackingPotentialLongMousePress): Added.

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMousePressEvent):
Pass the press hit test result to kick off the long mouse press.
(WebCore::EventHandler::beginTrackingPotentialLongMousePress): Notify the chrome.
(WebCore::EventHandler::recognizeLongMousePress): Ditto.
(WebCore::EventHandler::cancelTrackingPotentialLongMousePress):
Ditto. Also opportunistically remove a runtime switch check to see if long pressing is enabled. The
runtime switch check was only triggered when long pressing was disabled in the middle of a long press.

  • page/EventHandler.h:

Source/WebKit2:

  • UIProcess/API/APIUIClient.h:

(API::UIClient::didBeginTrackingPotentialLongMousePress): Added.
(API::UIClient::didRecognizeLongMousePress): Added.
(API::UIClient::didCancelTrackingPotentialLongMousePress): Added.

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageUIClient):

  • UIProcess/API/C/WKPageUIClient.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didBeginTrackingPotentialLongMousePress): Added.
(WebKit::WebPageProxy::didRecognizeLongMousePress): Added.
(WebKit::WebPageProxy::didCancelTrackingPotentialLongMousePress): Added.

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h:

(API::InjectedBundle::PageUIClient::didBeginTrackingPotentialLongMousePress): Added.
(API::InjectedBundle::PageUIClient::didRecognizeLongMousePress): Added.
(API::InjectedBundle::PageUIClient::didCancelTrackingPotentialLongMousePress): Added.

  • WebProcess/InjectedBundle/API/c/WKBundlePageUIClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp: Added.

(WebKit::InjectedBundlePageUIClient::didBeginTrackingPotentialLongMousePress): Added.
(WebKit::InjectedBundlePageUIClient::didRecognizeLongMousePress): Added.
(WebKit::InjectedBundlePageUIClient::didCancelTrackingPotentialLongMousePress): Added.

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::didBeginTrackingPotentialLongMousePress): Added.
(WebKit::WebChromeClient::didRecognizeLongMousePress): Added.
(WebKit::WebChromeClient::didCancelTrackingPotentialLongMousePress): Added.

  • WebProcess/WebCoreSupport/WebChromeClient.h:
2:44 PM Changeset in webkit [172728] by mitz@apple.com
  • 3 edits in trunk/Tools

Added an update-webkit option to override the ../Internal check.
Part of https://bugs.webkit.org/show_bug.cgi?id=135815

Reviewed by Tim Horton.

  • Scripts/update-webkit:

Added an explicit --internal option to control updating ../Internal, defaulting to whether
../Internal exists.
(runSvnUpdate): Moved to webkitdirs.pm.
(runGitUpdate): Ditto.

  • Scripts/webkitdirs.pm:

(runSvnUpdateAndResolveChangeLogs): Moved runSvnUpdate from update-webkit and renamed to this.
(runGitUpdate): Moved from update-webkit.

2:33 PM Changeset in webkit [172727] by akling@apple.com
  • 4 edits
    2 adds in trunk

REGRESSION(r168256): JSString can get 8-bit flag wrong when re-using AtomicStrings.
<https://webkit.org/b/133574>
<rdar://problem/18051847>

Source/JavaScriptCore:

The optimization that resolves JSRopeStrings into an existing
AtomicString (to save time and memory by avoiding StringImpl allocation)
had a bug that it wasn't copying the 8-bit flag from the AtomicString.

This could lead to a situation where a 16-bit StringImpl containing
only 8-bit characters is sitting in the AtomicString table, is found
by the rope resolution optimization, and gives you a rope that thinks
it's all 8-bit, but has a fiber with 16-bit characters.

Resolving that rope will then yield incorrect results.

This was all caught by an assertion, but very hard to reproduce.

Test: js/dopey-rope-with-16-bit-propertyname.html

Reviewed by Darin Adler.

  • runtime/JSString.cpp:

(JSC::JSRopeString::resolveRopeToAtomicString):
(JSC::JSRopeString::resolveRopeToExistingAtomicString):

  • runtime/JSString.h:

(JSC::JSString::setIs8Bit):
(JSC::JSString::toExistingAtomicString):

LayoutTests:

Add a tests that creates a 16-bit AtomicString with only 8-bit characters,
then tiers up into baseline JIT and uses that string as part of a rope-within-a-rope
and serializes that rope to get an incorrect concatenation.

Reviewed by Darin Adler.

  • js/dopey-rope-with-16-bit-propertyname-expected.txt: Added.
  • js/dopey-rope-with-16-bit-propertyname.html: Added.
2:14 PM Changeset in webkit [172726] by psolanki@apple.com
  • 2 edits in trunk/Tools

Make update-webkit more lenient for pure git svn repositories
https://bugs.webkit.org/show_bug.cgi?id=135805

Reviewed by Oliver Hunt.

Make the call to git fetch be non fatal. If you have a pure git svn repository, then the
call to git fetch will fail and update-webkit will abort. The purpose of r72966 was to
provide an optimization when you have a git repository setup. We should not fail if the
git setup does not have svn-remote.svn.fetch set.

  • Scripts/update-webkit:

(runGitUpdate):

2:14 PM Changeset in webkit [172725] by commit-queue@webkit.org
  • 6 edits in trunk/Source

Fix unintentional integer overflow before widen
https://bugs.webkit.org/show_bug.cgi?id=135463

Patch by Przemyslaw Kuczynski <p.kuczynski@samsung.com> on 2014-08-18
Reviewed by Oliver Hunt.

Overflowing expression is evaluated using operands arithmetic but then is used in
context which expects an wider integer type. To avoid overflow at least one operand
has to be representative of the wider type.

Source/WebCore:

  • loader/FTPDirectoryParser.cpp:

(WebCore::parseOneFTPLine): Changed strtoul to strtoull.

  • loader/ProgressTracker.cpp:

(WebCore::ProgressTracker::incrementProgress): Added static_cast to long long.

  • platform/efl/FileSystemEfl.cpp:

(WebCore::getVolumeFreeSizeForPath): Added static_cast to uint64_t.

Source/WebKit2:

  • WebProcess/soup/WebProcessSoup.cpp:

(WebKit::getMemorySize): Added long long literal.

2:11 PM Changeset in webkit [172724] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Fix resource leak in unclosed file descriptor handles
https://bugs.webkit.org/show_bug.cgi?id=135458

Patch by Przemyslaw Kuczynski <p.kuczynski@samsung.com> on 2014-08-18
Reviewed by Oliver Hunt.

Leaving descriptor unclosed will cause the resources associated with the open
file description never be freed (they are freed on closing the last descriptor
refering to the underlying file).

  • Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:

(WebKit::StdoutDevNullRedirector::StdoutDevNullRedirector): Closed newStdout descriptor.
(WebKit::StdoutDevNullRedirector::~StdoutDevNullRedirector): Closed m_savedStdout descriptor.

1:58 PM Changeset in webkit [172723] by vivek.vg@samsung.com
  • 5 edits
    2 adds in trunk

Implement CanvasRenderingContext2D direction attribute
https://bugs.webkit.org/show_bug.cgi?id=135878

Reviewed by Darin Adler.

Source/WebCore:

The attribute, 'direction', represents the text directionality.
This is an important attribute for the bi-directional text within the CanvasRenderingContext2D.
The allowed set of values are 'rtl', 'ltr' and 'inherit'.

Specification URL: http://www.whatwg.org/specs/web-apps/current-work/multipage/scripting.html#dom-context-2d-direction

Test: fast/canvas/canvas-direction.html

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::inheritedDirection):
(WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
(WebCore::CanvasRenderingContext2D::reset):
(WebCore::CanvasRenderingContext2D::State::State):
(WebCore::CanvasRenderingContext2D::State::operator=):
(WebCore::CanvasRenderingContext2D::direction):
(WebCore::CanvasRenderingContext2D::setDirection):
(WebCore::CanvasRenderingContext2D::drawTextInternal):

  • html/canvas/CanvasRenderingContext2D.h:
  • html/canvas/CanvasRenderingContext2D.idl:

LayoutTests:

  • fast/canvas/canvas-direction-expected.txt: Added.
  • fast/canvas/canvas-direction.html: Added.
1:54 PM Changeset in webkit [172722] by commit-queue@webkit.org
  • 4 edits
    1 add in trunk/Source/WebInspectorUI

Web Inspector: Introduce an inspector Abstract Syntax Tree.
https://bugs.webkit.org/show_bug.cgi?id=135763

Patch by Saam Barati <sbarati@apple.com> on 2014-08-18
Reviewed by Joseph Pecoraro.

This patch adds an Abstract Syntax Tree to the Web inspector.
This syntax tree is modeled off the Esprima.js syntax tree
which complies with the Mozilla Parser API:
https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey/Parser_API
Script is the owner of the Web Inspector syntax tree, and has an API
for accessing its syntax tree property.

  • UserInterface/External/Esprima/esprima.js:
  • UserInterface/Main.html:
  • UserInterface/Models/Script.js:

(WebInspector.Script):
(WebInspector.Script.prototype.requestScriptSyntaxTree.makeSyntaxTreeAndCallCallback):
(WebInspector.Script.prototype._resolveResource):
(WebInspector.Script.prototype._makeSyntaxTree):

  • UserInterface/Models/ScriptSyntaxTree.js: Added.

(WebInspector.ScriptSyntaxTree):
(WebInspector.ScriptSyntaxTree.prototype.get parsedSuccessfully):
(WebInspector.ScriptSyntaxTree.prototype.forEachNode):
(WebInspector.ScriptSyntaxTree.prototype.):
(WebInspector.ScriptSyntaxTree.prototype.filter):
(WebInspector.ScriptSyntaxTree.prototype.filterForNodesInRange):
(WebInspector.ScriptSyntaxTree.prototype.filterByRange):
(WebInspector.ScriptSyntaxTree.prototype.containsNonEmptyReturnStatement.removeFunctionsFilter):
(WebInspector.ScriptSyntaxTree.prototype.containsNonEmptyReturnStatement):
(WebInspector.ScriptSyntaxTree.prototype.updateTypes):
(WebInspector.ScriptSyntaxTree.prototype._defaultParserState):
(WebInspector.ScriptSyntaxTree.prototype._recurse):
(WebInspector.ScriptSyntaxTree.prototype._recurseArray):
(WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):

1:52 PM Changeset in webkit [172721] by benjamin@webkit.org
  • 11 edits
    6 adds in trunk

The style is not updated correctly when the pseudo class :empty is applied on anything but the rightmost element
https://bugs.webkit.org/show_bug.cgi?id=135999

Reviewed by Antti Koivisto.

Source/WebCore:

In Element's checkForEmptyStyleChange(), the style invalidation was only considering the invalidation of the element
for which the subtree has changed. When the pseudo class :empty is used with a sibling combinator (e.g. foo:empty+bar),
we were never invalidating the style of the element on which the selector applies.

This patch fixes the issue by invalidating the whole subtree rooted at the parent if the :empty rules applies
to siblings. A new flag "styleOfSiblingsAffectedByEmpty" is introduced to cover this case.

SelectorChecker just sets the flag all the time if any sibling rule exists.
This is overkill but that code is just there for non-jit cases.

SelectorCompiler does a better job and only sets the flag if matching anything else than the rightmost element.
There is a case not optimized, :empty with descendant (e.g. foo:empty>bar). Those cases are useless in practice,
it is not worth optimizing them.

Tests: fast/css/pseudo-element-updates-on-empty.html

fast/selectors/not-empty-adjacent-style-update.html
fast/selectors/not-empty-style-update.html

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne):

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::fragmentMatchesTheRightmostElement):
shouldUseRenderStyleFromCheckingContext() is renamed fragmentMatchesTheRightmostElement() because
it is now also used by generateElementIsEmpty() in a context where the Context's style is irrelevant.

(WebCore::SelectorCompiler::SelectorCodeGenerator::generateSelectorChecker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsActive):
(WebCore::SelectorCompiler::setStyleOfSiblingsAffectedByEmpty):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsEmpty):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsFirstChild):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsHovered):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsLastChild):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsOnlyChild):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsNthChild):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasPseudoElement):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateRequestedPseudoElementEqualsToSelectorPseudoElement):
(WebCore::SelectorCompiler::shouldUseRenderStyleFromCheckingContext): Deleted.
(WebCore::SelectorCompiler::setElementStyleIsAffectedByEmptyAndUpdateRenderStyleIfNecessary): Deleted.

  • dom/Element.cpp:

(WebCore::checkForEmptyStyleChange):
(WebCore::Element::setStyleOfSiblingsAffectedByEmpty):
(WebCore::Element::rareDataStyleOfSiblingsAffectedByEmpty):

  • dom/Element.h:

(WebCore::Element::styleOfSiblingsAffectedByEmpty):

  • dom/ElementRareData.h:

(WebCore::ElementRareData::styleOfSiblingsAffectedByEmpty):
(WebCore::ElementRareData::setStyleOfSiblingsAffectedByEmpty):
(WebCore::ElementRareData::ElementRareData):

LayoutTests:

  • fast/css/pseudo-element-updates-on-empty-expected.html: Added.
  • fast/css/pseudo-element-updates-on-empty.html: Added.
  • fast/selectors/empty-adjacent-style-update-expected.txt:
  • fast/selectors/empty-adjacent-style-update.html:
  • fast/selectors/empty-style-update-expected.txt:
  • fast/selectors/empty-style-update.html:
  • fast/selectors/not-empty-adjacent-style-update-expected.txt: Copied from LayoutTests/fast/selectors/empty-adjacent-style-update-expected.txt.
  • fast/selectors/not-empty-adjacent-style-update.html: Copied from LayoutTests/fast/selectors/empty-adjacent-style-update.html.
  • fast/selectors/not-empty-style-update-expected.txt: Copied from LayoutTests/fast/selectors/empty-style-update-expected.txt.
  • fast/selectors/not-empty-style-update.html: Copied from LayoutTests/fast/selectors/empty-style-update.html.
1:41 PM Changeset in webkit [172720] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

[Mac] Unreviewed merge correction.

  • page/mac/EventHandlerMac.mm:

(WebCore::EventHandler::platformCompleteWheelEvent): Revert an
unintended change from r172705.

1:25 PM Changeset in webkit [172719] by aestes@apple.com
  • 2 edits in trunk/Source/WebKit/ios

Fix the iOS build after r172709.

  • WebView/WebPDFViewPlaceholder.mm:

(-[WebPDFViewPlaceholder simulateClickOnLinkToURL:]):

12:52 PM Changeset in webkit [172718] by aestes@apple.com
  • 1 edit
    1 delete in trunk/LayoutTests

Remove a test inadvertently landed in r172709.

  • fast/loader/redirect-to-invalid-url-using-javascript-disallowed-after-load.html: Removed.
12:11 PM Changeset in webkit [172717] by commit-queue@webkit.org
  • 7 edits in trunk/Source/JavaScriptCore

The parser should generate AST nodes the var declarations with no initializers
https://bugs.webkit.org/show_bug.cgi?id=135545

Patch by Saam Barati <sbarati@apple.com> on 2014-08-18
Reviewed by Geoffrey Garen.

Currently, JSC's parser ignores variable declarations
that have no assignment initializer value because all
variables are implicitly assigned to undefined. But,
type profiling needs an AST node to be generated for these
empty variable declarations because it needs to be able to
profile their text locations and to see that their type
is undefined.

  • bytecompiler/NodesCodegen.cpp:

(JSC::EmptyVarExpression::emitBytecode):

  • parser/ASTBuilder.h:

(JSC::ASTBuilder::createVarStatement):
(JSC::ASTBuilder::createEmptyVarExpression):

  • parser/NodeConstructors.h:

(JSC::EmptyVarExpression::EmptyVarExpression):

  • parser/Nodes.h:
  • parser/Parser.cpp:

(JSC::Parser<LexerType>::parseVarDeclarationList):

  • parser/SyntaxChecker.h:

(JSC::SyntaxChecker::createEmptyVarExpression):

12:07 PM Changeset in webkit [172716] by Bem Jones-Bey
  • 2 edits in trunk/Source/WebCore

Small cleanup for ShapeOutsideDeltas
https://bugs.webkit.org/show_bug.cgi?id=136043

Reviewed by Zoltan Horvath.

Remove explicit initializtion of LayoutUnit members and explicitly
size the boolean flags so they pack properly.

No new tests, no behavior change.

  • rendering/shapes/ShapeOutsideInfo.h:
11:55 AM Changeset in webkit [172715] by Simon Fraser
  • 2 edits in trunk/Tools

Enable Web Inspector in MiniBrowser WK2 windows
https://bugs.webkit.org/show_bug.cgi?id=136045

Reviewed by Tim Horton.

Set the pref to enable developer extras for all WK2 windows.

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController awakeFromNib]):

11:24 AM Changeset in webkit [172714] by dburkart@apple.com
  • 4 edits in tags/Safari-600.1.10.2

Merged r172680. <rdar://problem/18049780>

11:23 AM Changeset in webkit [172713] by dburkart@apple.com
  • 5 edits in tags/Safari-600.1.10.2/Source/WebKit2

Merged r172660. <rdar://problem/18049780>

11:21 AM Changeset in webkit [172712] by dburkart@apple.com
  • 5 edits in tags/Safari-600.1.10.2/Source

Bump versioning.

11:18 AM Changeset in webkit [172711] by krit@webkit.org
  • 20 edits
    2 adds in trunk

calc() doesn't work for SVG CSS properties
https://bugs.webkit.org/show_bug.cgi?id=136026

Reviewed by Andreas Kling.

Source/WebCore:

Make calc() work on SVG CSS properties as well. stroke-width and
stroke-dashoffset used SVGLength. SVGLength doesn't work together with
cross units length arguments like % and px (just returns 0 in these
cases). I moved these properties over to Length. All modified files
beside to SVGCSSParser are related to this switch.

Test: svg/css/parse-calc-length.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • css/DeprecatedStyleBuilder.cpp:

(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):

  • css/SVGCSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::svgPropertyValue):

  • css/SVGCSSParser.cpp:

(WebCore::CSSParser::parseSVGValue):

  • css/SVGCSSStyleSelector.cpp:

(WebCore::StyleResolver::applySVGProperty):

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):

  • rendering/style/RenderStyle.h:
  • rendering/style/SVGRenderStyle.h:

(WebCore::SVGRenderStyle::setStrokeWidth):
(WebCore::SVGRenderStyle::setStrokeDashOffset):
(WebCore::SVGRenderStyle::strokeWidth):
(WebCore::SVGRenderStyle::strokeDashOffset):
(WebCore::SVGRenderStyle::initialStrokeDashOffset): Deleted.
(WebCore::SVGRenderStyle::initialStrokeWidth): Deleted.

  • rendering/style/SVGRenderStyleDefs.cpp:

(WebCore::StyleStrokeData::StyleStrokeData):

  • rendering/style/SVGRenderStyleDefs.h:
  • rendering/svg/RenderSVGShape.cpp:

(WebCore::RenderSVGShape::strokeWidth):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::strokeBoundingBox):

  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::applyStrokeStyleToContext):

  • rendering/svg/SVGRenderTreeAsText.cpp:

(WebCore::writeStyle):

  • svg/SVGLengthContext.cpp:

(WebCore::SVGLengthContext::valueForLength):

LayoutTests:

Test calc() on length properties for SVG.

  • svg/css/getComputedStyle-basic-expected.txt:
  • svg/css/parse-calc-length-expected.txt: Added.
  • svg/css/parse-calc-length.html: Added.
10:55 AM Changeset in webkit [172710] by dburkart@apple.com
  • 1 copy in tags/Safari-600.1.10.2

Tagging

10:48 AM Changeset in webkit [172709] by aestes@apple.com
  • 13 edits
    12 adds
    10 deletes in trunk

REGRESSION (r167856): adobe.com no longer able to launch Create Cloud app using a URL with a custom scheme
https://bugs.webkit.org/show_bug.cgi?id=136010

Reviewed by Darin Adler.

Source/WebCore:

r167856 caused WebKit to stop scheduling certain kinds of navigations (window.location changes, meta-refresh,
and some calls to window.open) when the request URL is invalid. Adobe.com performs one of these navigations to
an invalid URL with an external scheme (aam:), relying on Safari's navigation policy delegate to ignore the
navigation and launch the external app registered to handle aam: URLs. Since the navigation is no longer
scheduled, the policy delegate is never executed and the external app never launches.

Instead of not scheduling the navigation, allow it to proceed until the client's policy delegate has executed
and made a decision. Only disallow the navigation if the policy delegate told WebKit to proceed with the load.
This exposes these navigations to clients via the policy delegate and via willPerformClientRedirectToURL and
didCancelClientRedirectForFrame on the frame load delegate.

To constrain this check only to the navigation types covered by r167856, only two NavigationSchedulers
(ScheduledRedirect and ScheduledLocationChange) enable the invalid URL check.

Note that r167856 also caused an iOS regression, and this was resolved in r170120 by adding a linked-on-or-after
check and a WebCore setting. Since the iOS regression is also resolved by the approach described above, this
patch reverts r170120 (but keeps some of its tests).

Tests: fast/loader/redirect-to-invalid-url-using-javascript-calls-policy-delegate.html

fast/loader/redirect-to-invalid-url-using-javascript-disallowed.html
fast/loader/redirect-to-invalid-url-using-meta-refresh-calls-policy-delegate.html
fast/loader/redirect-to-invalid-url-using-meta-refresh-disallowed.html
fast/loader/window-open-to-invalid-url-calls-policy-delegate.html
fast/loader/window-open-to-invalid-url-disallowed.html

  • WebCore.exp.in: Updated the symbol FrameLoader::loadFrameRequest.
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::changeLocation): Added an AllowNavigationToInvalidURL argument; passed down to urlSelected.
(WebCore::FrameLoader::urlSelected): Added an AllowNavigationToInvalidURL argument; passed down to loadFrameRequest.
(WebCore::FrameLoader::loadURLIntoChildFrame): Passed AllowNavigationToInvalidURL::Yes to loadURL.
(WebCore::FrameLoader::loadFrameRequest): Added an AllowNavigationToInvalidURL argument; passed down to loadURL and loadPostRequest.
(WebCore::FrameLoader::loadURL): Added an AllowNavigationToInvalidURL argument; passed down to continueLoadAfterNewWindowPolicy and loadWithNavigationAction.
(WebCore::FrameLoader::loadPostRequest): Ditto.
(WebCore::FrameLoader::load): Passed AllowNavigationToInvalidURL::Yes to continueLoadAfterNewWindowPolicy.
(WebCore::FrameLoader::loadWithNavigationAction): Added an AllowNavigationToInvalidURL argument; passed down to loadWithDocumentLoader.
(WebCore::FrameLoader::loadWithDocumentLoader): Added an AllowNavigationToInvalidURL argument; passed down to continueLoadAfterNavigationPolicy.
(WebCore::FrameLoader::reloadWithOverrideEncoding): Passed AllowNavigationToInvalidURL::Yes to loadWithDocumentLoader.
(WebCore::FrameLoader::reload): Ditto.
(WebCore::FrameLoader::continueLoadAfterNavigationPolicy):

Added an AllowNavigationToInvalidURL argument; if its value is No and the request's URL is invalid, do not continue.
Added a FIXME about calling clientRedirectCancelledOrFinished on non-quick redirect cancellations.

(WebCore::FrameLoader::continueLoadAfterNewWindowPolicy): Added an AllowNavigationToInvalidURL argument; passed down to loadWithNavigationAction.
(WebCore::FrameLoader::loadDifferentDocumentItem): Passed AllowNavigationToInvalidURL::Yes to either loadWithDocumentLoader or loadWithNavigationAction.

  • loader/FrameLoader.h:
  • loader/FrameLoaderTypes.h: Defined AllowNavigationToInvalidURL to have values of Yes and No.
  • loader/NavigationScheduler.cpp:

(WebCore::ScheduledRedirect::fire): Passed AllowNavigationToInvalidURL::No to FrameLoader::changeLocation.
(WebCore::ScheduledLocationChange::fire): Ditto.
(WebCore::NavigationScheduler::shouldScheduleNavigation): Removed the URL::isValid check.
(WebCore::NavigationScheduler::scheduleLocationChange): Passed AllowNavigationToInvalidURL::No to FrameLoder::changeLocation during fragment navigations.

  • page/ContextMenuController.cpp:

(WebCore::openNewWindow): Passed AllowNavigationToInvalidURL::Yes to FrameLoader::loadFrameRequest.
(WebCore::ContextMenuController::contextMenuItemSelected): Ditto.

  • page/Settings.in: Removed allowNavigationToInvalidURL.

Source/WebKit/mac:

  • Misc/WebKitVersionChecks.h: Removed WEBKIT_FIRST_VERSION_WITH_NAVIGATION_URL_VALIDATION.
  • WebView/WebPDFView.mm:

(-[WebPDFView PDFViewWillClickOnLink:withURL:]): Passed AllowNavigationToInvalidURL::Yes to FrameLoader::loadFrameRequest.

  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]): Reverted the linked-on-or-after check added in r170120 since it's no longer necessary.

LayoutTests:

Removed tests that verified the behavior of setAllowNavigationToInvalidURL(true), which no longer exists:

  • fast/loader/allow-redirect-to-invalid-url-using-javascript-expected.txt: Removed.
  • fast/loader/allow-redirect-to-invalid-url-using-javascript.html: Removed.
  • fast/loader/allow-redirect-to-invalid-url-using-meta-refresh-expected.txt: Removed.
  • fast/loader/allow-redirect-to-invalid-url-using-meta-refresh.html: Removed.

Added tests that verify the policy delegate is executed on some navigations to invalid URLs:

  • fast/loader/redirect-to-invalid-url-using-javascript-calls-policy-delegate-expected.txt: Added.
  • fast/loader/redirect-to-invalid-url-using-javascript-calls-policy-delegate.html: Added.
  • fast/loader/redirect-to-invalid-url-using-meta-refresh-calls-policy-delegate-expected.txt: Added.
  • fast/loader/redirect-to-invalid-url-using-meta-refresh-calls-policy-delegate.html: Added.
  • fast/loader/window-open-to-invalid-url-calls-policy-delegate-expected.txt: Added.
  • fast/loader/window-open-to-invalid-url-calls-policy-delegate.html: Added.

Renamed some existing tests added in r170120, modified them to log willPerformClientRedirectToURL and
didCancelClientRedirectForFrame, and added a test to verify navigations in existing frames via window.open:

  • fast/loader/redirect-to-invalid-url-using-javascript-disallowed-expected.txt: Renamed from fast/loader/disallow-redirect-to-invalid-url-using-javascript-expected.txt.
  • fast/loader/redirect-to-invalid-url-using-javascript-disallowed.html: Renamed from fast/loader/disallow-redirect-to-invalid-url-using-javascript.html.
  • fast/loader/redirect-to-invalid-url-using-meta-refresh-disallowed-expected.txt: Renamed from fast/loader/disallow-redirect-to-invalid-url-using-meta-refresh-expected.txt.
  • fast/loader/redirect-to-invalid-url-using-meta-refresh-disallowed.html: Renamed from fast/loader/disallow-redirect-to-invalid-url-using-meta-refresh.html.
  • fast/loader/window-open-to-invalid-url-disallowed-expected.txt: Added.
  • fast/loader/window-open-to-invalid-url-disallowed.html: Added.
10:08 AM Changeset in webkit [172708] by bshafiei@apple.com
  • 5 edits in branches/safari-600.1.4.11-branch/Source

Versioning.

10:08 AM Changeset in webkit [172707] by commit-queue@webkit.org
  • 11 edits in trunk

Completed iterator can be revived by adding more than one new entry to the target object
https://bugs.webkit.org/show_bug.cgi?id=129993

Patch by Diego Pino Garcia <Diego Pino Garcia> on 2014-08-18
Reviewed by Oliver Hunt.

Source/JavaScriptCore:

When iterator reaches end, finish iterator.

  • runtime/JSMapIterator.h:

(JSC::JSMapIterator::finish):

  • runtime/JSSetIterator.h:

(JSC::JSSetIterator::finish):

  • runtime/MapData.h:

(JSC::MapData::const_iterator::finish): set index of iterator to max
Int32.

  • runtime/MapIteratorPrototype.cpp:

(JSC::MapIteratorPrototypeFuncNext):

  • runtime/SetIteratorPrototype.cpp:

(JSC::SetIteratorPrototypeFuncNext):

LayoutTests:

Test a Map or Set iterator should remain dead after using it.

  • js/basic-map-expected.txt:
  • js/basic-set-expected.txt:
  • js/script-tests/basic-map.js:

(set var):
(set map):

  • js/script-tests/basic-set.js:

(keys.set keys):
(set add.set add):

10:02 AM Changeset in webkit [172706] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Fix keyTimes list length of from/to/by animations.
https://bugs.webkit.org/show_bug.cgi?id=136037

Patch by Renata Hodovan <rhodovan.u-szeged@partner.samsung.com> on 2014-08-18
Reviewed by Darin Adler.

Source/WebCore:

For from/to/by animations, the length of keyTimes and keyPoints
attribute if are specified must be equal and must have at least
2 values.

This is backport of my fix in Blink: https://codereview.chromium.org/453243003/

Test: svg/animations/invalid-keytime-number-crash.html

  • svg/SVGAnimationElement.cpp:

(WebCore::SVGAnimationElement::startedActiveInterval):

LayoutTests:

  • svg/animations/invalid-keytime-number-crash-expected.txt: Added.
  • svg/animations/invalid-keytime-number-crash.html: Added.
9:51 AM Changeset in webkit [172705] by Brent Fulgham
  • 4 edits in trunk/Source/WebCore

[Mac] Follow-up to r136040 based on Darin Adler's comments.

Pass Widget* as a Widget&, since it can never be null.

  • page/EventHandler.cpp:

(WebCore::EventHandler::platformCompletePlatformWidgetWheelEvent):
(WebCore::EventHandler::handleWheelEvent):

  • page/EventHandler.h:
  • page/mac/EventHandlerMac.mm:

(WebCore::EventHandler::platformCompleteWheelEvent):
(WebCore::EventHandler::platformCompletePlatformWidgetWheelEvent):

9:35 AM Changeset in webkit [172704] by Bem Jones-Bey
  • 2 edits in trunk/Websites/webkit.org

Remove people that have left Adobe from Security Contact list
https://bugs.webkit.org/show_bug.cgi?id=135256

Reviewed by Alexey Proskuryakov.

  • security/security-group-members.html:
8:54 AM Changeset in webkit [172703] by Brent Fulgham
  • 4 edits in trunk/Source/WebCore

[Mac] Gesture scrolls don't work in the WebKit1 clients after scrolling a non-scrollable iFrame
https://bugs.webkit.org/show_bug.cgi?id=136029
<rdar://problem/17767169>

Reviewed by Maciej Stachowiak.

This is difficult to test in our layout tests, since it relies on specific host application
behavior.

If the platform widget is a frame view (IFrame), and we are in WebKit1, 'passWheelEventToWidget'
has already called 'scrollWheel' on the underlying platform widget. We need to return true in
this case to avoid getting multiple copies of the scrollWheel event sent to the platform widget.

  • page/EventHandler.cpp:

(WebCore::EventHandler::platformCompletePlatformWidgetWheelEvent): Revise default stub to
accept a Widget* argument.
(WebCore::EventHandler::handleWheelEvent):

  • page/EventHandler.h:
  • page/mac/EventHandlerMac.mm:

(WebCore::EventHandler::platformCompletePlatformWidgetWheelEvent): Check for WK1 case and
return 'true' when the underlying NSScrollView has been issues a scrollWheel event.

3:01 AM Changeset in webkit [172702] by zandobersek@gmail.com
  • 1 edit
    1 add in trunk/LayoutTests

Unreviewed GTK gardening. Adding a GTK-specific baseline
that's required after changes in r172620.

  • platform/gtk/editing/pasteboard/onpaste-text-html-expected.txt: Added.
2:52 AM Changeset in webkit [172701] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

master.cfg should handle special return codes of run-perf-tests
https://bugs.webkit.org/show_bug.cgi?id=135974

Patch by Renato Nagy <nagy.renato@stud.u-szeged.hu> on 2014-08-18
Reviewed by Ryosuke Niwa.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(RunAndUploadPerfTests.getText2):

  • BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:

(RunAndUploadPerfTestsTest):
(RunAndUploadPerfTestsTest.assertResults):
(RunAndUploadPerfTestsTest.test_tests_failed):
(RunAndUploadPerfTestsTest.test_build_bad_build):
(RunAndUploadPerfTestsTest.test_build_bad_source_json):
(RunAndUploadPerfTestsTest.test_build_bad_marge):
(RunAndUploadPerfTestsTest.test_build_bad_failed_uploading):
(RunAndUploadPerfTestsTest.test_build_bad_preparation):

1:16 AM Changeset in webkit [172700] by g.czajkowski@samsung.com
  • 2 edits in trunk/Source/WebKit2

[EFL] ewk_init() is sufficient to initialize EFL components
https://bugs.webkit.org/show_bug.cgi?id=136036

Reviewed by Gyuyoung Kim.

Developers do not have to initialize EFL components as ewk_init()
already does it.

  • UIProcess/API/efl/ewk_intro.h:
12:35 AM Changeset in webkit [172699] by aestes@apple.com
  • 8 edits
    1 move
    10 adds
    11 deletes in trunk

Revert r172697.

It made several webarchive layout tests flaky and didn't have the correct behavior for non-quick redirects.

Source/WebCore:

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::continueLoadAfterNavigationPolicy):

  • loader/NavigationScheduler.cpp:

(WebCore::NavigationScheduler::shouldScheduleNavigation):

  • page/Settings.in:

Source/WebKit/mac:

  • Misc/WebKitVersionChecks.h:
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):

LayoutTests:

  • fast/loader/allow-redirect-to-invalid-url-using-javascript-expected.txt: Added.
  • fast/loader/allow-redirect-to-invalid-url-using-javascript.html: Added.
  • fast/loader/allow-redirect-to-invalid-url-using-meta-refresh-expected.txt: Added.
  • fast/loader/allow-redirect-to-invalid-url-using-meta-refresh.html: Added.
  • fast/loader/disallow-redirect-to-invalid-url-using-javascript-expected.txt: Added.
  • fast/loader/disallow-redirect-to-invalid-url-using-javascript.html: Added.
  • fast/loader/disallow-redirect-to-invalid-url-using-meta-refresh-expected.txt: Added.
  • fast/loader/disallow-redirect-to-invalid-url-using-meta-refresh.html: Added.
  • fast/loader/redirect-to-invalid-url-using-javascript-calls-policy-delegate-expected.txt: Removed.
  • fast/loader/redirect-to-invalid-url-using-javascript-calls-policy-delegate.html: Removed.
  • fast/loader/redirect-to-invalid-url-using-javascript-disallowed-expected.txt: Removed.
  • fast/loader/redirect-to-invalid-url-using-javascript-disallowed.html: Removed.
  • fast/loader/redirect-to-invalid-url-using-meta-refresh-calls-policy-delegate-expected.txt: Removed.
  • fast/loader/redirect-to-invalid-url-using-meta-refresh-calls-policy-delegate.html: Removed.
  • fast/loader/redirect-to-invalid-url-using-meta-refresh-disallowed-expected.txt: Removed.
  • fast/loader/redirect-to-invalid-url-using-meta-refresh-disallowed.html: Removed.
  • fast/loader/resources/redirect-to-invalid-url-using-javascript.html: Added.
  • fast/loader/resources/redirect-to-invalid-url-using-meta-refresh.html: Added.
  • fast/loader/window-open-to-invalid-url-calls-policy-delegate-expected.txt: Removed.
  • fast/loader/window-open-to-invalid-url-calls-policy-delegate.html: Removed.
  • fast/loader/window-open-to-invalid-url-disallowed-expected.txt: Removed.
  • fast/loader/window-open-to-invalid-url-disallowed.html: Removed.
Note: See TracTimeline for information about the timeline view.