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

Timeline



Dec 5, 2015:

11:58 PM Changeset in webkit [193572] by bshafiei@apple.com
  • 31 edits
    4 copies in branches/safari-601-branch/Source/WebCore

Merged r193479. rdar://problem/23581547

11:57 PM Changeset in webkit [193571] by bshafiei@apple.com
  • 17 edits in branches/safari-601-branch/Source/WebCore

Merged r190202. rdar://problem/23581547

11:27 PM Changeset in webkit [193570] by matthew_hanson@apple.com
  • 5 edits
    2 deletes in branches/safari-601-branch

Roll out r193474. rdar://problem/23732400

11:27 PM Changeset in webkit [193569] by matthew_hanson@apple.com
  • 17 edits in branches/safari-601-branch/Source/WebKit2

Roll out r193475. rdar://problem/23732400

11:27 PM Changeset in webkit [193568] by matthew_hanson@apple.com
  • 3 edits in branches/safari-601-branch/Source/WebKit2

Roll out r193476. rdar://problem/23732400

11:27 PM Changeset in webkit [193567] by matthew_hanson@apple.com
  • 18 edits
    6 deletes in branches/safari-601-branch

Roll out r193478. rdar://problem/23732400

11:18 PM Changeset in webkit [193566] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

[JSC] Remove FTLOutput's fence support
https://bugs.webkit.org/show_bug.cgi?id=151909

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-12-05
Reviewed by Sam Weinig.

Unused code is unused.

  • ftl/FTLB3Output.h:

(JSC::FTL::Output::fence): Deleted.
(JSC::FTL::Output::fenceAcqRel): Deleted.

  • ftl/FTLOutput.h:

(JSC::FTL::Output::fence): Deleted.
(JSC::FTL::Output::fenceAcqRel): Deleted.

11:11 PM Changeset in webkit [193565] by bshafiei@apple.com
  • 14 edits
    4 copies in branches/safari-601.1.46-branch

Merged r192953. rdar://problem/23221158

11:09 PM Changeset in webkit [193564] by bshafiei@apple.com
  • 15 edits
    16 copies in branches/safari-601.1.46-branch

Merged r191252. rdar://problem/23772886

11:08 PM Changeset in webkit [193563] by bshafiei@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merged r191201. rdar://problem/23772887

11:07 PM Changeset in webkit [193562] by bshafiei@apple.com
  • 7 edits
    10 copies in branches/safari-601.1.46-branch

Merged r191178. rdar://problem/23772888

11:04 PM Changeset in webkit [193561] by bshafiei@apple.com
  • 14 edits
    10 copies
    6 deletes in branches/safari-601.1.46-branch

Merged r191151. rdar://problem/23772885

10:24 PM Changeset in webkit [193560] by bshafiei@apple.com
  • 4 edits in branches/safari-601.1.46-branch/Source/WebCore

Merged r191825. rdar://problem/23221179

10:23 PM Changeset in webkit [193559] by bshafiei@apple.com
  • 29 edits
    7 copies in branches/safari-601.1.46-branch

Merged r191128. rdar://problem/23221179

10:21 PM Changeset in webkit [193558] by bshafiei@apple.com
  • 13 edits in branches/safari-601.1.46-branch/Source/WebCore

Merged r190231. rdar://problem/23772890

10:19 PM Changeset in webkit [193557] by bshafiei@apple.com
  • 19 edits
    3 copies in branches/safari-601.1.46-branch

Merged r190209. rdar://problem/23772891

10:16 PM Changeset in webkit [193556] by bshafiei@apple.com
  • 18 edits
    1 copy in branches/safari-601.1.46-branch

Merged r191452. rdar://problem/23766290

10:14 PM Changeset in webkit [193555] by bshafiei@apple.com
  • 3 edits in branches/safari-601.1.46-branch/Source/WebKit2

Merged r191409. rdar://problem/23766303

10:12 PM Changeset in webkit [193554] by bshafiei@apple.com
  • 17 edits in branches/safari-601.1.46-branch/Source/WebKit2

Merged r191309. rdar://problem/23766300

10:09 PM Changeset in webkit [193553] by bshafiei@apple.com
  • 5 edits
    2 copies in branches/safari-601.1.46-branch

Merged r191072. rdar://problem/23766294

9:56 PM Changeset in webkit [193552] by ddkilzer@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r192129. rdar://problem/23221177

9:56 PM Changeset in webkit [193551] by ddkilzer@apple.com
  • 7 edits
    2 adds in branches/safari-601.1.46-branch

Merge r191981. rdar://problem/23221177

9:56 PM Changeset in webkit [193550] by ddkilzer@apple.com
  • 2 edits in branches/safari-601-branch/Source/WebCore

Merge r192129. rdar://problem/23732379

9:56 PM Changeset in webkit [193549] by ddkilzer@apple.com
  • 7 edits
    2 adds in branches/safari-601-branch

Merge r191981. rdar://problem/23732379

7:08 PM Changeset in webkit [193548] by ddkilzer@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r191155. rdar://problem/23772889

6:57 PM Changeset in webkit [193547] by ddkilzer@apple.com
  • 2 edits in branches/safari-601.1.46-branch/LayoutTests

Merge r190868. rdar://problem/23769564

6:57 PM Changeset in webkit [193546] by ddkilzer@apple.com
  • 10 edits
    2 copies in branches/safari-601.1.46-branch

Merge r190667. rdar://problem/23769564

6:57 PM Changeset in webkit [193545] by ddkilzer@apple.com
  • 7 edits in branches/safari-601.1.46-branch

Merge r188604. rdar://problem/23769564

6:10 PM Changeset in webkit [193544] by ddkilzer@apple.com
  • 4 edits in branches/safari-601.1.46-branch/Tools

Merge r189943. rdar://problem/23769685

6:10 PM Changeset in webkit [193543] by ddkilzer@apple.com
  • 4 edits
    10 adds in branches/safari-601.1.46-branch

Merge r189890. rdar://problem/23769685

5:54 PM Changeset in webkit [193542] by ddkilzer@apple.com
  • 15 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r188130. rdar://problem/23769683

5:54 PM Changeset in webkit [193541] by ddkilzer@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r187709. rdar://problem/23769683

5:54 PM Changeset in webkit [193540] by ddkilzer@apple.com
  • 7 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r188168. rdar://problem/23769683

5:54 PM Changeset in webkit [193539] by ddkilzer@apple.com
  • 8 edits
    4 adds in branches/safari-601.1.46-branch

Merge r188146. rdar://problem/23769683

5:54 PM Changeset in webkit [193538] by ddkilzer@apple.com
  • 6 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r187982. rdar://problem/23769683

4:46 PM Changeset in webkit [193537] by dburkart@apple.com
  • 19 edits in branches/safari-601-branch

Merge r190564. rdar://problem/23769747

2:02 PM Changeset in webkit [193536] by timothy@apple.com
  • 2 edits in trunk/Websites/webkit.org

One last fix for https redirect.

  • wp-content/themes/webkit/.htaccess:
1:55 PM Changeset in webkit [193535] by timothy@apple.com
  • 2 edits in trunk/Websites/webkit.org

Attempt to fix www redirect again.

  • wp-content/themes/webkit/.htaccess:
1:41 PM Changeset in webkit [193534] by timothy@apple.com
  • 2 edits in trunk/Websites/webkit.org

Fix www redirect again.

  • wp-content/themes/webkit/.htaccess:
1:40 PM Changeset in webkit [193533] by matthew_hanson@apple.com
  • 14 edits
    3 copies
    7 adds in branches/safari-601-branch

Merge r192953. rdar://problem/23581540

1:39 PM Changeset in webkit [193532] by timothy@apple.com
  • 3 edits in trunk/Websites/webkit.org

Fix www redirect when https was used and restore status URL code.

  • wp-content/themes/webkit/.htaccess:
  • wp-content/themes/webkit/status.php:
1:26 PM Changeset in webkit [193531] by timothy@apple.com
  • 2 edits in trunk/Websites/webkit.org

Another attempt to fix a 404 error when the site loads via www.webkit.org.

  • wp-content/themes/webkit/status.php:
1:17 PM Changeset in webkit [193530] by timothy@apple.com
  • 2 edits in trunk/Websites/webkit.org

Fix a 404 error when the site loads via www.webkit.org.

  • wp-content/themes/webkit/status.php:
11:54 AM Changeset in webkit [193529] by matthew_hanson@apple.com
  • 15 edits
    16 adds in branches/safari-601-branch

Merge r191252. rdar://problem/23772905

11:54 AM Changeset in webkit [193528] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601-branch/Source/WebCore

Merge r191201. rdar://problem/23772907

11:54 AM Changeset in webkit [193527] by matthew_hanson@apple.com
  • 7 edits
    10 adds in branches/safari-601-branch

Merge r191178. rdar://problem/23772788

11:54 AM Changeset in webkit [193526] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601-branch/Source/WebCore

Merge r191155. rdar://problem/23772908

11:54 AM Changeset in webkit [193525] by matthew_hanson@apple.com
  • 14 edits
    6 moves
    4 adds in branches/safari-601-branch

Merge r191151. rdar://problem/23772904

10:30 AM Changeset in webkit [193524] by matthew_hanson@apple.com
  • 15 edits in branches/safari-601-branch/Source/WebCore

Merge r188130. rdar://problem/23769732

10:30 AM Changeset in webkit [193523] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601-branch/Source/WebCore

Merge r187709. rdar://problem/23769732

10:30 AM Changeset in webkit [193522] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601-branch/LayoutTests

Merge r190868. rdar://problem/23769584

10:30 AM Changeset in webkit [193521] by matthew_hanson@apple.com
  • 10 edits
    2 copies in branches/safari-601-branch

Merge r190667. rdar://problem/23769584

10:30 AM Changeset in webkit [193520] by matthew_hanson@apple.com
  • 7 edits in branches/safari-601-branch

Merge r188604. rdar://problem/23769584

10:30 AM Changeset in webkit [193519] by matthew_hanson@apple.com
  • 4 edits in branches/safari-601-branch/Tools

Merge r189943. rdar://problem/23769735

10:30 AM Changeset in webkit [193518] by matthew_hanson@apple.com
  • 4 edits
    10 adds in branches/safari-601-branch

Merge r189890. rdar://problem/23769735

10:30 AM Changeset in webkit [193517] by matthew_hanson@apple.com
  • 7 edits in branches/safari-601-branch/Source/WebCore

Merge r188168. rdar://problem/23769732

10:30 AM Changeset in webkit [193516] by matthew_hanson@apple.com
  • 8 edits
    4 adds in branches/safari-601-branch

Merge r188146. rdar://problem/23769732

10:29 AM Changeset in webkit [193515] by matthew_hanson@apple.com
  • 6 edits in branches/safari-601-branch/Source/WebCore

Merge r187982. rdar://problem/23769732

9:08 AM Changeset in webkit [193514] by ddkilzer@apple.com
  • 2 edits in trunk/Tools

prepare-ChangeLog: Fix some warning messages when using svn
<http://webkit.org/b/151914>

Reviewed by Daniel Bates.

  • Scripts/prepare-ChangeLog:

(generateFunctionLists): Simplify logic so that we never call
normalizePath() with an undefined value.
(attributeCommand): Quote $subPath for the shell so that we
don't try to run "svn propget" on invalid paths.

5:53 AM Changeset in webkit [193513] by ddkilzer@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION (r193487): Modern IDB: storage/indexeddb/index-multientry.html crashes

  • platform/mac-wk1/TestExpectations: Skip test that crashes

on every run: storage/indexeddb/index-multientry.html.

Dec 4, 2015:

11:55 PM Changeset in webkit [193512] by mmaxfield@apple.com
  • 6 edits in trunk/Source/WebCore

Remove CORETEXT_WEB_FONTS
https://bugs.webkit.org/show_bug.cgi?id=151891

Reviewed by Simon Fraser.

The only platform where this was turned off (Mavericks) is no longer supported.

No new tests because there is no behavior difference.

  • platform/graphics/cocoa/FontCocoa.mm:

(WebCore::Font::platformCreateScaledFont): Deleted.

  • platform/graphics/cocoa/FontPlatformDataCocoa.mm:

(WebCore::FontPlatformData::registeredFont):
(WebCore::FontPlatformData::ctFont):

  • platform/graphics/mac/FontCustomPlatformData.cpp:

(WebCore::FontCustomPlatformData::fontPlatformData): Deleted.
(WebCore::createFontCustomPlatformData): Deleted.

  • platform/graphics/mac/FontCustomPlatformData.h:

(WebCore::FontCustomPlatformData::FontCustomPlatformData): Deleted.

  • platform/text/TextFlags.h:
11:11 PM Changeset in webkit [193511] by Alan Bujtas
  • 7 edits in trunk

Garbage in page tiles when document is too long.
https://bugs.webkit.org/show_bug.cgi?id=151906
rdar://problem/23695858

Reviewed by Simon Fraser.

Source/WebCore:

This patch partially fixes the broken concept(webkit.org/b/151908) of having a nearlyMax/2 sized rectangle to define infiniteness.
(see LayoutRect::infiniteRect() and ClipRect::isInfinite())

Covered by existing test.

  • rendering/ClipRect.h: Branch for infinite clipping.

(WebCore::ClipRect::intersect):
(WebCore::ClipRect::intersects):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::clipToRect): Do not clip when clipping is infinite.
(WebCore::RenderLayer::restoreClip):
(WebCore::RenderLayer::calculateClipRects):

LayoutTests:

  • platform/ios-simulator/fast/block/float/overhanging-tall-block-expected.txt:
  • platform/mac-mavericks/fast/block/float/overhanging-tall-block-expected.txt:
  • platform/mac/fast/block/float/overhanging-tall-block-expected.txt:
9:25 PM Changeset in webkit [193510] by beidson@apple.com
  • 12 edits in trunk

Modern IDB: Add some more custom exception messages, passing some more tests.
https://bugs.webkit.org/show_bug.cgi?id=151898

Reviewed by Alex Christensen.

Source/WebCore:

No new tests (Some failing tests now pass).

  • Modules/indexeddb/client/IDBTransactionImpl.cpp:

(WebCore::IDBClient::IDBTransaction::objectStore):

LayoutTests:

  • platform/mac-wk1/TestExpectations:
  • storage/indexeddb/keypath-arrays-expected.txt:
  • storage/indexeddb/noblobs-expected.txt:
  • storage/indexeddb/object-lookups-in-versionchange-expected.txt:
  • storage/indexeddb/request-result-cache-expected.txt:
  • storage/indexeddb/transaction-after-close-expected.txt:
  • storage/indexeddb/transaction-and-objectstore-calls-expected.txt:
  • storage/indexeddb/transaction-read-only-expected.txt:
8:31 PM Changeset in webkit [193509] by ddkilzer@apple.com
  • 2 edits in trunk/Tools

TestNetscapePlugIn: Fix remaining static analyzer warnings
<http://webkit.org/b/151888>

Reviewed by Alexey Proskuryakov.

Fixes the following static analyzer warnings:

Tools/DumpRenderTree/TestNetscapePlugIn/main.cpp:101:9: warning: Called function pointer is null (null dereference)

CRASH();

Tools/DumpRenderTree/TestNetscapePlugIn/main.cpp:46:5: note: expanded from macro 'CRASH'

((void(*)())0)(); /* More reliable, but doesn't say BBADBEEF */ \
~

Tools/DumpRenderTree/TestNetscapePlugIn/main.cpp:375:12: warning: Access to field 'pluginTest' results in a dereference of a null pointer (loaded from variable 'obj')

return obj->pluginTest->NPP_SetWindow(window);


2 warnings generated.

  • DumpRenderTree/TestNetscapePlugIn/main.cpp:

(CRASH): Use builtin_trap() for gcc/clang.
(NPP_SetWindow): Add early return if obj is nullptr.

7:29 PM Changeset in webkit [193508] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebInspectorUI

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

Causes Infinite Recursion in Timeline Recording (Requested by
JoePeck on #webkit).

Reverted changeset:

"Web Inspector: when a marked-dirty subview is attached to a
parent View, dirtyDescendantsCount gets out of sync"
https://bugs.webkit.org/show_bug.cgi?id=151876
http://trac.webkit.org/changeset/193486

7:20 PM Changeset in webkit [193507] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Uncaught Exception with Reload shortcut in JSContext Inspector
https://bugs.webkit.org/show_bug.cgi?id=151896

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-12-04
Reviewed by Timothy Hatcher.

  • UserInterface/Base/Main.js:

(WebInspector.contentLoaded):
Do not implicitly prevent default on these keyboard shortcuts
so we can system beep if we do not do anything.

(WebInspector._reloadPage):
(WebInspector._reloadPageIgnoringCache):
Bail if there is no PageAgent without preventing default for
a beep system beep. Prevent default if we did something.

6:57 PM Changeset in webkit [193506] by benjamin@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

[JSC] Some more cleanup of FTLB3Output
https://bugs.webkit.org/show_bug.cgi?id=151834

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-12-04
Reviewed by Filip Pizlo.

  • ftl/FTLB3Output.h:

(JSC::FTL::Output::trap):
(JSC::FTL::Output::stackmapIntrinsic): Deleted.
(JSC::FTL::Output::frameAddressIntrinsic): Deleted.
(JSC::FTL::Output::patchpointInt64Intrinsic): Deleted.
(JSC::FTL::Output::patchpointVoidIntrinsic): Deleted.

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::probe):

6:26 PM Changeset in webkit [193505] by benjamin@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[JSC] Fix Value::returnsBool() after r193436
https://bugs.webkit.org/show_bug.cgi?id=151902

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-12-04
Reviewed by Saam Barati.

I forgot to carry a test from Branch and Select :(

  • b3/B3Value.cpp:

(JSC::B3::Value::returnsBool):

5:48 PM Changeset in webkit [193504] by matthew_hanson@apple.com
  • 4 edits in branches/safari-601-branch/Source/WebCore

Merge r191825. rdar://problem/23732363

5:48 PM Changeset in webkit [193503] by matthew_hanson@apple.com
  • 29 edits
    3 copies
    377 adds in branches/safari-601-branch

Merge r191128. rdar://problem/23732363

5:47 PM Changeset in webkit [193502] by matthew_hanson@apple.com
  • 13 edits in branches/safari-601-branch/Source/WebCore

Merge r190231. rdar://problem/23732363

5:47 PM Changeset in webkit [193501] by matthew_hanson@apple.com
  • 19 edits
    19 adds in branches/safari-601-branch

Merge r190209. rdar://problem/23732363

5:45 PM Changeset in webkit [193500] by Brent Fulgham
  • 3 edits in trunk/Source/WebCore

Place an upper bound on canvas pixel count
https://bugs.webkit.org/show_bug.cgi?id=151825
<rdar://problem/23324916>

Reviewed by Simon Fraser.

Malformed JavaScript can attempt to create lots of canvas contexts. Limit the amount of memory
we will use for this purpose to some percentage of system RAM.

  • html/HTMLCanvasElement.cpp:

(WebCore::removeFromActivePixelMemory): Added helper function
(WebCore::HTMLCanvasElement::~HTMLCanvasElement): Call new 'releaseImageBufferAndContext' method
to ensure ImageBuffer and graphics context state are properly cleaned up.
(WebCore::maxActivePixels): Use one quarter of the system RAM, or 1 GB (whichever is more) as
an upper bound on active pixel memory.
(WebCore::HTMLCanvasElement::getContext): If we are attempting to create a context that will cause
us to exceed the allowed active pixel count, fail.
(WebCore::HTMLCanvasElement::releaseImageBufferAndContext): Added helper function
(WebCore::HTMLCanvasElement::setSurfaceSize): Use the new 'releaseImageBufferAndContext' method
to handle active pixel memory counts.
(WebCore::HTMLCanvasElement::createImageBuffer): Refuse to create a backing buffer if it will
exceed our available pixel memory.

5:45 PM Changeset in webkit [193499] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Crash when secondary clicking on a link on yahoo.com
https://bugs.webkit.org/show_bug.cgi?id=151900
rdar://problem/23765149

Reviewed by Beth Dakin.

Don't use +[NSURL URLWithString:] since it doesn't handle invalid URLs as well as WebCore::URL.

  • UIProcess/mac/WebContextMenuProxyMac.mm:

(WebKit::WebContextMenuProxyMac::createShareMenuItem):

5:35 PM Changeset in webkit [193498] by timothy@apple.com
  • 2 edits in trunk/Websites/webkit.org

Fix toggling so hidden links are not clickable still.

  • wp-content/themes/webkit/status.php:
5:28 PM Changeset in webkit [193497] by bshafiei@apple.com
  • 5 edits in branches/safari-601-branch/Source

Versioning.

5:23 PM Changeset in webkit [193496] by timothy@apple.com
  • 2 edits in trunk/Websites/webkit.org

Fix another place where feature status internal reference links were wrong.

  • wp-content/themes/webkit/status.php:
5:23 PM Changeset in webkit [193495] by bshafiei@apple.com
  • 1 copy in tags/Safari-601.5.3

New tag.

5:21 PM Changeset in webkit [193494] by beidson@apple.com
  • 9 edits in trunk

Modern IDB: Add some more custom exception messages, passing some more tests.
https://bugs.webkit.org/show_bug.cgi?id=151895

Reviewed by Alex Christensen.

Source/WebCore:

No new tests (Some failing tests now pass).

  • Modules/indexeddb/client/IDBDatabaseImpl.cpp:

(WebCore::IDBClient::IDBDatabase::transaction):

  • Modules/indexeddb/client/IDBObjectStoreImpl.cpp:

(WebCore::IDBClient::IDBObjectStore::deleteIndex):

LayoutTests:

  • platform/mac-wk1/TestExpectations:
  • storage/indexeddb/aborted-versionchange-closes-expected.txt:
  • storage/indexeddb/cursor-continue-dir-expected.txt:
  • storage/indexeddb/cursor-continue-expected.txt:
  • storage/indexeddb/deleteIndex-expected.txt:
  • storage/indexeddb/modern/idbdatabase-transaction-failures-expected.txt:
5:14 PM Changeset in webkit [193493] by commit-queue@webkit.org
  • 8 edits
    4 adds in trunk

[INTL] Implement Number.prototype.toLocaleString in ECMA-402
https://bugs.webkit.org/show_bug.cgi?id=147610

Patch by Andy VanWagoner <thetalecrafter@gmail.com> on 2015-12-04
Reviewed by Benjamin Poulain.

Source/JavaScriptCore:

Add toLocaleString in builtin JavaScript that delegates formatting to Intl.NumberFormat.
Keep exisiting native implementation for use if INTL flag is disabled.

  • CMakeLists.txt: Add NumberPrototype.js.
  • DerivedSources.make: Add NumberPrototype.js.
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • builtins/NumberPrototype.js: Added.

(toLocaleString):

  • runtime/CommonIdentifiers.h: Add private names for Intl constructors.
  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::init): Expose Intl constructors to builtin js.

  • runtime/NumberPrototype.cpp:

(JSC::NumberPrototype::finishCreation): Replace toLocaleString implementation.

LayoutTests:

Add tests for ECMA-402 Number.prototype.toLocaleString.
Since NumberFormat is not fully implemented, don't test locale-specific behavior yet.

  • js/number-toLocaleString-expected.txt: Added.
  • js/number-toLocaleString.html: Added.
  • js/script-tests/number-toLocaleString.js: Added.
5:06 PM Changeset in webkit [193492] by Jon Davis
  • 2 edits in trunk/Websites/webkit.org

Fixed feature status internal reference links.

  • wp-content/themes/webkit/status.php:
5:04 PM Changeset in webkit [193491] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

CRASH: CodeBlock::setOptimizationThresholdBasedOnCompilationResult + 567
https://bugs.webkit.org/show_bug.cgi?id=151892

Reviewed by Mark Lam.

When the debugger is in the process of attaching and it recompiles functions
for debugging, there can also be a DFG compilation running concurrently.
When we go to update the optimization threshold and find that the replacement
is also baseline code, we shouldn't update the threshold.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::setOptimizationThresholdBasedOnCompilationResult):

5:00 PM Changeset in webkit [193490] by bshafiei@apple.com
  • 5 edits in branches/safari-601.1.46-branch/Source

Versioning.

4:53 PM Changeset in webkit [193489] by Beth Dakin
  • 2 edits in trunk/Source/WebKit2

Crash in clients using userData in
_immediateActionAnimationControllerForHitTestResult
https://bugs.webkit.org/show_bug.cgi?id=151887

Rubber-stamped by Anders Carlsson.

Follow-up fix to handle null userData.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _web_immediateActionAnimationControllerForHitTestResultInternal:withType:userData:]):

4:42 PM Changeset in webkit [193488] by Jon Davis
  • 6 edits in trunk

Update feature status for up-to-date status information.
https://bugs.webkit.org/show_bug.cgi?id=151821

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

  • features.json:

Source/WebCore:

  • features.json:

Websites/webkit.org:

  • wp-content/themes/webkit/status.php:
4:31 PM Changeset in webkit [193487] by beidson@apple.com
  • 8 edits in trunk

Modern IDB: Flip test expectations around so we only list failures.
https://bugs.webkit.org/show_bug.cgi?id=151880

Reviewed by Alex Christensen.

Source/WebCore:

No new tests (Covered by all existing tests).

  • Modules/indexeddb/client/IDBRequestImpl.cpp:

(WebCore::IDBClient::IDBRequest::stop):
(WebCore::IDBClient::IDBRequest::enqueueEvent):
(WebCore::IDBClient::IDBRequest::dispatchEvent):

  • Modules/indexeddb/client/IDBRequestImpl.h:
  • Modules/indexeddb/client/IDBTransactionImpl.cpp:

(WebCore::IDBClient::IDBTransaction::abortDueToFailedRequest):
(WebCore::IDBClient::IDBTransaction::hasPendingActivity):
(WebCore::IDBClient::IDBTransaction::stop):
(WebCore::IDBClient::IDBTransaction::enqueueEvent):
(WebCore::IDBClient::IDBTransaction::dispatchEvent):

  • Modules/indexeddb/client/IDBTransactionImpl.h:
  • bindings/js/IDBBindingUtilities.cpp:

(WebCore::idbKeyToScriptValue): Protection against a ScriptExecutionContext that no longer has an ExecState.

A full reworking on the binding utilities to prevent this through is covered by b/151890

LayoutTests:

  • platform/mac-wk1/TestExpectations:
4:12 PM Changeset in webkit [193486] by Matt Baker
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: when a marked-dirty subview is attached to a parent View, dirtyDescendantsCount gets out of sync
https://bugs.webkit.org/show_bug.cgi?id=151876

Reviewed by Brian Burg.

  • UserInterface/Views/NewTabContentView.js:

(WebInspector.NewTabContentView.prototype._updateShownTabs):
Removed workaround added in https://bugs.webkit.org/show_bug.cgi?id=151594.

  • UserInterface/Views/View.js:

(WebInspector.View._scheduleLayoutForView):
Always perform a synchronous layout when a view that isn't descended from the
root view schedules a layout.

4:04 PM Changeset in webkit [193485] by sbarati@apple.com
  • 14 edits in trunk/Source/JavaScriptCore

OSR exits that are exception handlers should emit less code eagerly in the thunk generator, and instead, should defer as much code generation as possible to be lazily generated in the exit itself
https://bugs.webkit.org/show_bug.cgi?id=151406

Reviewed by Filip Pizlo.

We no longer emit any extra code eagerly for an OSRExit that
is an exception handler. We emit all code lazily in the exit
itself. This has one interesting consequence which is that the
actual C call to compile the exit goes through an OSR exit generation
thunk that must now be aware of resetting the call frame and the stack
pointer to their proper values before making the compileOSRExit C
call. This has one interesting consequence in the FTL because the
FTL will do a pushToSaveImmediateWithoutTouchingRegisters with the
OSR exit index. We must take care to preserve this exit index when
we reset the stack pointer by re-pushing it onto the stack.

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::setJITCode):
(JSC::CodeBlock::jitCode):
(JSC::CodeBlock::jitCodeOffset):
(JSC::CodeBlock::jitType):

  • dfg/DFGCommonData.h:

(JSC::DFG::CommonData::frameRegisterCountOffset):

  • dfg/DFGJITCode.h:

(JSC::DFG::JITCode::setOSREntryBlock):
(JSC::DFG::JITCode::clearOSREntryBlock):
(JSC::DFG::JITCode::commonDataOffset):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::linkOSRExits):

  • dfg/DFGOSRExitCompiler.cpp:
  • dfg/DFGOSRExitCompilerCommon.h:

(JSC::DFG::adjustFrameAndStackInOSRExitCompilerThunk):

  • dfg/DFGThunks.cpp:

(JSC::DFG::osrExitGenerationThunkGenerator):

  • ftl/FTLCompile.cpp:

(JSC::FTL::mmAllocateDataSection):

  • ftl/FTLExitThunkGenerator.cpp:

(JSC::FTL::ExitThunkGenerator::~ExitThunkGenerator):
(JSC::FTL::ExitThunkGenerator::emitThunk):
(JSC::FTL::ExitThunkGenerator::emitThunks):

  • ftl/FTLExitThunkGenerator.h:

(JSC::FTL::ExitThunkGenerator::didThings):

  • ftl/FTLJITCode.h:

(JSC::FTL::JITCode::commonDataOffset):

  • ftl/FTLOSRExitCompiler.cpp:

(JSC::FTL::compileStub):
(JSC::FTL::compileFTLOSRExit):

  • ftl/FTLThunks.cpp:

(JSC::FTL::genericGenerationThunkGenerator):
(JSC::FTL::osrExitGenerationThunkGenerator):
(JSC::FTL::lazySlowPathGenerationThunkGenerator):
(JSC::FTL::registerClobberCheck):

3:52 PM Changeset in webkit [193484] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

[Cocoa] Some fonts cause CTFontCopyAvailableTables() to return nullptr
https://bugs.webkit.org/show_bug.cgi?id=151884
<rdar://problem/23752253>

Reviewed by Brian Burg.

No new tests.

  • platform/graphics/opentype/OpenTypeCG.cpp:

(WebCore::OpenType::fontHasMathTable):

3:22 PM Changeset in webkit [193483] by Beth Dakin
  • 2 edits in trunk/Source/WebKit2

Crash in clients using userData in
_immediateActionAnimationControllerForHitTestResult
https://bugs.webkit.org/show_bug.cgi?id=151887

Reviewed by Sam Weinig.

Cast this correctly.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _web_immediateActionAnimationControllerForHitTestResultInternal:withType:userData:]):

3:15 PM Changeset in webkit [193482] by jer.noble@apple.com
  • 5 edits in trunk/Source/WebCore

Unreviewed build-fix; Add new parameter to overloaded createSession() method in MediaPlayerPrivateAVFoundationCF.

  • platform/graphics/avfoundation/cf/CDMSessionAVFoundationCF.cpp:

(WebCore::CDMSessionAVFoundationCF::CDMSessionAVFoundationCF):

  • platform/graphics/avfoundation/cf/CDMSessionAVFoundationCF.h:
  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::MediaPlayerPrivateAVFoundationCF::createSession):

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h:
3:09 PM Changeset in webkit [193481] by barraclough@apple.com
  • 8 edits in trunk/Source/WebKit2

Background state not being tracked correctly for PDFs on iOS
https://bugs.webkit.org/show_bug.cgi?id=151886

Reviewed by Anders Carlson.

The problem here is that when viewing a PDF we don't have an ApplicationStateTracker.
(While we do have a content view - which normally holds the ApplicationStateTracker -
the content view is not in a window, and only has an ApplicationStateTracker while in a
window). For now, let's give the WKPDFView an ApplicationStateTracker of its very own.
In the future we may want to refactor ownership of the ApplicationStateTracker up to
the WKWebView.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _isBackground]):

  • Added, checks background state of content/PDF view.
  • UIProcess/API/Cocoa/WKWebViewInternal.h:
    • expose _isBackground to PageClientImplIOS.
  • UIProcess/ApplicationStateTracker.h:

(WebKit::ApplicationStateTracker::isInBackground):

  • UIProcess/ApplicationStateTracker.mm:

(WebKit::isBackgroundState):
(WebKit::ApplicationStateTracker::ApplicationStateTracker):

  • generalize WKContentView -> UIView, so this may now also be a WKPDFView.
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::isViewVisible):

  • check background state via the WKWebView.
  • UIProcess/ios/WKPDFView.h:
  • UIProcess/ios/WKPDFView.mm:

(-[WKPDFView willMoveToWindow:]):
(-[WKPDFView didMoveToWindow]):
(-[WKPDFView isBackground]):
(-[WKPDFView _applicationDidEnterBackground]):
(-[WKPDFView _applicationWillEnterForeground]):

  • added methods to initialize ApplicationStateTracker, access background state, & callbacks to the page proxy.
2:54 PM Changeset in webkit [193480] by fpizlo@apple.com
  • 1 edit
    1 add in trunk/Source/JavaScriptCore

Having a bad time has a really awful time when it runs at the same time as the JIT
https://bugs.webkit.org/show_bug.cgi?id=151882
rdar://problem/23547038

Unreviewed, really adding the test this time.

  • tests/stress/ftl-has-a-bad-time.js: Added.

(foo):

2:41 PM Changeset in webkit [193479] by jer.noble@apple.com
  • 31 edits
    3 copies
    1 add in trunk/Source/WebCore

Adopt AVContentKeySession
https://bugs.webkit.org/show_bug.cgi?id=151221

Reviewed by Eric Carlson.

Adopt a new API for managing key state, AVContentKeySession. Because this necessitates a change
in both the initialization data returned by the needkey event, and passed into the createSession()
method, bump the protocol version number (to 3), and keep supporting the old key management API
for legacy content.

To do so, move most of the implementation of CDMPrivateMediaSourceAVFObjC into a new subclass,
CDMSessionAVStreamSession, and add a new subclass, CDMSessionAVContentKeySession, to support the
new API.

  • platform/graphics/avfoundation/CDMPrivateMediaSourceAVFObjC.h:

(WebCore::CDMPrivateMediaSourceAVFObjC::CDMPrivateMediaSourceAVFObjC): Moved to implementation file.

  • platform/graphics/avfoundation/CDMPrivateMediaSourceAVFObjC.mm:

(WebCore::validKeySystemRE): Support "com.apple.fps.3_x".
(WebCore::CDMPrivateMediaSourceAVFObjC::~CDMPrivateMediaSourceAVFObjC): Invalidate all outstanding sessions.
(WebCore::CDMPrivateMediaSourceAVFObjC::supportsKeySystem): Only support "com.apple.fps.3_x" if the AVContentKeySession class is available.
(WebCore::CDMPrivateMediaSourceAVFObjC::createSession): Create an instance of CDMSessionAVContentKeySession if "com.apple.fps.3_x" is specified and AVContentKeySession is available.
(WebCore::CDMPrivateMediaSourceAVFObjC::invalidateSession): Remove session from the list of outstanding sessions.
(WebCore::CDMPrivateMediaSourceAVFObjC::supportsMIMEType): Deleted.

  • platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.h: Copied from Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.h.

(WebCore::CDMSessionAVContentKeySession::hasContentKeySession): Simple accessor.
(WebCore::toCDMSessionAVContentKeySession): Safe casting.

  • platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm: Added.

(-[CDMSessionAVContentKeySessionDelegate initWithParent:]): Simple constructor.
(-[CDMSessionAVContentKeySessionDelegate invalidate]): Remove reference to parent.
(-[CDMSessionAVContentKeySessionDelegate contentKeySession:willProvideKeyRequestInitializationDataForTrackID:]): Pass to parent.
(-[CDMSessionAVContentKeySessionDelegate contentKeySession:didProvideKeyRequestInitializationData:requestHandling:]): Ditto.
(-[CDMSessionAVContentKeySessionDelegate contentKeySessionContentProtectionSessionIdentifierDidChange:]): Ditto.
(WebCore::CDMSessionAVContentKeySession::CDMSessionAVContentKeySession): Create the delegate.
(WebCore::CDMSessionAVContentKeySession::~CDMSessionAVContentKeySession): Invalidate the delegate and remove all parsers.
(WebCore::CDMSessionAVContentKeySession::isAvailable): Return true if AVContentKeySession class is available.
(WebCore::CDMSessionAVContentKeySession::generateKeyRequest): Support "keyrelease" message, setting of the certificate, and creating key request object.
(WebCore::CDMSessionAVContentKeySession::releaseKeys): Retrieve keys from storage location.
(WebCore::isEqual): Compares a Uint8Array to a char*.
(WebCore::CDMSessionAVContentKeySession::update): Support "acknowledged" message, "renew" message, and key addition.
(WebCore::CDMSessionAVContentKeySession::addParser): Add the parser to the AVContentKeySession.
(WebCore::CDMSessionAVContentKeySession::removeParser): Remove parser from same.
(WebCore::CDMSessionAVContentKeySession::generateKeyReleaseMessage): Retrieve key release message from AVContentKeySession.
(WebCore::CDMSessionAVContentKeySession::didProvideContentKeyRequest): Simple setter.
(WebCore::CDMSessionAVContentKeySession::contentKeySession): Lazily create the AVContentKeySession.

  • platform/graphics/avfoundation/objc/CDMSessionAVFoundationObjC.h:
  • platform/graphics/avfoundation/objc/CDMSessionAVFoundationObjC.mm:

(WebCore::CDMSessionAVFoundationObjC::CDMSessionAVFoundationObjC):

  • platform/graphics/avfoundation/objc/CDMSessionAVStreamSession.h: Copied from Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.h.

(WebCore::toCDMSessionAVStreamSession):

  • platform/graphics/avfoundation/objc/CDMSessionAVStreamSession.mm: Copied from Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm.

(-[CDMSessionAVStreamSessionObserver initWithParent:]): Moved from CDMSessionMediaSourceAVFObjcObserver.
(-[CDMSessionAVStreamSessionObserver contentProtectionSessionIdentifierChanged:]): Ditto.
(WebCore::CDMSessionAVStreamSession::CDMSessionAVStreamSession): Ditto.
(WebCore::CDMSessionAVStreamSession::~CDMSessionAVStreamSession): Ditto.
(WebCore::CDMSessionAVStreamSession::generateKeyRequest): Ditto.
(WebCore::CDMSessionAVStreamSession::releaseKeys): Ditto.
(WebCore::isEqual): Ditto.
(WebCore::CDMSessionAVStreamSession::update): Ditto.
(WebCore::CDMSessionAVStreamSession::setStreamSession): Ditto.
(WebCore::CDMSessionAVStreamSession::addParser): Ditto.
(WebCore::CDMSessionAVStreamSession::removeParser): Ditto.
(WebCore::CDMSessionAVStreamSession::generateKeyReleaseMessage): Ditto.

  • platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.h:

(WebCore::CDMSessionMediaSourceAVFObjC::invalidateCDM): Clear the m_cdm.
(WebCore::toCDMSessionMediaSourceAVFObjC):

  • platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm:

(WebCore::CDMSessionMediaSourceAVFObjC::CDMSessionMediaSourceAVFObjC):
(WebCore::CDMSessionMediaSourceAVFObjC::~CDMSessionMediaSourceAVFObjC): Instruct our CDM to invalidate their references to us.
(WebCore::CDMSessionMediaSourceAVFObjC::addSourceBuffer): Call addParser().
(WebCore::CDMSessionMediaSourceAVFObjC::removeSourceBuffer): Call removeParser().
(WebCore::CDMSessionMediaSourceAVFObjC::layerDidReceiveError): Deleted.
(WebCore::CDMSessionMediaSourceAVFObjC::rendererDidReceiveError): Deleted.

To give us a chance to create a CDMPrivate before we continue decoding media data, "block" further decoding
on the background thread by creating a semaphore and passing it to the main thread, to be triggered when
a CDM is created and attached to this source buffer.

  • platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
  • platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:

(-[WebAVStreamDataParserListener streamDataParser:didProvideContentKeyRequestInitializationData:forTrackID:]):
(WebCore::SourceBufferPrivateAVFObjC::~SourceBufferPrivateAVFObjC):
(WebCore::SourceBufferPrivateAVFObjC::willProvideContentKeyRequestInitializationDataForTrackID):
(WebCore::SourceBufferPrivateAVFObjC::didProvideContentKeyRequestInitializationDataForTrackID):
(WebCore::SourceBufferPrivateAVFObjC::setCDMSession):
(-[WebAVStreamDataParserListener streamDataParserWillProvideContentKeyRequestInitializationData:forTrackID:]): Deleted.

  • platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm:

Drive-by fix: Only throw an error from keyRequestTimerFired() if the underlying call to
generateKeyRequest() returned an error, rather than just failed to create a message.

  • Modules/encryptedmedia/MediaKeySession.cpp:

(WebCore::MediaKeySession::keyRequestTimerFired):

Drive-by fix: Pass the CDMSessionClient into CDM::createSession() so that it is immediately available
in the CDMSessionPrivate constructor, rather than setting the client immediately after construction.

  • Modules/encryptedmedia/CDM.cpp:

(WebCore::CDM::createSession):

  • Modules/encryptedmedia/CDM.h:
  • Modules/encryptedmedia/CDMPrivate.h:
  • Modules/encryptedmedia/CDMPrivateClearKey.cpp:

(WebCore::CDMPrivateClearKey::createSession):

  • Modules/encryptedmedia/CDMPrivateClearKey.h:
  • Modules/encryptedmedia/CDMPrivateMediaPlayer.cpp:

(WebCore::CDMPrivateMediaPlayer::createSession):

  • Modules/encryptedmedia/CDMPrivateMediaPlayer.h:
  • Modules/encryptedmedia/CDMSessionClearKey.cpp:

(WebCore::CDMSessionClearKey::CDMSessionClearKey):

  • Modules/encryptedmedia/CDMSessionClearKey.h:
  • Modules/encryptedmedia/MediaKeySession.cpp:

(WebCore::MediaKeySession::MediaKeySession):

  • platform/graphics/CDMSession.h:
  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::createSession):

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

(WebCore::MediaPlayerPrivateInterface::createSession):

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::createSession):

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:

(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::cdmSession):

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:

(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setCDMSession):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::keyNeeded): Deleted.

  • testing/MockCDM.cpp:

(WebCore::MockCDM::createSession):
(WebCore::MockCDMSession::MockCDMSession):

  • testing/MockCDM.h:

Add new files to the project:

  • WebCore.xcodeproj/project.pbxproj:
2:38 PM Changeset in webkit [193478] by matthew_hanson@apple.com
  • 18 edits
    7 adds in branches/safari-601-branch

Merge r191452. rdar://problem/23732400

2:38 PM Changeset in webkit [193477] by matthew_hanson@apple.com
  • 4 edits in branches/safari-601-branch/Source/JavaScriptCore

Merge r192190. rdar://problem/23732407

2:38 PM Changeset in webkit [193476] by matthew_hanson@apple.com
  • 3 edits in branches/safari-601-branch/Source/WebKit2

Merge r191409. rdar://problem/23732400

2:38 PM Changeset in webkit [193475] by matthew_hanson@apple.com
  • 17 edits in branches/safari-601-branch/Source/WebKit2

Merge r191309. rdar://problem/23732400

2:38 PM Changeset in webkit [193474] by matthew_hanson@apple.com
  • 5 edits
    3 adds in branches/safari-601-branch

Merge r191072. rdar://problem/23732400

2:38 PM Changeset in webkit [193473] by matthew_hanson@apple.com
  • 4 edits
    2 adds in branches/safari-601-branch

Merge r190595. rdar://problem/23732402

2:37 PM Changeset in webkit [193472] by matthew_hanson@apple.com
  • 8 edits
    2 adds in branches/safari-601-branch

Merge r190446. rdar://problem/23732367

2:28 PM Changeset in webkit [193471] by mark.lam@apple.com
  • 14 edits
    7 adds in trunk/Source/JavaScriptCore

Snippefy bitwise operators for the baseline JIT.
https://bugs.webkit.org/show_bug.cgi?id=151680

Reviewed by Geoffrey Garen.

This patch has passed the JSC tests on x86 and x86_64. It has also passed the
layout tests on x86_64.

With the DFG enabled, perf is neutral on x86_64 and x86.
With the DFG disabled on x86_64, some AsmBench tests are showing progressions e.g.

gcc-loops.cpp 1.0269x faster
stepanov_container.cpp 1.0180x faster

With the DFG disabled on x86, perf is neutral.

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::moveValueRegs):
(JSC::AssemblyHelpers::branchIfNotInt32):

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

(JSC::JIT::emitBitwiseBinaryOpFastPath):

  • Template for the bitwise operations.

(JSC::JIT::emit_op_bitand):
(JSC::JIT::emit_op_bitor):
(JSC::JIT::emit_op_bitxor):

  • Specializes emitBitwiseBinaryOpFastPath() with the respective snippet generators.

(JSC::JIT::emitSlow_op_bitand):
(JSC::JIT::emitSlow_op_bitor):
(JSC::JIT::emitSlow_op_bitxor):

  • Implement respective slow paths.
  • jit/JITArithmetic32_64.cpp:

(JSC::JIT::emit_op_bitand): Deleted.
(JSC::JIT::emitSlow_op_bitand): Deleted.
(JSC::JIT::emit_op_bitor): Deleted.
(JSC::JIT::emitSlow_op_bitor): Deleted.
(JSC::JIT::emit_op_bitxor): Deleted.
(JSC::JIT::emitSlow_op_bitxor): Deleted.

  • Now unified with the 64-bit version using snippets.
  • jit/JITBitAndGenerator.cpp: Added.

(JSC::JITBitAndGenerator::generateFastPath):

  • jit/JITBitAndGenerator.h: Added.

(JSC::JITBitAndGenerator::JITBitAndGenerator):

  • jit/JITBitOrGenerator.cpp: Added.

(JSC::JITBitOrGenerator::generateFastPath):

  • jit/JITBitOrGenerator.h: Added.

(JSC::JITBitOrGenerator::JITBitOrGenerator):

  • jit/JITBitXorGenerator.cpp: Added.

(JSC::JITBitXorGenerator::generateFastPath):

  • jit/JITBitXorGenerator.h: Added.

(JSC::JITBitXorGenerator::JITBitXorGenerator):

  • jit/JITBitwiseBinaryOpGenerator.h: Added.

(JSC::JITBitwiseBinaryOpGenerator::JITBitwiseBinaryOpGenerator):
(JSC::JITBitwiseBinaryOpGenerator::didEmitFastPath):
(JSC::JITBitwiseBinaryOpGenerator::endJumpList):
(JSC::JITBitwiseBinaryOpGenerator::slowPathJumpList):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_bitxor): Deleted.
(JSC::JIT::emit_op_bitor): Deleted.
(JSC::JIT::emitSlow_op_bitxor): Deleted.
(JSC::JIT::emitSlow_op_bitor): Deleted.

  • jit/SnippetOperand.h:

(JSC::SnippetOperand::SnippetOperand):

  • tests/stress/op_bitand.js:
  • tests/stress/op_bitor.js:
  • tests/stress/op_bitxor.js:
  • Fix a test value typo: it's supposed to be 0x7fffffff, not 0x7ffffff.
2:25 PM Changeset in webkit [193470] by fpizlo@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Having a bad time has a really awful time when it runs at the same time as the JIT
https://bugs.webkit.org/show_bug.cgi?id=151882
rdar://problem/23547038

Reviewed by Geoffrey Garen.

The DFG's use of watchpoints for havingABadTime goes back a long time. We introduced this feature
when we first introduced watchpoints. That left it open to a lot of bitrot. On top of that, this
code doesn't get tested much because having a bad time is not something that is really supposed to
happen.

Well, now I've got reports that it does happen - or at least, we know that it is because of
crashes in an assertion that could only be triggered if a bad time was had. In the meantime, we
added two new features without adequately testing havingABadTime: concurrent JIT and FTL.
Concurrency means that we have to worry about the havingABadTime watchpoint triggering during
compilation. FTL means that we have new code and new optimizations that needs to deal with this
feature correctly.

The bug can arise via race condition or just goofy profiling. As in the newly added test, we could
first profile an allocation thinking that it will allocate sane arrays. Then we might have a bad
time, and then compile that function with the FTL. The ByteCodeParser will represent the
allocation with a NewArray node that has a sane indexingType(). But when we go to lower the Node,
we observe that the Structure* that the JSGlobalObject tells us to use has a different indexing
type. This is a feature of havingABadTime that the DFG knew about, but the FTL didn't. The FTL
didn't know about it because we didn't have adequate tests, and this code rarely gets triggered in
the wild. So, the FTL had a silly assertion that the indexing types match. They absolutely don't
have to match.

There is another bug, a race condition, that remains even if we remove the bad assertion. We set
the havingABadTime watchpoint late in compilation, and we do it based on whether the watchpoint is
still OK. This means that we could parse a function before we have a bad time and then do
optimizations (for example in AbstractInterpreter) like proving that the structure set associated
with the value returned by the NewArray is the one with a sane indexing type. Then, after those
optimizations have already been done, we will go to set the watchpoint. But just as we are doing
this, we could haveABadTime on the main thread. Currently this sort of almost works because
having a bad time requires doing a GC, and we can't GC until the watchpoint collection phase. But
that feels too fragile. So, this phase moves the setting of the watchpoint to the FixupPhase. This
is consistent with our long-term goal of removing the WatchpointCollectionPhase. Moving this to
FixupPhase means that we set the watchpoint before doing any optimizations. So, if having a bad
time happens before the FixupPhase then all optimizations will agree that we're having a bad time
and so everything is fine; if we have a bad time after FixupPhase then we will cancel the
compilation anyway.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleConstantInternalFunction):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::watchHavingABadTime):
(JSC::DFG::FixupPhase::createToString):

  • dfg/DFGNode.h:

(JSC::DFG::Node::hasIndexingType):
(JSC::DFG::Node::indexingType):

  • dfg/DFGWatchpointCollectionPhase.cpp:

(JSC::DFG::WatchpointCollectionPhase::handle):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::compileNewArray):
(JSC::FTL::DFG::LowerDFGToLLVM::compileNewArrayBuffer):

  • tests/stress/ftl-has-a-bad-time.js: Added.
2:15 PM Changeset in webkit [193469] by timothy@apple.com
  • 3 edits in branches/safari-601-branch/Source/WebInspectorUI

<rdar://problem/23764741> REGRESSION: Recording does not show the progress till the recording is stopped.

Fix a merge issue where variable names did not match and was causing an exception.

  • UserInterface/Models/ScriptTimelineRecord.js:
  • UserInterface/Views/TimelineRecordTreeElement.js:

(WebInspector.TimelineRecordTreeElement):

1:57 PM Changeset in webkit [193468] by Antti Koivisto
  • 8 edits
    2 moves in trunk/Source/WebKit2

Rename WebResourceLoadScheduler to WebLoaderStrategy
https://bugs.webkit.org/show_bug.cgi?id=151854

Reviewed by Anders Carlsson.

It implements WebCore::LoaderStrategy and doesn't do any scheduling.

  • CMakeLists.txt:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/Network/NetworkProcessConnection.cpp:

(WebKit::NetworkProcessConnection::didReceiveMessage):

  • WebProcess/Network/WebLoaderStrategy.cpp: Copied from Source/WebKit2/WebProcess/Network/WebResourceLoadScheduler.cpp.

(WebKit::WebLoaderStrategy::WebLoaderStrategy):
(WebKit::WebLoaderStrategy::~WebLoaderStrategy):
(WebKit::WebLoaderStrategy::loadResource):
(WebKit::WebLoaderStrategy::schedulePluginStreamLoad):
(WebKit::maximumBufferingTime):
(WebKit::WebLoaderStrategy::scheduleLoad):
(WebKit::WebLoaderStrategy::scheduleInternallyFailedLoad):
(WebKit::WebLoaderStrategy::internallyFailedLoadTimerFired):
(WebKit::WebLoaderStrategy::startLocalLoad):
(WebKit::WebLoaderStrategy::remove):
(WebKit::WebLoaderStrategy::setDefersLoading):
(WebKit::WebLoaderStrategy::crossOriginRedirectReceived):
(WebKit::WebLoaderStrategy::servePendingRequests):
(WebKit::WebLoaderStrategy::suspendPendingRequests):
(WebKit::WebLoaderStrategy::resumePendingRequests):
(WebKit::WebLoaderStrategy::networkProcessCrashed):
(WebKit::WebLoaderStrategy::loadResourceSynchronously):
(WebKit::WebLoaderStrategy::createPingHandle):
(WebKit::WebResourceLoadScheduler::WebResourceLoadScheduler): Deleted.
(WebKit::WebResourceLoadScheduler::~WebResourceLoadScheduler): Deleted.
(WebKit::WebResourceLoadScheduler::loadResource): Deleted.
(WebKit::WebResourceLoadScheduler::schedulePluginStreamLoad): Deleted.
(WebKit::WebResourceLoadScheduler::scheduleLoad): Deleted.
(WebKit::WebResourceLoadScheduler::scheduleInternallyFailedLoad): Deleted.
(WebKit::WebResourceLoadScheduler::internallyFailedLoadTimerFired): Deleted.
(WebKit::WebResourceLoadScheduler::startLocalLoad): Deleted.
(WebKit::WebResourceLoadScheduler::remove): Deleted.
(WebKit::WebResourceLoadScheduler::setDefersLoading): Deleted.
(WebKit::WebResourceLoadScheduler::crossOriginRedirectReceived): Deleted.
(WebKit::WebResourceLoadScheduler::servePendingRequests): Deleted.
(WebKit::WebResourceLoadScheduler::suspendPendingRequests): Deleted.
(WebKit::WebResourceLoadScheduler::resumePendingRequests): Deleted.
(WebKit::WebResourceLoadScheduler::networkProcessCrashed): Deleted.
(WebKit::WebResourceLoadScheduler::loadResourceSynchronously): Deleted.
(WebKit::WebResourceLoadScheduler::createPingHandle): Deleted.

  • WebProcess/Network/WebLoaderStrategy.h: Copied from Source/WebKit2/WebProcess/Network/WebResourceLoadScheduler.h.

(WebKit::WebLoaderStrategy::webResourceLoaderForIdentifier):
(WebKit::WebResourceLoadScheduler::webResourceLoaderForIdentifier): Deleted.

  • WebProcess/Network/WebResourceLoadScheduler.cpp: Removed.
  • WebProcess/Network/WebResourceLoadScheduler.h: Removed.
  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::Stream::start):
(WebKit::PluginView::Stream::cancel):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::createLoaderStrategy):
(WebKit::WebPlatformStrategies::createPasteboardStrategy):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::initializeWebProcess):
(WebKit::WebProcess::networkProcessConnectionClosed):
(WebKit::WebProcess::webLoaderStrategy):
(WebKit::WebProcess::webResourceLoadScheduler): Deleted.

  • WebProcess/WebProcess.h:
1:01 PM Changeset in webkit [193467] by timothy@apple.com
  • 2 edits in branches/safari-601-branch/Source/JavaScriptCore

Merge r192391. rdar://problem/23221163

1:01 PM Changeset in webkit [193466] by timothy@apple.com
  • 2 edits in branches/safari-601-branch/Source/JavaScriptCore

Merge r191397. rdar://problem/23221163

1:01 PM Changeset in webkit [193465] by timothy@apple.com
  • 2 edits in branches/safari-601-branch/Source/JavaScriptCore

Merge r188976. rdar://problem/23221163

1:01 PM Changeset in webkit [193464] by timothy@apple.com
  • 2 edits in branches/safari-601-branch/Source/JavaScriptCore

Merge r188656. rdar://problem/23221163

1:01 PM Changeset in webkit [193463] by timothy@apple.com
  • 5 edits in branches/safari-601-branch

Merge r187897. rdar://problem/23221163

12:54 PM Changeset in webkit [193462] by timothy@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/JavaScriptCore

Merge r192391. rdar://problem/23581597

12:54 PM Changeset in webkit [193461] by timothy@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/JavaScriptCore

Merge r191397. rdar://problem/23581597

12:54 PM Changeset in webkit [193460] by timothy@apple.com
  • 10 edits
    2 adds in branches/safari-601.1.46-branch

Merge r191355. rdar://problem/23581597

12:54 PM Changeset in webkit [193459] by timothy@apple.com
  • 7 edits in branches/safari-601.1.46-branch/Source/JavaScriptCore

Merge r190542. rdar://problem/23581597

12:54 PM Changeset in webkit [193458] by timothy@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/JavaScriptCore

Merge r189415. rdar://problem/23581597

12:54 PM Changeset in webkit [193457] by timothy@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/JavaScriptCore

Merge r188976. rdar://problem/23581597

12:54 PM Changeset in webkit [193456] by timothy@apple.com
  • 22 edits in branches/safari-601.1.46-branch/Source/JavaScriptCore

Merge r188965. rdar://problem/23581597

12:53 PM Changeset in webkit [193455] by timothy@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/JavaScriptCore

Merge r188897. rdar://problem/23581597

12:53 PM Changeset in webkit [193454] by timothy@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/JavaScriptCore

Merge r188656. rdar://problem/23581597

12:53 PM Changeset in webkit [193453] by timothy@apple.com
  • 7 edits in branches/safari-601.1.46-branch

Merge r188403. rdar://problem/23581597

12:53 PM Changeset in webkit [193452] by timothy@apple.com
  • 5 edits in branches/safari-601.1.46-branch

Merge r187897. rdar://problem/23581597

12:53 PM Changeset in webkit [193451] by timothy@apple.com
  • 4 edits
    3 adds in branches/safari-601.1.46-branch

Merge r192592. rdar://problem/23581597

12:53 PM Changeset in webkit [193450] by timothy@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r192585. rdar://problem/23581597

12:53 PM Changeset in webkit [193449] by timothy@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r188222. rdar://problem/23581597

12:53 PM Changeset in webkit [193448] by timothy@apple.com
  • 4 edits
    2 adds
    2 deletes in branches/safari-601.1.46-branch

Merge r186891. rdar://problem/23581597

12:53 PM Changeset in webkit [193447] by timothy@apple.com
  • 11 edits in branches/safari-601.1.46-branch/Source

Merge r191967. rdar://problem/23581597

12:52 PM Changeset in webkit [193446] by timothy@apple.com
  • 10 edits in branches/safari-601.1.46-branch/Source

Merge r191732. rdar://problem/23581597

12:52 PM Changeset in webkit [193445] by timothy@apple.com
  • 14 edits in branches/safari-601.1.46-branch/Source

Merge r191651. rdar://problem/23581597

12:52 PM Changeset in webkit [193444] by timothy@apple.com
  • 15 edits
    4 adds in branches/safari-601.1.46-branch

Merge r189104. rdar://problem/23581597

12:52 PM Changeset in webkit [193443] by timothy@apple.com
  • 17 edits
    11 adds in branches/safari-601.1.46-branch

Merge r189002. rdar://problem/23581597

12:52 PM Changeset in webkit [193442] by timothy@apple.com
  • 17 edits
    4 adds in branches/safari-601.1.46-branch

Merge r188631. rdar://problem/23581597

12:51 PM Changeset in webkit [193441] by timothy@apple.com
  • 25 edits
    6 adds in branches/safari-601.1.46-branch

Merge r187496. rdar://problem/23581597

12:51 PM Changeset in webkit [193440] by timothy@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r188227. rdar://problem/23581597

12:51 PM Changeset in webkit [193439] by timothy@apple.com
  • 17 edits
    2 adds in branches/safari-601.1.46-branch

Merge r187249. rdar://problem/23581597

12:51 PM Changeset in webkit [193438] by timothy@apple.com
  • 9 edits
    2 adds in branches/safari-601.1.46-branch

Merge r187211. rdar://problem/23581597

12:32 PM Changeset in webkit [193437] by commit-queue@webkit.org
  • 5 edits in trunk/Source/JavaScriptCore

[JSC] Use Div and ChillDiv in FTL(B3)Output
https://bugs.webkit.org/show_bug.cgi?id=151844

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-12-04
Reviewed by Geoffrey Garen.

I copied part of the code of compileArithDiv()
to create a new function FTLOutput::childDiv().

With childDiv() being a concept of FTLOutput,
FTLB3Output was updated accordingly.

  • ftl/FTLB3Output.h:

(JSC::FTL::Output::div):
(JSC::FTL::Output::chillDiv):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::compileArithDiv):

  • ftl/FTLOutput.cpp:

(JSC::FTL::Output::chillDiv):

  • ftl/FTLOutput.h:
12:31 PM Changeset in webkit [193436] by commit-queue@webkit.org
  • 4 edits in trunk/Source/JavaScriptCore

[JSC] Extend the strength reduction of B3's BitAnd with booleans
https://bugs.webkit.org/show_bug.cgi?id=151852

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-12-04
Reviewed by Saam Barati.

1) Masking a boolean with any pattern that has the lsb set

remains a boolean.

2) ReduceStrength on that particular pattern of BitAnd.

  • b3/B3ReduceStrength.cpp:
  • b3/B3Value.cpp:

(JSC::B3::Value::returnsBool):

  • b3/testb3.cpp:

(JSC::B3::testBitAndWithMaskReturnsBooleans):
(JSC::B3::run):

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

[JSC] Add doubleRem() to FTLB3Output
https://bugs.webkit.org/show_bug.cgi?id=151851

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-12-04
Reviewed by Geoffrey Garen.

  • ftl/FTLB3Output.h:

(JSC::FTL::Output::doubleRem):

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

[JSC] Add signExt() to FTLB3Output
https://bugs.webkit.org/show_bug.cgi?id=151853

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-12-04
Reviewed by Geoffrey Garen.

Rename signExt() to signExt32To64(). This is just to separate
it explicitly from the remaining signExt() used inside FTLOutput.

Then use the SExt32 for implementing that in B3.

  • ftl/FTLB3Output.h:

(JSC::FTL::Output::signExt32To64):
(JSC::FTL::Output::signExt): Deleted.

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::compileInt52Rep):
(JSC::FTL::DFG::LowerDFGToLLVM::compileGetDirectPname):
(JSC::FTL::DFG::LowerDFGToLLVM::strictInt52ToInt32):
(JSC::FTL::DFG::LowerDFGToLLVM::strictInt52ToJSValue):
(JSC::FTL::DFG::LowerDFGToLLVM::jsValueToStrictInt52):

  • ftl/FTLOutput.h:

(JSC::FTL::Output::signExt32To64):
(JSC::FTL::Output::signExt):

12:15 PM Changeset in webkit [193433] by beidson@apple.com
  • 4 edits in trunk

Modern IDB: storage/indexeddb/cursor-update.html fails.
https://bugs.webkit.org/show_bug.cgi?id=151879

Reviewed by Oliver Hunt.

Source/WebCore:

No new tests (At least one failing test now passes).

  • Modules/indexeddb/client/IDBRequestImpl.cpp:

(WebCore::IDBClient::IDBRequest::IDBRequest):

LayoutTests:

  • platform/mac-wk1/TestExpectations:
11:53 AM Changeset in webkit [193432] by BJ Burg
  • 15 edits in trunk/Source/WebInspectorUI

Web Inspector: support runtime registration of tab type associations
https://bugs.webkit.org/show_bug.cgi?id=151594

Reviewed by Joseph Pecoraro.

We want to add special tabs that only exist in engineering builds
for debugging purposes. Though the relevant models and views can be
put in the Debug/ directory to exclude them from production builds,
there's no way to register tabs conditionally at runtime; tabs are
hardcoded.

This patch makes it possible to register new tab types at runtime.
First, WebInspector keeps a map of known, registered tab classes.
Details that were hardcoded before---whether to show in New Tab,
whether a tab can be instantiated given the active domains, UI text,
etc.---are now static methods on the base TabContentView or overidden
in its subclasses. Lastly, a public method allows code in Bootstrap.js
to register tabs at runtime. Doing so sends a notification so the
NewTabContentView can show the newly available tab item.

  • UserInterface/Base/Main.js:

(WebInspector.contentLoaded):
(WebInspector.isTabTypeAllowed):
(WebInspector.knownTabClasses): Added, used by NewTabContentView.
(WebInspector._createTabContentViewForType): Renamed from _tabContentViewForType.
(WebInspector._rememberOpenTabs):
(WebInspector._updateNewTabButtonState):
(WebInspector._tryToRestorePendingTabs): Added.

Whenever a new tab is registered, try to restore pending tabs, since
an extra tab won't be added initially when production tabs are added.
But, it could have been saved in the Setting for opened tabs.

(WebInspector.showNewTabTab):
(WebInspector.isNewTabWithTypeAllowed):
(WebInspector.createNewTabWithType):
(WebInspector._tabContentViewForType): Deleted.

  • UserInterface/Base/Object.js:
  • UserInterface/Views/ConsoleTabContentView.js:

(WebInspector.ConsoleTabContentView):
(WebInspector.ConsoleTabContentView.tabInfo): Added.

  • UserInterface/Views/DebuggerTabContentView.js:

(WebInspector.DebuggerTabContentView):
(WebInspector.DebuggerTabContentView.tabInfo): Added.

  • UserInterface/Views/ElementsTabContentView.js:

(WebInspector.ElementsTabContentView):
(WebInspector.ElementsTabContentView.tabInfo): Added.
(WebInspector.ElementsTabContentView.isTabAllowed): Added.

  • UserInterface/Views/NetworkTabContentView.js:

(WebInspector.NetworkTabContentView):
(WebInspector.NetworkTabContentView.tabInfo): Added.
(WebInspector.NetworkTabContentView.isTabAllowed): Added.

  • UserInterface/Views/NewTabContentView.js:

Keep a list of shown tab items, so we don't have to query the DOM
to update enabled/disabled state. Put tree construction inside a
layout() override and dirty the view whenever known tab types change.

(WebInspector.NewTabContentView):
(WebInspector.NewTabContentView.tabInfo): Added.
(WebInspector.NewTabContentView.isEphemeral): Added.
(WebInspector.NewTabContentView.shouldSaveTab): Added.
(WebInspector.NewTabContentView.prototype.layout): Added.
(WebInspector.NewTabContentView.prototype._updateShownTabs): Added.
(WebInspector.NewTabContentView.prototype._allowableTabTypes):
(WebInspector.NewTabContentView.prototype._updateTabItems):
(WebInspector.NewTabContentView.prototype.get tabItemElements): Deleted.

  • UserInterface/Views/ResourcesTabContentView.js:

(WebInspector.ResourcesTabContentView):
(WebInspector.ResourcesTabContentView.tabInfo): Added.

  • UserInterface/Views/SearchTabContentView.js:

(WebInspector.SearchTabContentView):
(WebInspector.SearchTabContentView.tabInfo): Added.
(WebInspector.SearchTabContentView.isEphemeral): Added.

  • UserInterface/Views/SettingsTabContentView.js:

(WebInspector.SettingsTabContentView.isTabAllowed): Added.
(WebInspector.SettingsTabContentView.shouldSaveTab): Added.

  • UserInterface/Views/StorageTabContentView.js:

(WebInspector.StorageTabContentView):
(WebInspector.StorageTabContentView.tabInfo): Added.
(WebInspector.StorageTabContentView.isTabAllowed): Added.

  • UserInterface/Views/TabBrowser.js:

(WebInspector.TabBrowser.showTabForContentView):

Add a workaround for <https://webkit.org/b/151876>. This bug is
revealed by the changes to NewTabContentView in this patch.

  • UserInterface/Views/TabContentView.js:

(WebInspector.TabContentView.isTabAllowed): Added.
(WebInspector.TabContentView.isEphemeral): Added.
(WebInspector.TabContentView.shouldSaveTab): Added.

  • UserInterface/Views/TimelineTabContentView.js:

(WebInspector.TimelineTabContentView):
(WebInspector.TimelineTabContentView.tabInfo): Added.
(WebInspector.TimelineTabContentView.isTabAllowed): Added.

11:41 AM Changeset in webkit [193431] by beidson@apple.com
  • 6 edits
    2 adds in trunk

Modern IDB: storage/indexeddb/version-change-exclusive.html fails
https://bugs.webkit.org/show_bug.cgi?id=151870

Reviewed by Alex Christensen.

Source/WebCore:

Test: storage/indexeddb/modern/double-open.html

storage/indexeddb/version-change-exclusive.html

  • Modules/indexeddb/server/UniqueIDBDatabase.cpp:

(WebCore::IDBServer::UniqueIDBDatabase::openDatabaseConnection): Delay handling open operations

while the first is still in progress.

(WebCore::IDBServer::UniqueIDBDatabase::didOpenBackingStore):

  • Modules/indexeddb/server/UniqueIDBDatabase.h:

LayoutTests:

  • platform/mac-wk1/TestExpectations:
  • storage/indexeddb/modern/double-open-expected.txt: Added.
  • storage/indexeddb/modern/double-open.html: Added.
  • storage/indexeddb/version-change-exclusive-expected.txt:
11:23 AM Changeset in webkit [193430] by Jon Davis
  • 2 edits in trunk/Websites/webkit.org

Added redirects for old webkit.org archive.

  • .htaccess:
11:20 AM Changeset in webkit [193429] by Jon Davis
  • 1 edit
    9 deletes in trunk/Websites/webkit.org

Removing empty directories from the old site.

Reviewed by Timothy Hatcher.

  • blog: Removed.
  • blog/wp-admin: Removed.
  • blog/wp-admin/css: Removed.
  • blog/wp-admin/css/colors: Removed.
  • blog/wp-admin/css/colors/blue: Removed.
  • blog/wp-admin/css/colors/coffee: Removed.
  • blog/wp-admin/css/colors/ectoplasm: Removed.
  • blog/wp-admin/css/colors/light: Removed.
  • blog/wp-admin/css/colors/midnight: Removed.
  • blog/wp-admin/css/colors/ocean: Removed.
  • blog/wp-admin/css/colors/sunrise: Removed.
  • blog/wp-admin/images: Removed.
  • blog/wp-admin/includes: Removed.
  • blog/wp-admin/js: Removed.
  • blog/wp-admin/maint: Removed.
  • blog/wp-admin/network: Removed.
  • blog/wp-admin/user: Removed.
  • blog/wp-content: Removed.
  • blog/wp-content/plugins: Removed.
  • blog/wp-content/plugins/akismet: Removed.
  • blog/wp-content/themes: Removed.
  • blog/wp-content/themes/classic: Removed.
  • blog/wp-content/themes/default: Removed.
  • blog/wp-content/themes/default/images: Removed.
  • blog/wp-content/themes/webkit: Removed.
  • blog/wp-content/uploads: Removed.
  • blog/wp-content/uploads/2007: Removed.
  • blog/wp-content/uploads/2007/06: Removed.
  • blog/wp-includes: Removed.
  • blog/wp-includes/ID3: Removed.
  • blog/wp-includes/SimplePie: Removed.
  • blog/wp-includes/SimplePie/Cache: Removed.
  • blog/wp-includes/SimplePie/Content: Removed.
  • blog/wp-includes/SimplePie/Content/Type: Removed.
  • blog/wp-includes/SimplePie/Decode: Removed.
  • blog/wp-includes/SimplePie/Decode/HTML: Removed.
  • blog/wp-includes/SimplePie/HTTP: Removed.
  • blog/wp-includes/SimplePie/Net: Removed.
  • blog/wp-includes/SimplePie/Parse: Removed.
  • blog/wp-includes/SimplePie/XML: Removed.
  • blog/wp-includes/SimplePie/XML/Declaration: Removed.
  • blog/wp-includes/Text: Removed.
  • blog/wp-includes/Text/Diff: Removed.
  • blog/wp-includes/Text/Diff/Engine: Removed.
  • blog/wp-includes/Text/Diff/Renderer: Removed.
  • blog/wp-includes/certificates: Removed.
  • blog/wp-includes/css: Removed.
  • blog/wp-includes/fonts: Removed.
  • blog/wp-includes/images: Removed.
  • blog/wp-includes/images/crystal: Removed.
  • blog/wp-includes/images/media: Removed.
  • blog/wp-includes/images/smilies: Removed.
  • blog/wp-includes/images/wlw: Removed.
  • blog/wp-includes/js: Removed.
  • blog/wp-includes/js/crop: Removed.
  • blog/wp-includes/js/imgareaselect: Removed.
  • blog/wp-includes/js/jcrop: Removed.
  • blog/wp-includes/js/jquery: Removed.
  • blog/wp-includes/js/jquery/ui: Removed.
  • blog/wp-includes/js/mediaelement: Removed.
  • blog/wp-includes/js/plupload: Removed.
  • blog/wp-includes/js/scriptaculous: Removed.
  • blog/wp-includes/js/swfupload: Removed.
  • blog/wp-includes/js/swfupload/plugins: Removed.
  • blog/wp-includes/js/thickbox: Removed.
  • blog/wp-includes/js/tinymce: Removed.
  • blog/wp-includes/js/tinymce/langs: Removed.
  • blog/wp-includes/js/tinymce/plugins: Removed.
  • blog/wp-includes/js/tinymce/plugins/charmap: Removed.
  • blog/wp-includes/js/tinymce/plugins/colorpicker: Removed.
  • blog/wp-includes/js/tinymce/plugins/compat3x: Removed.
  • blog/wp-includes/js/tinymce/plugins/compat3x/css: Removed.
  • blog/wp-includes/js/tinymce/plugins/directionality: Removed.
  • blog/wp-includes/js/tinymce/plugins/fullscreen: Removed.
  • blog/wp-includes/js/tinymce/plugins/hr: Removed.
  • blog/wp-includes/js/tinymce/plugins/image: Removed.
  • blog/wp-includes/js/tinymce/plugins/inlinepopups: Removed.
  • blog/wp-includes/js/tinymce/plugins/inlinepopups/skins: Removed.
  • blog/wp-includes/js/tinymce/plugins/inlinepopups/skins/clearlooks2: Removed.
  • blog/wp-includes/js/tinymce/plugins/inlinepopups/skins/clearlooks2/img: Removed.
  • blog/wp-includes/js/tinymce/plugins/lists: Removed.
  • blog/wp-includes/js/tinymce/plugins/media: Removed.
  • blog/wp-includes/js/tinymce/plugins/media/css: Removed.
  • blog/wp-includes/js/tinymce/plugins/media/js: Removed.
  • blog/wp-includes/js/tinymce/plugins/paste: Removed.
  • blog/wp-includes/js/tinymce/plugins/paste/js: Removed.
  • blog/wp-includes/js/tinymce/plugins/spellchecker: Removed.
  • blog/wp-includes/js/tinymce/plugins/spellchecker/classes: Removed.
  • blog/wp-includes/js/tinymce/plugins/spellchecker/classes/utils: Removed.
  • blog/wp-includes/js/tinymce/plugins/spellchecker/css: Removed.
  • blog/wp-includes/js/tinymce/plugins/spellchecker/img: Removed.
  • blog/wp-includes/js/tinymce/plugins/spellchecker/includes: Removed.
  • blog/wp-includes/js/tinymce/plugins/tabfocus: Removed.
  • blog/wp-includes/js/tinymce/plugins/textcolor: Removed.
  • blog/wp-includes/js/tinymce/plugins/wordpress: Removed.
  • blog/wp-includes/js/tinymce/plugins/wordpress/css: Removed.
  • blog/wp-includes/js/tinymce/plugins/wordpress/img: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpautoresize: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpdialogs: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpdialogs/js: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpeditimage: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpeditimage/css: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpeditimage/img: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpeditimage/js: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpemoji: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpfullscreen: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpfullscreen/css: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpgallery: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpgallery/img: Removed.
  • blog/wp-includes/js/tinymce/plugins/wplink: Removed.
  • blog/wp-includes/js/tinymce/plugins/wplink/css: Removed.
  • blog/wp-includes/js/tinymce/plugins/wplink/img: Removed.
  • blog/wp-includes/js/tinymce/plugins/wplink/js: Removed.
  • blog/wp-includes/js/tinymce/plugins/wpview: Removed.
  • blog/wp-includes/js/tinymce/skins: Removed.
  • blog/wp-includes/js/tinymce/skins/lightgray: Removed.
  • blog/wp-includes/js/tinymce/skins/lightgray/fonts: Removed.
  • blog/wp-includes/js/tinymce/skins/lightgray/img: Removed.
  • blog/wp-includes/js/tinymce/skins/wordpress: Removed.
  • blog/wp-includes/js/tinymce/skins/wordpress/images: Removed.
  • blog/wp-includes/js/tinymce/themes: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/img: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/js: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/skins: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/skins/default: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/skins/default/img: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/skins/highcontrast: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/skins/o2k7: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/skins/o2k7/img: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/skins/wp_theme: Removed.
  • blog/wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img: Removed.
  • blog/wp-includes/js/tinymce/themes/modern: Removed.
  • blog/wp-includes/js/tinymce/utils: Removed.
  • blog/wp-includes/pomo: Removed.
  • blog/wp-includes/theme-compat: Removed.
  • building: Removed.
  • coding: Removed.
  • coding/images: Removed.
  • css: Removed.
  • images: Removed.
  • misc: Removed.
  • misc/DatabaseExample.html: Removed.
  • misc/DatabaseTester.html: Removed.
  • misc/WebKitDetect.html: Removed.
  • misc/WebKitDetect.js: Removed.
  • misc/drosera: Removed.
  • misc/drosera/demo.js: Removed.
  • misc/drosera/drosera.png: Removed.
  • misc/drosera/index.html: Removed.
  • misc/gradient-input.html: Removed.
  • misc/morph.html: Removed.
  • misc/related-target-and-shadow-dom.svg: Removed.
  • projects: Removed.
  • projects/accessibility: Removed.
  • projects/cleanup: Removed.
  • projects/compat: Removed.
  • projects/css: Removed.
  • projects/documentation: Removed.
  • projects/dom: Removed.
  • projects/editing: Removed.
  • projects/forms: Removed.
  • projects/html: Removed.
  • projects/javascript: Removed.
  • projects/layout: Removed.
  • projects/mathml: Removed.
  • projects/performance: Removed.
  • projects/plugins: Removed.
  • projects/portability: Removed.
  • projects/printing: Removed.
  • projects/svg: Removed.
  • projects/webkit: Removed.
  • projects/xml: Removed.
  • projects/xslt: Removed.
  • quality: Removed.
  • security: Removed.
11:07 AM Changeset in webkit [193428] by beidson@apple.com
  • 74 edits
    19 copies
    35 adds in trunk

Modern IDB: storage/indexeddb/exceptions.html fails.
https://bugs.webkit.org/show_bug.cgi?id=151732

Reviewed by Alex Christensen.

Source/WebCore:

No new tests (At least one failing test now passes).

  • Lots of customized exception messages for IDB code to match the text expectations.
  • Updates to the test expectations where we can't/won't match them exactly.
  • And a couple of little required behavior changes exposed by the test
  • Modules/indexeddb/IDBCursor.h:
  • Modules/indexeddb/IDBCursor.idl:
  • Modules/indexeddb/IDBDatabase.h:
  • Modules/indexeddb/IDBDatabase.idl:
  • Modules/indexeddb/IDBDatabaseException.cpp:

(WebCore::IDBDatabaseException::initializeDescription):

  • Modules/indexeddb/IDBFactory.h:
  • Modules/indexeddb/IDBFactory.idl:
  • Modules/indexeddb/IDBIndex.h:
  • Modules/indexeddb/IDBIndex.idl:
  • Modules/indexeddb/IDBObjectStore.h:
  • Modules/indexeddb/IDBObjectStore.idl:
  • Modules/indexeddb/IDBRequest.h:
  • Modules/indexeddb/IDBRequest.idl:
  • Modules/indexeddb/IDBTransaction.h:
  • Modules/indexeddb/IDBTransaction.idl:
  • Modules/indexeddb/client/IDBCursorImpl.cpp:

(WebCore::IDBClient::IDBCursor::update):
(WebCore::IDBClient::IDBCursor::advance):
(WebCore::IDBClient::IDBCursor::continueFunction):
(WebCore::IDBClient::IDBCursor::deleteFunction):

  • Modules/indexeddb/client/IDBCursorImpl.h:
  • Modules/indexeddb/client/IDBDatabaseImpl.cpp:

(WebCore::IDBClient::IDBDatabase::createObjectStore):
(WebCore::IDBClient::IDBDatabase::transaction):
(WebCore::IDBClient::IDBDatabase::deleteObjectStore):

  • Modules/indexeddb/client/IDBDatabaseImpl.h:
  • Modules/indexeddb/client/IDBFactoryImpl.cpp:

(WebCore::IDBClient::IDBFactory::cmp):

  • Modules/indexeddb/client/IDBFactoryImpl.h:
  • Modules/indexeddb/client/IDBIndexImpl.cpp:

(WebCore::IDBClient::IDBIndex::openCursor):
(WebCore::IDBClient::IDBIndex::count):
(WebCore::IDBClient::IDBIndex::doCount):
(WebCore::IDBClient::IDBIndex::openKeyCursor):
(WebCore::IDBClient::IDBIndex::get):
(WebCore::IDBClient::IDBIndex::doGet):
(WebCore::IDBClient::IDBIndex::getKey):
(WebCore::IDBClient::IDBIndex::doGetKey):

  • Modules/indexeddb/client/IDBIndexImpl.h:
  • Modules/indexeddb/client/IDBObjectStoreImpl.cpp:

(WebCore::IDBClient::IDBObjectStore::openCursor):
(WebCore::IDBClient::IDBObjectStore::get):
(WebCore::IDBClient::IDBObjectStore::add):
(WebCore::IDBClient::IDBObjectStore::put):
(WebCore::IDBClient::IDBObjectStore::putForCursorUpdate):
(WebCore::IDBClient::IDBObjectStore::putOrAdd):
(WebCore::IDBClient::IDBObjectStore::deleteFunction):
(WebCore::IDBClient::IDBObjectStore::clear):
(WebCore::IDBClient::IDBObjectStore::createIndex):
(WebCore::IDBClient::IDBObjectStore::index):
(WebCore::IDBClient::IDBObjectStore::deleteIndex):
(WebCore::IDBClient::IDBObjectStore::count):
(WebCore::IDBClient::IDBObjectStore::doCount):

  • Modules/indexeddb/client/IDBObjectStoreImpl.h:
  • Modules/indexeddb/client/IDBRequestImpl.cpp:

(WebCore::IDBClient::IDBRequest::result):
(WebCore::IDBClient::IDBRequest::error):

  • Modules/indexeddb/client/IDBRequestImpl.h:
  • Modules/indexeddb/client/IDBTransactionImpl.cpp:

(WebCore::IDBClient::IDBTransaction::objectStore):
(WebCore::IDBClient::IDBTransaction::abortDueToFailedRequest):
(WebCore::IDBClient::IDBTransaction::abort):

  • Modules/indexeddb/client/IDBTransactionImpl.h:
  • Modules/indexeddb/legacy/LegacyCursor.cpp:

(WebCore::LegacyCursor::update):
(WebCore::LegacyCursor::continueFunction):
(WebCore::LegacyCursor::deleteFunction):

  • Modules/indexeddb/legacy/LegacyCursor.h:
  • Modules/indexeddb/legacy/LegacyDatabase.cpp:

(WebCore::LegacyDatabase::createObjectStore):
(WebCore::LegacyDatabase::deleteObjectStore):
(WebCore::LegacyDatabase::transaction):
(WebCore::LegacyDatabase::forceClose):

  • Modules/indexeddb/legacy/LegacyDatabase.h:
  • Modules/indexeddb/legacy/LegacyFactory.cpp:

(WebCore::LegacyFactory::cmp):

  • Modules/indexeddb/legacy/LegacyFactory.h:
  • Modules/indexeddb/legacy/LegacyIndex.cpp:

(WebCore::LegacyIndex::openCursor):
(WebCore::LegacyIndex::count):
(WebCore::LegacyIndex::openKeyCursor):
(WebCore::LegacyIndex::get):
(WebCore::LegacyIndex::getKey):

  • Modules/indexeddb/legacy/LegacyIndex.h:
  • Modules/indexeddb/legacy/LegacyObjectStore.cpp:

(WebCore::LegacyObjectStore::get):
(WebCore::LegacyObjectStore::add):
(WebCore::LegacyObjectStore::put):
(WebCore::LegacyObjectStore::deleteFunction):
(WebCore::LegacyObjectStore::clear):
(WebCore::LegacyObjectStore::createIndex):
(WebCore::LegacyObjectStore::index):
(WebCore::LegacyObjectStore::deleteIndex):
(WebCore::LegacyObjectStore::openCursor):
(WebCore::LegacyObjectStore::count):

  • Modules/indexeddb/legacy/LegacyObjectStore.h:

(WebCore::LegacyObjectStore::createIndex):
(WebCore::LegacyObjectStore::count):

  • Modules/indexeddb/legacy/LegacyRequest.cpp:

(WebCore::LegacyRequest::result):
(WebCore::LegacyRequest::error):
(WebCore::LegacyRequest::dispatchEvent):
(WebCore::LegacyRequest::uncaughtExceptionInEventHandler):

  • Modules/indexeddb/legacy/LegacyRequest.h:
  • Modules/indexeddb/legacy/LegacyTransaction.cpp:

(WebCore::LegacyTransaction::objectStore):
(WebCore::LegacyTransaction::abort):
(WebCore::LegacyTransaction::stop):

  • Modules/indexeddb/legacy/LegacyTransaction.h:
  • bindings/js/JSDOMBinding.cpp:

(WebCore::createDOMException): For IDBDatabase exceptions, use createWithDescriptionAsMessage

  • bindings/js/JSIDBDatabaseCustom.cpp:

(WebCore::JSIDBDatabase::createObjectStore):
(WebCore::JSIDBDatabase::transaction):

  • bindings/js/JSIDBObjectStoreCustom.cpp:

(WebCore::putOrAdd):
(WebCore::JSIDBObjectStore::createIndex):

  • dom/DOMCoreException.h:

(WebCore::DOMCoreException::createWithDescriptionAsMessage): Create an exception whose message

is the description.

(WebCore::DOMCoreException::DOMCoreException):

  • dom/ExceptionBase.cpp:

(WebCore::ExceptionBase::ExceptionBase): Add a flag to determine where the message comes from

  • dom/ExceptionBase.h:
  • dom/make_dom_exceptions.pl:

(generateHeader): Add an IDBDatabaseException type

  • inspector/InspectorIndexedDBAgent.cpp:

LayoutTests:

Lots of new wk2-specific expectations to keep Legacy IDB passing for now.

  • platform/mac-wk1/TestExpectations:
  • platform/wk2/imported/w3c/indexeddb/idbcursor_continue_index5-expected.txt: Added.
  • platform/wk2/imported/w3c/indexeddb/idbcursor_continue_index6-expected.txt: Added.
  • platform/wk2/imported/w3c/indexeddb/idbcursor_continue_invalid-expected.txt: Added.
  • platform/wk2/imported/w3c/indexeddb/idbindex_get7-expected.txt: Added.
  • platform/wk2/imported/w3c/indexeddb/idbindex_getKey7-expected.txt: Added.
  • platform/wk2/imported/w3c/indexeddb/idbindex_openCursor2-expected.txt: Added.
  • platform/wk2/imported/w3c/indexeddb/idbindex_openKeyCursor3-expected.txt: Added.
  • platform/wk2/imported/w3c/indexeddb/keypath-expected.txt: Added.
  • platform/wk2/storage/indexeddb/aborted-versionchange-closes-expected.txt: Copied from LayoutTests/storage/indexeddb/aborted-versionchange-closes-expected.txt.
  • platform/wk2/storage/indexeddb/bad-keypath-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/bad-keypath-expected.txt.
  • platform/wk2/storage/indexeddb/basics-expected.txt: Copied from LayoutTests/storage/indexeddb/basics-expected.txt.
  • platform/wk2/storage/indexeddb/clear-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/clear-expected.txt.
  • platform/wk2/storage/indexeddb/create-and-remove-object-store-expected.txt: Copied from LayoutTests/storage/indexeddb/create-and-remove-object-store-expected.txt.
  • platform/wk2/storage/indexeddb/create-objectstore-basics-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/create-objectstore-basics-expected.txt.
  • platform/wk2/storage/indexeddb/cursor-continue-dir-expected.txt: Added.
  • platform/wk2/storage/indexeddb/cursor-continue-expected.txt: Added.
  • platform/wk2/storage/indexeddb/cursor-finished-expected.txt: Copied from LayoutTests/storage/indexeddb/cursor-finished-expected.txt.
  • platform/wk2/storage/indexeddb/cursors-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/cursors-expected.txt.
  • platform/wk2/storage/indexeddb/database-basics-expected.txt: Added.
  • platform/wk2/storage/indexeddb/deleteIndex-bug110792-expected.txt: Added.
  • platform/wk2/storage/indexeddb/index-count-expected.txt: Added.
  • platform/wk2/storage/indexeddb/intversion-close-in-oncomplete-expected.txt: Added.
  • platform/wk2/storage/indexeddb/intversion-close-in-upgradeneeded-expected.txt: Added.
  • platform/wk2/storage/indexeddb/invalid-keys-expected.txt: Added.
  • platform/wk2/storage/indexeddb/key-requirements-delete-null-key-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/key-requirements-delete-null-key-expected.txt.
  • platform/wk2/storage/indexeddb/key-requirements-inline-and-passed-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/key-requirements-inline-and-passed-expected.txt.
  • platform/wk2/storage/indexeddb/key-requirements-put-no-key-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/key-requirements-put-no-key-expected.txt.
  • platform/wk2/storage/indexeddb/key-requirements-put-null-key-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/key-requirements-put-null-key-expected.txt.
  • platform/wk2/storage/indexeddb/key-type-array-expected.txt: Added.
  • platform/wk2/storage/indexeddb/keypath-arrays-expected.txt: Added.
  • platform/wk2/storage/indexeddb/keypath-edges-expected.txt: Added.
  • platform/wk2/storage/indexeddb/keyrange-expected.txt: Added.
  • platform/wk2/storage/indexeddb/mozilla/clear-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/clear-expected.txt.
  • platform/wk2/storage/indexeddb/mozilla/create-objectstore-basics-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/create-objectstore-basics-expected.txt.
  • platform/wk2/storage/indexeddb/mozilla/cursors-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/cursors-expected.txt.
  • platform/wk2/storage/indexeddb/mozilla/key-requirements-delete-null-key-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/key-requirements-delete-null-key-expected.txt.
  • platform/wk2/storage/indexeddb/mozilla/readonly-transactions-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/readonly-transactions-expected.txt.
  • platform/wk2/storage/indexeddb/object-lookups-in-versionchange-expected.txt: Added.
  • platform/wk2/storage/indexeddb/objectstore-count-expected.txt: Added.
  • platform/wk2/storage/indexeddb/open-cursor-expected.txt: Added.
  • platform/wk2/storage/indexeddb/readonly-transactions-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/readonly-transactions-expected.txt.
  • platform/wk2/storage/indexeddb/removed-expected.txt: Added.
  • platform/wk2/storage/indexeddb/request-result-cache-expected.txt: Added.
  • platform/wk2/storage/indexeddb/transaction-abort-expected.txt: Copied from LayoutTests/storage/indexeddb/transaction-abort-expected.txt.
  • platform/wk2/storage/indexeddb/transaction-active-flag-expected.txt: Added.
  • platform/wk2/storage/indexeddb/transaction-after-close-expected.txt: Added.
  • platform/wk2/storage/indexeddb/transaction-read-only-expected.txt: Added.
  • platform/wk2/storage/indexeddb/version-change-exclusive-expected.txt: Added.
  • storage/indexeddb/aborted-versionchange-closes-expected.txt:
  • storage/indexeddb/basics-expected.txt:
  • storage/indexeddb/create-and-remove-object-store-expected.txt:
  • storage/indexeddb/cursor-finished-expected.txt:
  • storage/indexeddb/exceptions-expected.txt:
  • storage/indexeddb/modern/createobjectstore-failures-expected.txt:
  • storage/indexeddb/modern/double-abort-expected.txt:
  • storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures-expected.txt:
  • storage/indexeddb/modern/idbdatabase-transaction-failures-expected.txt:
  • storage/indexeddb/mozilla/bad-keypath-expected.txt:
  • storage/indexeddb/mozilla/clear-expected.txt:
  • storage/indexeddb/mozilla/create-objectstore-basics-expected.txt:
  • storage/indexeddb/mozilla/cursors-expected.txt:
  • storage/indexeddb/mozilla/key-requirements-delete-null-key-expected.txt:
  • storage/indexeddb/mozilla/key-requirements-inline-and-passed-expected.txt:
  • storage/indexeddb/mozilla/key-requirements-put-no-key-expected.txt:
  • storage/indexeddb/mozilla/key-requirements-put-null-key-expected.txt:
  • storage/indexeddb/mozilla/readonly-transactions-expected.txt:
  • storage/indexeddb/resources/exceptions.js:

(testObjectStore):

  • storage/indexeddb/transaction-abort-expected.txt:
10:50 AM Changeset in webkit [193427] by Joseph Pecoraro
  • 6 edits in trunk

Web Inspector: Unskip many inspector/debugger tests
https://bugs.webkit.org/show_bug.cgi?id=151843

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

  • bindings/ScriptFunctionCall.cpp:

(Deprecated::ScriptFunctionCall::call):
Ignore TerminationExceptions, as those aren't real execution
exceptions and may be seen on Workers that have closed.

LayoutTests:

Skip specific tests.

  • platform/mac-wk2/TestExpectations:

Test no longer existed.

  • inspector/debugger/resources/exception.js:

(exceptionDOM):
Keep the code outputing a NotFoundException. This particular
invocation was recently changed to throw a TypeError.

10:50 AM Changeset in webkit [193426] by Joseph Pecoraro
  • 48 edits
    19 deletes in trunk

Web Inspector: Remove untested and unused Worker inspection
https://bugs.webkit.org/show_bug.cgi?id=151848

Reviewed by Brian Burg.

Source/JavaScriptCore:

  • CMakeLists.txt:
  • DerivedSources.make:
  • debugger/Debugger.cpp:

(JSC::Debugger::Debugger):
(JSC::Debugger::willExecuteProgram):

  • debugger/Debugger.h:
  • inspector/JSGlobalObjectScriptDebugServer.cpp:

(Inspector::JSGlobalObjectScriptDebugServer::JSGlobalObjectScriptDebugServer):

  • inspector/ScriptDebugServer.cpp:

(Inspector::ScriptDebugServer::ScriptDebugServer):

  • inspector/ScriptDebugServer.h:
  • inspector/agents/InspectorConsoleAgent.h:
  • inspector/agents/InspectorRuntimeAgent.cpp:

(Inspector::InspectorRuntimeAgent::run): Deleted.

  • inspector/agents/InspectorRuntimeAgent.h:
  • inspector/agents/JSGlobalObjectConsoleAgent.h:
  • inspector/protocol/Runtime.json:
  • inspector/protocol/Worker.json: Removed.

Source/WebCore:

  • CMakeLists.txt:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/WorkerScriptController.cpp:
  • bindings/js/WorkerScriptDebugServer.cpp: Removed.
  • bindings/js/WorkerScriptDebugServer.h: Removed.
  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorConsoleInstrumentation.h:

(WebCore::InspectorInstrumentation::addMessageToConsole):

  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController): Deleted.

  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::shouldPauseDedicatedWorkerOnStartImpl): Deleted.
(WebCore::InspectorInstrumentation::didStartWorkerGlobalScopeImpl): Deleted.
(WebCore::InspectorInstrumentation::willEvaluateWorkerScript): Deleted.
(WebCore::InspectorInstrumentation::workerGlobalScopeTerminatedImpl): Deleted.
(WebCore::InspectorInstrumentation::instrumentingAgentsForWorkerGlobalScope): Deleted.
(WebCore::InspectorInstrumentation::instrumentingAgentsForNonDocumentContext): Deleted.

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::instrumentingAgentsForContext):
(WebCore::InspectorInstrumentation::shouldPauseDedicatedWorkerOnStart): Deleted.
(WebCore::InspectorInstrumentation::didStartWorkerGlobalScope): Deleted.
(WebCore::InspectorInstrumentation::workerGlobalScopeTerminated): Deleted.

  • inspector/InspectorTimelineAgent.h:
  • inspector/InspectorWebAgentBase.h:

(WebCore::WorkerAgentContext::WorkerAgentContext): Deleted.

  • inspector/InspectorWorkerAgent.cpp: Removed.
  • inspector/InspectorWorkerAgent.h: Removed.
  • inspector/InspectorWorkerResource.h: Removed.
  • inspector/InstrumentingAgents.cpp:

(WebCore::InstrumentingAgents::reset): Deleted.

  • inspector/InstrumentingAgents.h:

(WebCore::InstrumentingAgents::workerRuntimeAgent): Deleted.
(WebCore::InstrumentingAgents::setWorkerRuntimeAgent): Deleted.
(WebCore::InstrumentingAgents::inspectorWorkerAgent): Deleted.
(WebCore::InstrumentingAgents::setInspectorWorkerAgent): Deleted.

  • inspector/PageConsoleAgent.h:
  • inspector/PageScriptDebugServer.cpp:

(WebCore::PageScriptDebugServer::PageScriptDebugServer):

  • inspector/WorkerConsoleAgent.cpp: Removed.
  • inspector/WorkerConsoleAgent.h: Removed.
  • inspector/WorkerDebuggerAgent.cpp: Removed.
  • inspector/WorkerDebuggerAgent.h: Removed.
  • inspector/WorkerInspectorController.cpp: Removed.
  • inspector/WorkerInspectorController.h: Removed.
  • inspector/WorkerRuntimeAgent.cpp: Removed.
  • inspector/WorkerRuntimeAgent.h: Removed.
  • workers/Worker.cpp:

(WebCore::Worker::notifyFinished): Deleted.

  • workers/WorkerGlobalScope.cpp:

(WebCore::WorkerGlobalScope::WorkerGlobalScope): Deleted.
(WebCore::WorkerGlobalScope::~WorkerGlobalScope): Deleted.

  • workers/WorkerGlobalScope.h:

(WebCore::WorkerGlobalScope::workerInspectorController): Deleted.

  • workers/WorkerGlobalScopeProxy.h:

(WebCore::WorkerGlobalScopeProxy::PageInspector::~PageInspector): Deleted.
(WebCore::WorkerGlobalScopeProxy::connectToInspector): Deleted.
(WebCore::WorkerGlobalScopeProxy::disconnectFromInspector): Deleted.
(WebCore::WorkerGlobalScopeProxy::sendMessageToInspector): Deleted.

  • workers/WorkerMessagingProxy.cpp:

(WebCore::WorkerMessagingProxy::WorkerMessagingProxy): Deleted.
(WebCore::WorkerMessagingProxy::startWorkerGlobalScope): Deleted.
(WebCore::WorkerMessagingProxy::connectToInspector): Deleted.
(WebCore::WorkerMessagingProxy::disconnectFromInspector): Deleted.
(WebCore::WorkerMessagingProxy::sendMessageToInspector): Deleted.
(WebCore::WorkerMessagingProxy::workerGlobalScopeDestroyedInternal): Deleted.
(WebCore::WorkerMessagingProxy::terminateWorkerGlobalScope): Deleted.
(WebCore::WorkerMessagingProxy::postMessageToPageInspector): Deleted.

  • workers/WorkerMessagingProxy.h:
  • workers/WorkerReportingProxy.h:
  • workers/WorkerThread.cpp:

(WebCore::WorkerThread::workerThread): Deleted.

Source/WebInspectorUI:

  • UserInterface/Protocol/Legacy/7.0/InspectorBackendCommands.js:
  • UserInterface/Protocol/Legacy/8.0/InspectorBackendCommands.js:
  • UserInterface/Protocol/Legacy/9.0/InspectorBackendCommands.js:
  • Versions/Inspector-iOS-7.0.json:
  • Versions/Inspector-iOS-8.0.json:
  • Versions/Inspector-iOS-9.0.json:

Since this was untested in older releases as well, remove
the protocol interfaces for legacy versions.

LayoutTests:

  • inspector/debugger/pause-dedicated-worker-expected.txt: Removed.
  • inspector/debugger/pause-dedicated-worker.html: Removed.
  • inspector/debugger/resources/dedicated-worker.js: Removed.
  • inspector/debugger/terminate-dedicated-worker-while-paused-expected.txt: Removed.
  • inspector/debugger/terminate-dedicated-worker-while-paused.html: Removed.
10:49 AM Changeset in webkit [193425] by Joseph Pecoraro
  • 15 edits in trunk

Web Inspector: Specifically Identify the Global Lexical Environment Scope
https://bugs.webkit.org/show_bug.cgi?id=151828

Reviewed by Brian Burg.

Source/JavaScriptCore:

  • inspector/InjectedScriptSource.js:

Include the new scope type.

  • inspector/JSJavaScriptCallFrame.h:
  • inspector/JSJavaScriptCallFrame.cpp:

(Inspector::JSJavaScriptCallFrame::scopeType):
Set the new value for the new scope type.

  • inspector/JSJavaScriptCallFramePrototype.cpp:

(Inspector::JSJavaScriptCallFramePrototype::finishCreation): Deleted.
(Inspector::jsJavaScriptCallFrameConstantGLOBAL_SCOPE): Deleted.
(Inspector::jsJavaScriptCallFrameConstantLOCAL_SCOPE): Deleted.
(Inspector::jsJavaScriptCallFrameConstantWITH_SCOPE): Deleted.
(Inspector::jsJavaScriptCallFrameConstantCLOSURE_SCOPE): Deleted.
(Inspector::jsJavaScriptCallFrameConstantCATCH_SCOPE): Deleted.
(Inspector::jsJavaScriptCallFrameConstantFUNCTION_NAME_SCOPE): Deleted.
Remove unused constants on the JavaScriptCallFrame object.
Currently they are just hardcoded in InjectedScriptSource
and they don't make sense on instances anyways.

Source/WebInspectorUI:

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Controllers/DebuggerManager.js:

(WebInspector.DebuggerManager.prototype._scopeChainNodeFromPayload):

  • UserInterface/Models/ScopeChainNode.js:
  • UserInterface/Views/ScopeChainDetailsSidebarPanel.js:

(WebInspector.ScopeChainDetailsSidebarPanel.prototype._generateCallFramesSection):
Include a new scope type and give it a localized string.

LayoutTests:

  • inspector/debugger/breakpoint-scope-expected.txt:
  • inspector/debugger/breakpoint-scope.html:
  • inspector/debugger/resources/scope.js:

Update the test to include something in the global lexical
environment and ensure it is identified as such.

10:45 AM Changeset in webkit [193424] by keith_miller@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Add an option to emit instructions validating exceptions in the DFG rather than always emiting them.
https://bugs.webkit.org/show_bug.cgi?id=151841

Reviewed by Saam Barati.

Add a new option that validates the DFG execption checking. The default value for the option is
true in Debug builds and false in Release builds. Additionally, renamed jitAssertNoException to
jitReleaseAssertNoException for consistency with our ASSERT naming convention.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileCurrentBlock):

  • jit/AssemblyHelpers.cpp:

(JSC::AssemblyHelpers::jitReleaseAssertNoException):
(JSC::AssemblyHelpers::jitAssertNoException): Deleted.

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::jitAssertNoException): Deleted.

  • runtime/Options.cpp:

(JSC::recomputeDependentOptions):

  • runtime/Options.h:
10:08 AM Changeset in webkit [193423] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

Fix the !ENABLE(DFG_JIT) build after r190735
https://bugs.webkit.org/show_bug.cgi?id=151617

Reviewed by Filip Pizlo.

  • jit/GCAwareJITStubRoutine.cpp:

(JSC::GCAwareJITStubRoutineWithExceptionHandler::observeZeroRefCount):

9:11 AM Changeset in webkit [193422] by matthew_hanson@apple.com
  • 79 edits
    2 copies
    1 add in branches/safari-601-branch

Merge r188647. rdar://problem/23732386

9:10 AM Changeset in webkit [193421] by matthew_hanson@apple.com
  • 18 edits
    4 adds in branches/safari-601-branch

Merge r188530. rdar://problem/23732374

9:10 AM Changeset in webkit [193420] by matthew_hanson@apple.com
  • 8 edits
    5 adds in branches/safari-601-branch

Merge r188514. rdar://problem/23732374

9:10 AM Changeset in webkit [193419] by matthew_hanson@apple.com
  • 18 edits
    4 adds in branches/safari-601-branch

Merge r188512. rdar://problem/23732374

9:10 AM Changeset in webkit [193418] by matthew_hanson@apple.com
  • 5 edits
    2 adds in branches/safari-601-branch

Merge r190383. rdar://problem/23732393

9:10 AM Changeset in webkit [193417] by matthew_hanson@apple.com
  • 3 edits in branches/safari-601-branch/Source/WebCore

Merge r189427. rdar://problem/23732393

9:10 AM Changeset in webkit [193416] by matthew_hanson@apple.com
  • 10 edits in branches/safari-601-branch

Merge r188194. rdar://problem/23732393

5:16 AM Changeset in webkit [193415] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

[cmake] Fix the B3 build after r192946
https://bugs.webkit.org/show_bug.cgi?id=151857

Reviewed by Michael Saboff.

  • CMakeLists.txt:
5:01 AM Changeset in webkit [193414] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

[AArch64] Typo fix after r189575
https://bugs.webkit.org/show_bug.cgi?id=151855

Reviewed by Michael Saboff.

  • ftl/FTLUnwindInfo.cpp:

(JSC::FTL::parseUnwindInfo):

3:14 AM Changeset in webkit [193413] by svillar@igalia.com
  • 3 edits
    2 adds in trunk

[css-grid] Fix height computation of grid items with borders inside fr tracks
https://bugs.webkit.org/show_bug.cgi?id=151798

Reviewed by Zalan Bujtas.

Source/WebCore:

Since r192154 we run a second pass of the track sizing
algorithm whenever the height of the grid is indefinite in
order to properly compute row sizes. The available space
passed to the track sizing algorithm must not contain neither
borders nor paddings, otherwise it will think that it has more
space available than the existing one. We should use the
height of the content box instead.

Test: fast/css-grid-layout/grid-item-with-border-in-fr.html

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::layoutBlock):

LayoutTests:

  • fast/css-grid-layout/grid-item-with-border-in-fr-expected.txt: Added.
  • fast/css-grid-layout/grid-item-with-border-in-fr.html: Added.
Note: See TracTimeline for information about the timeline view.