Timeline



Dec 28, 2013:

5:36 PM Changeset in webkit [161115] by akling@apple.com
  • 5 edits
    1 add in trunk/Source/WebCore

Add an owning smart pointer for RenderObjects and start using it.
<https://webkit.org/b/126251>

This patch adds a RenderPtr pointer, essentially an OwnPtr for
RenderObjects. The difference is that RenderPtr destroys the object
by calling destroy() on it.

This is necessary to implement the willBeDestroyed() mechanism in
RenderObject that notifies renderers just before they are about to
be deleted, while they can still do tree traversal, etc.

I also added a make_unique-alike helper so you can write:

auto renderer = createRenderObject<RenderImage>(...);

Put it all to use by making ContentData::createRenderer() return
RenderPtr<RenderObject> instead of raw RenderObject*.

Reviewed by Antti Koivisto.

1:20 PM Changeset in webkit [161114] by weinig@apple.com
  • 11 edits
    2 moves in trunk/Source

Move FilterIterator and IteratorPair to WTF and reimplement HashMap::keys() and HashMap::values() using IteratorPair
https://bugs.webkit.org/show_bug.cgi?id=126253

Reviewed by Anders Carlsson.

../WebKit2:

  • Shared/APIArray.h:

Update includes and make elementsOfType() a bit easier to read by using a typedef and some
judicial indentation.

  • Shared/FilterIterator.h: Moved to WTF.
  • Shared/IteratorPair.h: Moved to WTF.


  • WebKit2.xcodeproj/project.pbxproj:

Remove the two files.

../WTF:

  • GNUmakefile.list.am:
  • WTF.vcxproj/WTF.vcxproj:
  • WTF.vcxproj/WTF.vcxproj.filters:
  • WTF.xcodeproj/project.pbxproj:
  • wtf/CMakeLists.txt:

Add new files.

  • wtf/HashMap.h:
  • wtf/RefPtrHashMap.h:

Remove the old implementation of keys() and values() and replace it with one
that uses IteratorPair.

  • wtf/FilterIterator.h: Copied from Source/WebKit2/Shared/FilterIterator.h.
  • wtf/IteratorPair.h: Copied from Source/WebKit2/Shared/IteratorPair.h.
4:33 AM Changeset in webkit [161113] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Add a missing include path for GTK
https://bugs.webkit.org/show_bug.cgi?id=126257

Reviewed by Philippe Normand.

  • GNUmakefile.am:
2:18 AM Changeset in webkit [161112] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebKit2

[WK2][SOUP] Fix handling of cookies when network process is enabled
https://bugs.webkit.org/show_bug.cgi?id=125576

Patch by Kwang Yul Seo <skyul@company100.net> on 2013-12-28
Reviewed by Carlos Garcia Campos.

Initialize the network process with cookie accept policy, persistent
storage path and type. Use
WebContext::sendToNetworkingProcessRelaunchingIfNecessary instead of
WebContext::sendToAllProcessesRelaunchingThemIfNecessary to send
SetCookiePersistentStorage message.

  • NetworkProcess/soup/NetworkProcessSoup.cpp:

(WebKit::NetworkProcess::platformInitializeNetworkProcess):

  • Shared/Network/NetworkProcessCreationParameters.cpp:

(WebKit::NetworkProcessCreationParameters::encode):
(WebKit::NetworkProcessCreationParameters::decode):

  • Shared/Network/NetworkProcessCreationParameters.h:
  • UIProcess/soup/WebContextSoup.cpp:

(WebKit::WebContext::platformInitializeNetworkProcess):

  • UIProcess/soup/WebCookieManagerProxySoup.cpp:

(WebKit::WebCookieManagerProxy::setCookiePersistentStorage):

  • WebProcess/soup/WebProcessSoup.cpp:

(WebKit::WebProcess::platformInitializeWebProcess):

2:07 AM Changeset in webkit [161111] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

Unreviewed. Update GObject DOM symbols file after r160733.

  • bindings/gobject/webkitdom.symbols:
12:56 AM Changeset in webkit [161110] by commit-queue@webkit.org
  • 2 edits in trunk

[GTK] Fix release builds with NetworkProcess enabled
https://bugs.webkit.org/show_bug.cgi?id=126247

Patch by Giovanni Campagna <gcampagna@src.gnome.org> on 2013-12-28
Reviewed by Carlos Garcia Campos.

  • Source/autotools/symbols.filter:
12:36 AM Changeset in webkit [161109] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

[GTK] Downloads are broken with the network process enabled
https://bugs.webkit.org/show_bug.cgi?id=126131

Reviewed by Martin Robinson.

The problem is that the network process crashes when trying to
convert the handle to a download, because at that point the
download has finished and the handle is NULL. This happens because
we are not implementing ResourceHandle::continueDidReceiveResponse().

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::nextMultipartResponsePartCallback): Call
continueAfterDidReceiveResponse() when not using async callbacks.
(WebCore::sendRequestCallback): Ditto.
(WebCore::continueAfterDidReceiveResponse): Helper function that
continues the load after didReceiveResponse.
(WebCore::ResourceHandle::continueDidReceiveResponse): Call
continueAfterDidReceiveResponse().

Dec 27, 2013:

2:05 PM Changeset in webkit [161108] by dbates@webkit.org
  • 3 edits in trunk/Source/WebCore

Another attempt to fix the Windows build after <http://trac.webkit.org/changeset/161106>
(https://bugs.webkit.org/show_bug.cgi?id=126180)

  • WebCore.vcxproj/WebCore.vcxproj.filters: Add files platform/audio/{AudioSession, AudioSessionListener}.h
  • WebCore.vcxproj/WebCoreCommon.props: Add directory WebCore/platform/audio to the list of

include directories.

1:44 PM Changeset in webkit [161107] by dbates@webkit.org
  • 2 edits in trunk/Source/WebCore

Attempt to fix the Windows build after <http://trac.webkit.org/changeset/161106>
(https://bugs.webkit.org/show_bug.cgi?id=126180)

Add files platform/audio/AudioSession.{cpp, h} and platform/audio/AudioSessionListener.h
to the Visual Studio project. Note, the contents of these files are guarded by USE(AUDIO_SESSION),
which is only enabled on Mac and iOS at the time of writing.

I thought to try this approach to fix the build so as to avoid adding an extraneous
USE(AUDIO_SESSION)-guard around the #include "AudioSession.h" in Settings.cpp since
the contents of the file AudioSession.h is guarded by USE(AUDIO_SESSION).

  • WebCore.vcxproj/WebCore.vcxproj:
12:40 PM Changeset in webkit [161106] by dbates@webkit.org
  • 43 edits
    3 adds in trunk/Source

[iOS] Upstream WebCore/page changes
https://bugs.webkit.org/show_bug.cgi?id=126180

Reviewed by Darin Adler.

Source/WebCore:

  • WebCore.xcodeproj/project.pbxproj:
  • dom/EventNames.h:

(WebCore::EventNames::isGestureEventType): Added.

  • page/AlternativeTextClient.h: Do not define WTF_USE_DICTATION_ALTERNATIVES when building for iOS.
  • page/Chrome.cpp:

(WebCore::Chrome::Chrome):
(WebCore::Chrome::dispatchViewportPropertiesDidChange): Added; guarded by PLATFORM(IOS).
(WebCore::Chrome::setCursor): Make this an empty function when building for iOS.
(WebCore::Chrome::setCursorHiddenUntilMouseMoves): Ditto.
(WebCore::Chrome::didReceiveDocType): Added; iOS-specific.

  • page/Chrome.h:

(WebCore::Chrome::setDispatchViewportDataDidChangeSuppressed): Added; guarded by PLATFORM(IOS).

  • page/ChromeClient.h:

(WebCore::ChromeClient::didFlushCompositingLayers): Added; guarded by PLATFORM(IOS).
(WebCore::ChromeClient::fetchCustomFixedPositionLayoutRect): Added; guarded by PLATFORM(IOS).
(WebCore::ChromeClient::updateViewportConstrainedLayers): Added; guarded by PLATFORM(IOS).

  • page/DOMTimer.cpp:

(WebCore::DOMTimer::install): Added iOS-specific code.
(WebCore::DOMTimer::fired): Ditto.

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::DOMWindow): Ditto.
(WebCore::DOMWindow::innerHeight): Ditto.
(WebCore::DOMWindow::innerWidth): Ditto.
(WebCore::DOMWindow::scrollX): Ditto.
(WebCore::DOMWindow::scrollY): Ditto.
(WebCore::DOMWindow::scrollBy): Ditto.
(WebCore::DOMWindow::scrollTo): Ditto.
(WebCore::DOMWindow::clearTimeout): Ditto.
(WebCore::DOMWindow::addEventListener): Ditto.
(WebCore::DOMWindow::incrementScrollEventListenersCount): Added; guarded by PLATFORM(IOS).
(WebCore::DOMWindow::decrementScrollEventListenersCount): Added; guarded by PLATFORM(IOS).
(WebCore::DOMWindow::resetAllGeolocationPermission): Added; Also added FIXME comment.
(WebCore::DOMWindow::removeEventListener): Added iOS-specific code.
(WebCore::DOMWindow::dispatchEvent): Modified to prevent dispatching duplicate pageshow and pagehide
events per <http://www.whatwg.org/specs/web-apps/current-work/multipage/history.html#event-pageshow>.
(WebCore::DOMWindow::removeAllEventListeners): Added iOS-specific code.

  • page/DOMWindow.h:
  • page/DOMWindow.idl: Added IOS_GESTURE_EVENTS-guarded attributes: ongesture{change, end, start}. Also

added IOS_TOUCH_EVENTS-guarded attributes: {Touch, TouchList}Constructor.

  • page/EditorClient.h:
  • page/EventHandler.cpp:

(WebCore::EventHandler::EventHandler): Added iOS-specific code.
(WebCore::EventHandler::clear): Ditto.
(WebCore::EventHandler::startPanScrolling): Make this an empty function when building for iOS.
(WebCore::EventHandler::handleMousePressEvent): Modified to invalidate a click when the clicked node is
null. Also, opt out of code for updating the scrollbars as UIKit manages scrollbars on iOS.
(WebCore::EventHandler::handleMouseMoveEvent): Opt of code for updating the scrollbars and cursor when building on iOS.
(WebCore::hitTestResultInFrame): Made this a file-local static function since it's only used in EventHandler.cpp.
(WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled): Added iOS-specific code.

  • page/EventHandler.h:
  • page/FocusController.h:
  • page/Frame.cpp:

(WebCore::Frame::Frame): Added iOS-specific code.
(WebCore::Frame::scrollOverflowLayer): Added; iOS-specific.
(WebCore::Frame::overflowAutoScrollTimerFired): Added; iOS-specific.
(WebCore::Frame::startOverflowAutoScroll): Added; iOS-specific.
(WebCore::Frame::checkOverflowScroll): Added; iOS-specific.
(WebCore::Frame::willDetachPage): Added iOS-specific code.
(WebCore::Frame::createView): Ditto.
(WebCore::Frame::setSelectionChangeCallbacksDisabled): Added; iOS-specific.
(WebCore::Frame::selectionChangeCallbacksDisabled): Added; iOS-specific.

  • page/Frame.h:

(WebCore::Frame::timersPaused): Added; guarded by PLATFORM(IOS).

  • page/FrameView.cpp:

(WebCore::FrameView::FrameView): Added iOS-specific code.
(WebCore::FrameView::clear): Ditto.
(WebCore::FrameView::flushCompositingStateForThisFrame): Ditto.
(WebCore::FrameView::graphicsLayerForPlatformWidget): Added.
(WebCore::FrameView::scheduleLayerFlushAllowingThrottling): Added.
(WebCore::FrameView::layout): Added iOS-specific code.
(WebCore::countRenderedCharactersInRenderObjectWithThreshold): Added; helper function used by FrameView::renderedCharactersExceed().
Also added FIXME comment.
(WebCore::FrameView::renderedCharactersExceed): Added.
(WebCore::FrameView::visibleContentsResized): Added iOS-specific code.
(WebCore::FrameView::adjustTiledBackingCoverage): Ditto.
(WebCore::FrameView::performPostLayoutTasks): Ditto.
(WebCore::FrameView::sendResizeEventIfNeeded): Ditto.
(WebCore::FrameView::paintContents): Added iOS-specific code. Also added FIXME comments.
(WebCore::FrameView::setUseCustomFixedPositionLayoutRect): Added; iOS-specific.
(WebCore::FrameView::setCustomFixedPositionLayoutRect): Added; iOS-specific.
(WebCore::FrameView::updateFixedPositionLayoutRect): Added; iOS-specific.

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

(WebCore::Navigator::standalone): Added; iOS-specific.

  • page/Navigator.h:
  • page/Navigator.idl: Added WTF_PLATFORM_IOS-guarded attribute: standalone. Also added FIXME comment.
  • page/NavigatorBase.cpp:

(WebCore::NavigatorBase::platform): Added iOS-specific code.

  • page/Page.h:

(WebCore::Page::hasCustomHTMLTokenizerTimeDelay): Added; guarded by PLATFORM(IOS). Also added FIXME comment
to remove this method.
(WebCore::Page::customHTMLTokenizerTimeDelay): Added; guarded by PLATFORM(IOS). Also added FIXME comment
to remove this method.

  • page/PageGroup.cpp:

(WebCore::PageGroup::removeVisitedLink): Added.

  • page/PageGroup.h:
  • page/Settings.cpp:

(WebCore::Settings::Settings):
(WebCore::Settings::setScriptEnabled): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setStandalone): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setAudioSessionCategoryOverride): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::audioSessionCategoryOverride): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setNetworkDataUsageTrackingEnabled): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::networkDataUsageTrackingEnabled): Added; guarded by PLATFORM(IOS).
(WebCore::sharedNetworkInterfaceNameGlobal): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setNetworkInterfaceName): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::networkInterfaceName): Added; guarded by PLATFORM(IOS).

  • page/Settings.h:

(WebCore::Settings::setMaxParseDuration): Added; guarded by PLATFORM(IOS). Also added FIXME comment.
(WebCore::Settings::maxParseDuration): Added; guarded by PLATFORM(IOS). Also added FIXME comment.
(WebCore::Settings::standalone): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setTelephoneNumberParsingEnabled): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::telephoneNumberParsingEnabled): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setMediaDataLoadsAutomatically): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::mediaDataLoadsAutomatically): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setShouldTransformsAffectOverflow): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::shouldTransformsAffectOverflow): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setShouldDispatchJavaScriptWindowOnErrorEvents): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::shouldDispatchJavaScriptWindowOnErrorEvents): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setAlwaysUseBaselineOfPrimaryFont): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::alwaysUseBaselineOfPrimaryFont): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setAlwaysUseAcceleratedOverflowScroll): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::alwaysUseAcceleratedOverflowScroll): Added; guarded by PLATFORM(IOS).

  • page/Settings.in: Added IOS_AIRPLAY-guarded setting: mediaPlaybackAllowsAirPlay.
  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): Added iOS-specific code and FIXME comment.

  • page/ios/EventHandlerIOS.mm: Added.
  • page/ios/FrameIOS.mm: Added.
  • page/mac/ChromeMac.mm:
  • page/mac/PageMac.cpp:

(WebCore::Page::addSchedulePair): Opt out of code when building for iOS.
(WebCore::Page::removeSchedulePair): Ditto.

  • page/mac/SettingsMac.mm:

(WebCore::Settings::shouldEnableScreenFontSubstitutionByDefault): Added iOS-specific code.

  • page/mac/WebCoreFrameView.h:

Source/WebKit/ios:

  • WebCoreSupport/WebChromeClientIOS.mm: Substitute ENABLE(IOS_TOUCH_EVENTS) for ENABLE(TOUCH_EVENTS).

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebChromeClient.h:
  • WebProcess/WebCoreSupport/ios/WebChromeClientIOS.mm: Added.
  • WebProcess/WebPage/WebPage.cpp: Include header <WebCore/HitTestResult.h>.

Source/WTF:

  • wtf/FeatureDefines.h: Define ENABLE_IOS_TOUCH_EVENTS to be enabled by default

when building iOS with ENABLE(TOUCH_EVENTS).

11:46 AM Changeset in webkit [161105] by barraclough@apple.com
  • 22 edits
    1 delete in trunk

Merge PageVisibilityState & ViewState::IsVisible in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=126214

Reviewed by Alexey Proskuryakov.

WebKit2 redundantly tracks the visibility of the view through two mechanisms - the visibility
state, and the view state. Remove visibility state from the WebKit2 layer. The visibility
state also tracks the prerender state - so split this out and handle it separately (a change
we should make in WebCore, too).

Source/WebCore:

WebCore - changes the API tests exposed a bug, a view should only ever come out of the
prerender state when it becomes visible - redundant notifications that the view is still
hidden should be ignored.

  • page/Page.cpp:

(WebCore::Page::setVisibilityState):

  • ignore visibility state change to hidden, if the current state is prerender.

Source/WebKit2:

Removing the redundancy also removes the ability from the API to set a fake visibility state
(IsVisible tracks the actual visibility of the view). Through private API
(WKPageSetVisibilityState) a client could previously request the view be reported as hidden or
visible, but this didn't really work - the override was not enforced and the API may reset the
state at an arbitrary point. The mechanism is only used by testing code, which instead should
actually update the view visibility (this tests more of the actual visibility mechanisms used
by the browser). The one aspect of the API relied on by existing clients is the ability to
initialize a hidden view as prerender - continue to support this specific functionality via
WKPageSetVisibilityState, to maintain backwards compatibility.

  • WebKit2 - remove internal state that tracks page visibility separately from the view state

visibility. For backwards compatibility continue to support the WKPageSetVisibilityState API,
but only to initialize the state to prerender.

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetVisibilityState):

  • only support initializing the visibility state to prerender.
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):

  • remove m_visibilityState

(WebKit::WebPageProxy::initializeWebPage):

  • no need to send initial visibility state (this is sent as a part of the creation parameters).

(WebKit::WebPageProxy::viewStateDidChange):

  • no need to send visibility state change (this is sent as a part of view state).

(WebKit::WebPageProxy::setVisibilityStatePrerender):

  • setVisibilityState -> setVisibilityStatePrerender.
  • UIProcess/WebPageProxy.h:
    • remove m_visibilityState, setVisibilityState -> setVisibilityStatePrerender.
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):

  • added call to updateVisibilityState.

(WebKit::WebPage::setViewIsVisible):

  • added call to updateVisibilityState.

(WebKit::WebPage::updateVisibilityState):

  • previously setVisibilityState, updates the page visibility state according to the view state.

(WebKit::WebPage::setVisibilityStatePrerender):

  • set visibility state to prerender.
  • WebProcess/WebPage/WebPage.h:
    • remove m_visibilityState, setVisibilityState -> setVisibilityStatePrerender.
  • WebProcess/WebPage/WebPage.messages.in:
    • SetVisibilityState -> SetVisibilityStatePrerender.

Tools:

Tools - WebKit2 no longer (poorly) supports a fake visibility state, so to test the page
visibility mechanisms we should actually be changing characteristics of the view that will
be detected by WebKit2 as a visibility change. This affects three things:

1) On setVisibilityState WebKitTestRunner must actually change visibility of the view.
2) The 'PageVisibilityState' test in the API tests is useless (as evidenced by the fact

that page visibility has been broken in WebKit2 for a couple of months, and didn't
catch this fact). Removed in favour of:

3) 'PageVisibilityStateWithWindowChanges' - this is the good stuff. This actually tests

the visibility mechanism. Beef this test up by adding coverage for: a) the prerender

state, b) document.hidden, and c) too many state change notifications (it already looks
for too few).

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit2/PageVisibilityState.cpp: Removed.
    • Removed PageVisibilityState - this test was ineffective, API no longer supports this test, and behaviour is covered by PageVisibilityStateWithWindowChanges.
  • TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:

(-[PageVisibilityStateDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:]):
(runJavaScriptAlert):

  • Add checking for too many calls to the alert.

(TestWebKitAPI::PageVisibilityStateWithWindowChanges::setPrerender):

  • Added methods to set visibility to prerender.

(TestWebKitAPI::PageVisibilityStateWithWindowChanges::runTest):

  • Added checking of 'document.hidden'.
  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::setVisibilityState):

  • WebKitTestRunner/TestController.h:
  • WebKitTestRunner/efl/TestControllerEfl.cpp:

(WTR::TestController::setHidden):

  • WebKitTestRunner/gtk/TestControllerGtk.cpp:

(WTR::TestController::setHidden):

  • WebKitTestRunner/mac/TestControllerMac.mm:

(WTR::TestController::setHidden):

  • Add setHidden method; call this from setVisibilityState.

LayoutTests:

LayoutTests - remove test for notification on visibility state change to preerender. This test
was covering something nonsensical, and not supported by the spec - the page should never see
a visibility change to prerender, this should only be an initial state. WebKit2 API now only
allows the client to change the state to prerender without sending a notification, and there
is no sense in continuing to support the current test case, since the behaviour is neither
allowed by API nor available in web content.

The prerender state is now properly covered by API tests.

  • fast/events/page-visibility-transition-test-expected.txt:
  • fast/events/page-visibility-transition-test.html:
    • remove test for notification on visibility state change to preerender.
10:39 AM Changeset in webkit [161104] by mark.lam@apple.com
  • 9 edits in branches/jsCStack/Source/JavaScriptCore

CStack: Cosmetic: rename VM::entryScope to firstEntryScope.
https://bugs.webkit.org/show_bug.cgi?id=126266.

Not yet reviewed.

Also renamed VMEntryScope::m_prev to m_prevFirstEntryScope.

  • debugger/Debugger.cpp:

(JSC::Debugger::recompileAllJSFunctions):

  • heap/Heap.cpp:

(JSC::Heap::lastChanceToFinalize):
(JSC::Heap::deleteAllCompiledCode):

  • interpreter/CallFrame.cpp:

(JSC::CallFrame::vmEntryGlobalObject):

  • interpreter/JSStack.cpp:

(JSC::JSStack::updateStackLimit):

  • runtime/VM.cpp:

(JSC::VM::VM):
(JSC::VM::releaseExecutableMemory):

  • runtime/VM.h:
  • runtime/VMEntryScope.cpp:

(JSC::VMEntryScope::VMEntryScope):
(JSC::VMEntryScope::~VMEntryScope):

  • runtime/VMEntryScope.h:
10:08 AM Changeset in webkit [161103] by ap@apple.com
  • 2 edits in trunk/Tools

Display EWS status on bot watcher's dashboard
https://bugs.webkit.org/show_bug.cgi?id=126224

Silence spurious exceptions, no visible behavior change.

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

(EWSQueue.prototype.update): Removed code that was only needed for an experimental
feature that wasn't landed.

9:06 AM Changeset in webkit [161102] by Joseph Pecoraro
  • 2 edits in trunk/Source/WebCore

Unreviewed Windows build fix for r160946.

Add another file to the Windows InspectorAllInOne.cpp.

  • inspector/InspectorAllInOne.cpp:
2:30 AM Changeset in webkit [161101] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

[GTK] Unnecessary code is built into WebKitPluginProcess
https://bugs.webkit.org/show_bug.cgi?id=126259

Reviewed by Carlos Garcia Campos.

  • GNUmakefile.list.am: Stop building ChildProcessProxy and ProcessLauncher classes into WebKitPluginProcess.

That code is not required in the plugin process, as one would expect.

12:44 AM Changeset in webkit [161100] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] MiniBrowser scale up/down infinitely after r161087
https://bugs.webkit.org/show_bug.cgi?id=126254

Reviewed by Gyuyoung Kim.

After r161087, contentScaleFactor of WebView is synced with pageScaleFactor
of WebPage. It means that WKViewGetContentScaleFactor might not be same
with PageViewportController's current scale value until received PageScaleFactorDidChange.

  • UIProcess/efl/PageViewportControllerClientEfl.cpp:

(WebKit::PageViewportControllerClientEfl::setViewportPosition):
Use controller's current scale just to update and sync the position.

12:37 AM Changeset in webkit [161099] by ap@apple.com
  • 7 edits
    1 move
    5 adds
    2 deletes in trunk/Tools

Display EWS status on bot watcher's dashboard
https://bugs.webkit.org/show_bug.cgi?id=126224

Reviewed by Timothy Hatcher.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js: Added.

Moved platform definitions out of Buildbot.js, as they are also needed for EWS.

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

(QueueView):
(QueueView.prototype.updateSoon):
(QueueView.prototype.update):
(QueueView.prototype._updateHiddenState):
Moved auto-update and hide logic to a base class, as it equally applies to EWS.

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

This is a peer to Buildbot.js and WebKitBuildbot.js.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/EWSQueue.js: Added.
  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/EWSQueueView.js: Added.

Quite simple for now, only keeping track of queue size.

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

Initialize EWS.

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

Create EWS views.

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

Updated for Buildbot.Platform rename, it's now Dashboard.Platform.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/BuildbotBuilderQueueView.css: Removed.
  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/BuildbotQueueView.css: Removed.

These were empty, no reason to waste the time loading them.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/BuildbotTesterQueueView.css: Removed.
  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/QueueView.css: Copied from Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/BuildbotQueueView.css.

Renamed, as these styles apply to all queues, not just buildbot ones (and they have to, as columns should look alike).

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/index.html:
    • Changed page title, as it no longer displays just buildbot status.
    • Updated subresource lists for the new, renamed and removed files.
12:29 AM Changeset in webkit [161098] by ap@apple.com
  • 3 edits in trunk/Tools

EWS status JSON should include Access-Control-Allow-Origin
https://bugs.webkit.org/show_bug.cgi?id=126246

Reviewed by Ryosuke Niwa.

  • QueueStatusServer/app.yaml: Update version.
  • QueueStatusServer/handlers/queuestatusjson.py:

(QueueStatusJSON.get): Add the header field.

12:26 AM Changeset in webkit [161097] by commit-queue@webkit.org
  • 10 edits in trunk/Source/WebCore

Unreviewed, rolling out r161096.
http://trac.webkit.org/changeset/161096
https://bugs.webkit.org/show_bug.cgi?id=126256

Made lots of tests crash (Requested by ap on #webkit).

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::insertBefore):
(WebCore::ContainerNode::replaceChild):
(WebCore::willRemoveChildren):
(WebCore::ContainerNode::appendChild):

  • dom/Document.cpp:

(WebCore::Document::visibilityStateChanged):
(WebCore::Document::moveNodeIteratorsToNewDocument):
(WebCore::Document::updateRangesAfterChildrenChanged):
(WebCore::Document::nodeChildrenWillBeRemoved):
(WebCore::Document::nodeWillBeRemoved):
(WebCore::Document::textInserted):
(WebCore::Document::textRemoved):
(WebCore::Document::textNodesMerged):
(WebCore::Document::textNodeSplit):
(WebCore::Document::documentWillSuspendForPageCache):
(WebCore::Document::documentDidResumeFromPageCache):
(WebCore::Document::mediaVolumeDidChange):
(WebCore::Document::privateBrowsingStateDidChange):
(WebCore::Document::captionPreferencesChanged):
(WebCore::Document::validateAutoSizingNodes):
(WebCore::Document::resetAutoSizingNodes):
(WebCore::Document::webkitExitFullscreen):

  • dom/MutationObserver.cpp:

(WebCore::MutationObserver::disconnect):
(WebCore::MutationObserver::getObservedNodes):
(WebCore::MutationObserver::deliver):

  • dom/MutationObserverInterestGroup.cpp:

(WebCore::MutationObserverInterestGroup::isOldValueRequested):
(WebCore::MutationObserverInterestGroup::enqueueMutationRecord):

  • dom/MutationObserverRegistration.cpp:

(WebCore::MutationObserverRegistration::clearTransientRegistrations):
(WebCore::MutationObserverRegistration::addRegistrationNodesToSet):

  • dom/Node.cpp:

(WebCore::Node::dumpStatistics):
(WebCore::Document::invalidateNodeListAndCollectionCaches):
(WebCore::NodeListsNodeData::invalidateCaches):
(WebCore::Node::didMoveToNewDocument):
(WebCore::collectMatchingObserversForMutation):
(WebCore::Node::notifyMutationObserversNodeWillDetach):

  • dom/NodeRareData.h:

(WebCore::NodeListsNodeData::adoptDocument):

  • dom/ScriptExecutionContext.cpp:

(WebCore::ScriptExecutionContext::~ScriptExecutionContext):
(WebCore::ScriptExecutionContext::canSuspendActiveDOMObjects):
(WebCore::ScriptExecutionContext::suspendActiveDOMObjects):
(WebCore::ScriptExecutionContext::resumeActiveDOMObjects):
(WebCore::ScriptExecutionContext::stopActiveDOMObjects):
(WebCore::ScriptExecutionContext::closeMessagePorts):
(WebCore::ScriptExecutionContext::adjustMinimumTimerInterval):
(WebCore::ScriptExecutionContext::didChangeTimerAlignmentInterval):

  • dom/WebKitNamedFlow.cpp:

(WebCore::WebKitNamedFlow::getRegionsByContent):
(WebCore::WebKitNamedFlow::getRegions):
(WebCore::WebKitNamedFlow::getContent):

Dec 26, 2013:

6:55 PM Changeset in webkit [161096] by weinig@apple.com
  • 10 edits in trunk/Source/WebCore

Convert some of WebCore/dom over to range-for loops
https://bugs.webkit.org/show_bug.cgi?id=126250

Reviewed by Andreas Kling.

  • dom/ContainerNode.cpp:
  • dom/Document.cpp:
  • dom/MutationObserver.cpp:
  • dom/MutationObserverInterestGroup.cpp:
  • dom/MutationObserverRegistration.cpp:
  • dom/Node.cpp:
  • dom/NodeRareData.h:
  • dom/ScriptExecutionContext.cpp:
  • dom/WebKitNamedFlow.cpp:
4:21 PM Changeset in webkit [161095] by Martin Robinson
  • 4 edits in trunk/Source

Small build fix for the GTK+ CMake port

Source/WebKit/gtk:

  • tests/CMakeLists.txt: Output the WebKit1 GObject API unit tests to the proper directory

and fix the path to the generated API source.

Source/WebKit2:

  • UIProcess/API/gtk/tests/CMakeLists.txt: Make the way the output directory is specified similar

to the WebKit1 version of these tests, so that it is more difficult to inadvertently specify the
wrong directory.

3:01 PM Changeset in webkit [161094] by thiago.lacerda@openbossa.org
  • 2 edits in trunk/Source/WebCore

[Nix] Cleanup Source/WebCore/PlatformNix.cmake
https://bugs.webkit.org/show_bug.cgi?id=126226

Reviewed by Csaba Osztrogonác.

No new tests needed.

  • PlatformNix.cmake:
1:24 PM Changeset in webkit [161093] by Martin Robinson
  • 3 edits in trunk

[GTK] [CMake] Add a production build type
https://bugs.webkit.org/show_bug.cgi?id=126179

Reviewed by Daniel Bates.

  • Source/PlatformGTK.cmake: When the API tests are enabled compile the WebKit GObject

API unit tests. The inclusion of these build files was inadvertently removed in an earlier
patch.

  • Source/cmake/OptionsGTK.cmake: When in production mode turn off all tools and tests and

use the autotools linker script.

11:20 AM Changeset in webkit [161092] by ap@apple.com
  • 5 edits in trunk/Tools

Some links at build.webkit.org/dashboard don't show status messages, and aren't keyboard accessible
https://bugs.webkit.org/show_bug.cgi?id=126234

Reviewed by Timothy Hatcher.

Changed elements that are semantically links from <div> to <a>.

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

(StatusLineView): Create <a> or <div> elements conditionally on whether we have a URL.
Don't try simulate a link with CSS/JS, it's not needed any more.
(StatusLineView.prototype._clicked): Removed.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/BuildbotQueueView.css:

Removed text-decoration rules, default ones in Main.css now work for queue elements.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:

Simplified cursor rules.
Added a universal rule for links to only show underline on hover, as this is what
we want almost everywhere.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/StatusLineView.css:

(.status-line .bubble): Added text-decoration: none, as this is the one place where
we don't want it even on hover.
(.status-line .label): Force display: block for consistent layout between <a>
and <div>.

10:19 AM Changeset in webkit [161091] by Joseph Pecoraro
  • 2 edits in trunk/Source/WebCore

Unreviewed attempt at Windows build fix.

I think Window's "AllInOne.cpp" is causing a using namespace JSC
to cause naming conflicts between Inspector::TypeBuilder::Debugger::types
and JSC::types. So removing the ambiguity.

  • inspector/InjectedScript.cpp:

(WebCore::InjectedScript::getProperties):
(WebCore::InjectedScript::wrapCallFrames):

10:01 AM Changeset in webkit [161090] by ap@apple.com
  • 10 edits
    1 add in trunk/Tools

Please clarify "pending" reporting at build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=122191

Reviewed by Timothy Hatcher.

Reporting the count of pending runs didn't make a lot of sense - first, runs are
coalesced and sometimes even out of order, and second, buildbot's notion of pending
run was confusingly different from dashboard's.

Let's display how many SVN revisions are pending. This can be somewhat misleading
too, because some revisions (like those for other platforms) don't trigger builds,
but it's better than what we had.

This patch also lays the groundwork for displaying detailed information about
pending revisions.

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

(BuildbotBuilderQueueView.prototype.update.appendBuilderQueueStatus): Instead of
building pending status line directly, call newly added base class method.

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

(BuildbotTesterQueueView.prototype.update.appendBuilderQueueStatus): Ditto.

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

(BuildbotQueueView): Listen for events when new SVN revisions are landed, and update the view.
(BuildbotQueueView.prototype._appendPendingRevisionCount): Add a line for pending
SVN revisions. It uses a new style, StatusLineView.Status.NoBubble, because this
information is secondary, and doesn't need as much attention.
(BuildbotQueueView.prototype.revisionLinksForIteration): Build revisionURL through
Trac, not through Buildbot.
(BuildbotQueueView.prototype._newCommitsRecorded): Schedule an update, just like when
iterations are updated.

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

Initialize a global webkitTrac object.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/StatusLineView.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/StatusLineView.css:

Added a new style for messages without a bubble.

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

Added a model class for Trac, which keeps track of SVN timeline, and notifies
listeners of changes. It uses an RSS interface to Trac, because there is no JSON one.

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

(loadXML): Added a function to load XML asynchronouly, just like existing JSON.load.

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

Removed tracRevisionURL() function. Now that we have a Trac object, it just makes
more sense to build trac URLs through it.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/index.html:

Load Trac.js.

10:00 AM Changeset in webkit [161089] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

Make Text::createTextRenderer() take a const RenderStyle&.
<https://webkit.org/b/126136>

Nuke a FIXME about constifying a RenderStyle& local.

Reviewed by Anders Carlsson.

9:58 AM Changeset in webkit [161088] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

Move more inlines from RenderObject to RenderElement.
<https://webkit.org/b/126134>

Lift some inline functions that use style() from RenderObject over
to RenderElement, making them branchless.

Reviewed by Anders Carlsson.

7:04 AM Changeset in webkit [161087] by thiago.lacerda@openbossa.org
  • 3 edits in trunk/Source/WebKit2

[WK2][CoordinatedGraphics] Removing duplicate scale information from WebVIew.cpp
https://bugs.webkit.org/show_bug.cgi?id=126243

Reviewed by Benjamin Poulain.

The scale factor of the WebView must reflect the same information present in
WebPageProxy.
Previously, in WebView.cpp, there was a m_contentScaleFactor member, which adds
information duplication and needs to be synchronizing with pageScaleFactor in
WebPageProxy. We can avoid this by just making WebView access and set WebPageProxy's
pageScaleFactor directly.

  • UIProcess/CoordinatedGraphics/WebView.cpp:

(WebKit::WebView::WebView):
(WebKit::WebView::setContentScaleFactor):
(WebKit::WebView::transformToScene):
(WebKit::WebView::visibleContentsSize):

  • UIProcess/CoordinatedGraphics/WebView.h:

(WebKit::WebView::contentScaleFactor):

1:24 AM Changeset in webkit [161086] by ChangSeok Oh
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix after r159526.
isBoxValue is used at out of ENABLE_CSS_SHAPES gaurd. It causes a compile failure.
So I moved isBoxValue to out side of ENABLE_CSS_SHAPES.

  • css/CSSParser.cpp:

Dec 25, 2013:

11:32 PM Changeset in webkit [161085] by gyuyoung.kim@samsung.com
  • 5 edits in trunk/Source/WebCore

Set m_pos as private in InlineIterator, and use getter and setter functions.
https://bugs.webkit.org/show_bug.cgi?id=125614

Reviewed by Alexey Proskuryakov.

InlineIterator has been exported m_pos as public directly though it is member variable.
This patch set it as private, and add getter/setter functions for it.

No new tests, no behavior changes.

  • rendering/InlineIterator.h:

(WebCore::InlineIterator::setOffset):
(WebCore::operator==):
(WebCore::operator!=):
(WebCore::InlineBidiResolver::appendRun):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockFlow::appendRunsForObject):
(WebCore::constructBidiRunsForLine):
(WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):
(WebCore::RenderBlockFlow::matchedEndLine):
(WebCore::LineBreaker::nextSegmentBreak):

  • rendering/line/BreakingContextInlineHeaders.h:

(WebCore::BreakingContext::handleBR):
(WebCore::BreakingContext::handleFloat):
(WebCore::iteratorIsBeyondEndOfRenderCombineText):
(WebCore::ensureCharacterGetsLineBox):
(WebCore::BreakingContext::handleText):
(WebCore::checkMidpoints):
(WebCore::BreakingContext::handleEndOfLine):

  • rendering/line/TrailingObjects.cpp:

(WebCore::TrailingObjects::updateMidpointsForTrailingBoxes):

11:17 PM Changeset in webkit [161084] by mark.lam@apple.com
  • 3 edits in branches/jsCStack/Source/JavaScriptCore

jsc-layout-tests.yaml/js/script-tests/function-apply-aliased.js.layout-no-cjit is failing.
https://bugs.webkit.org/show_bug.cgi?id=126174.

Not yet reviewed.

When we do a stack check in a function prologue, the activation object
in the frame hasn't been set yet. The test failures came from the stack
unwinding code trying to tear off the frame to a non-existant activation
object. Since we haven't entered the function yet and the frame is
technically not fully "pushed" yet, we can throw i.e. start the unwinding
from the caller frame instead. This fixes the issue.

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • When we have a StackOverflowError, return the caller's CallFrame in the second value in the SlowPathReturnType.
  • llint/LowLevelInterpreter.asm:
  • Check if the second value of the SlowPathReturnType from the stack check is 0. If not 0, set the cfr to the returned CallFrame* before we start handling the StackOverflowError and unwinding the stack.
9:12 PM Changeset in webkit [161083] by commit-queue@webkit.org
  • 3 edits
    1 delete in trunk/Source/WebCore

[EFL] Delete file.edc and file_*.png.
https://bugs.webkit.org/show_bug.cgi?id=125134

Patch by Kim Byung Jun <bj1987.kim@samsung.com> on 2013-12-25
Reviewed by Gyuyoung Kim.

File_theme uses button form.

  • platform/efl/DefaultTheme/CMakeLists.txt:
  • platform/efl/DefaultTheme/default.edc:
  • platform/efl/DefaultTheme/widget/file/file.edc: Removed.
  • platform/efl/DefaultTheme/widget/file/file_focus.png: Removed.
  • platform/efl/DefaultTheme/widget/file/file_hover.png: Removed.
  • platform/efl/DefaultTheme/widget/file/file_normal.png: Removed.
  • platform/efl/DefaultTheme/widget/file/file_press.png: Removed.
7:06 PM Changeset in webkit [161082] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL] Activate keyboard homepage shortcut on efl minibrowser.
https://bugs.webkit.org/show_bug.cgi?id=124636

Patch by Jongwoo Choi <jw0330.choi@samsung.com> on 2013-12-25
Reviewed by Gyuyoung Kim.

  • MiniBrowser/efl/main.c: Added.

(on_key_down): Add a homepage shortcut using Alt + Home key.

7:03 PM Changeset in webkit [161081] by thiago.lacerda@openbossa.org
  • 2 edits in trunk/Source/WebCore

[Nix] Adding createDragImageIconForCachedImageFilename method to DragImageNix
https://bugs.webkit.org/show_bug.cgi?id=126230

Reviewed by Daniel Bates.

Also returning nullptr in other functions that were returning 0 as a pointer.

  • platform/nix/DragImageNix.cpp:

(WebCore::createDragImageFromImage):
(WebCore::createDragImageIconForCachedImage):
(WebCore::createDragImageIconForCachedImageFilename):

6:57 PM Changeset in webkit [161080] by thiago.lacerda@openbossa.org
  • 2 edits in trunk/Source/WebCore

[Nix] Fixing DragData::asFragment signature in DragDataNix.cpp
https://bugs.webkit.org/show_bug.cgi?id=126229

Reviewed by Daniel Bates.

  • platform/nix/DragDataNix.cpp:

(WebCore::DragData::asFragment):

6:51 PM Changeset in webkit [161079] by thiago.lacerda@openbossa.org
  • 2 edits in trunk/Source/WTF

[Nix] Building with DRAG_SUPPORT enabled
https://bugs.webkit.org/show_bug.cgi?id=126233

Reviewed by Daniel Bates.

  • wtf/nix/FeatureDefinesNix.h:
4:33 PM Changeset in webkit [161078] by ap@apple.com
  • 3 edits in trunk/Tools

Revision selection behavior at build.webkit.org/dashboard is annoying
https://bugs.webkit.org/show_bug.cgi?id=126235

Reviewed by Tim Horton.

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

(BuildbotQueueView.prototype.revisionLinksForIteration): Make the whole message
selectable, not just the numbers in it.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:

(.selectable): Make selectable enable default behavior, not user-select:all.

4:29 PM Changeset in webkit [161077] by commit-queue@webkit.org
  • 29 edits in trunk

Unreviewed, rolling out r161033 and r161074.
http://trac.webkit.org/changeset/161033
http://trac.webkit.org/changeset/161074
https://bugs.webkit.org/show_bug.cgi?id=126240

Oliver says that a rollout would be better (Requested by ap on
#webkit).

Source/JavaScriptCore:

  • API/JSObjectRef.cpp:

(JSObjectSetProperty):

  • dfg/DFGOperations.cpp:

(JSC::DFG::operationPutByValInternal):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::execute):

  • jit/JITOperations.cpp:
  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • runtime/Arguments.cpp:

(JSC::Arguments::putByIndex):

  • runtime/ArrayPrototype.cpp:

(JSC::putProperty):
(JSC::arrayProtoFuncPush):

  • runtime/JSCJSValue.cpp:

(JSC::JSValue::putToPrimitiveByIndex):

  • runtime/JSCell.cpp:

(JSC::JSCell::putByIndex):

  • runtime/JSFunction.cpp:

(JSC::JSFunction::put):

  • runtime/JSGenericTypedArrayViewInlines.h:

(JSC::JSGenericTypedArrayView<Adaptor>::putByIndex):

  • runtime/JSONObject.cpp:

(JSC::Walker::walk):

  • runtime/JSObject.cpp:

(JSC::JSObject::putByIndex):
(JSC::JSObject::putDirectNonIndexAccessor):
(JSC::JSObject::deleteProperty):

  • runtime/JSObject.h:

(JSC::JSObject::putDirect):

  • runtime/Lookup.h:

(JSC::putEntry):
(JSC::lookupPut):

  • runtime/PutPropertySlot.h:

(JSC::PutPropertySlot::PutPropertySlot):
(JSC::PutPropertySlot::setNewProperty):
(JSC::PutPropertySlot::isCacheable):

Source/WebCore:

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::JSDOMWindow::put):

  • bindings/objc/WebScriptObject.mm:

(-[WebScriptObject setValue:forKey:]):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

  • bindings/scripts/test/JS/JSTestInterface.cpp:

(WebCore::JSTestInterface::putByIndex):

  • bridge/NP_jsobject.cpp:

(_NPN_SetProperty):

Source/WebKit/mac:

  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:

(WebKit::NetscapePluginInstanceProxy::setProperty):

Source/WebKit2:

  • WebProcess/Plugins/Netscape/NPJSObject.cpp:

(WebKit::NPJSObject::setProperty):

LayoutTests:

4:29 PM Changeset in webkit [161076] by beidson@apple.com
  • 19 edits in trunk/Source

DatabaseProcess: Implement version changing
https://bugs.webkit.org/show_bug.cgi?id=126099

Reviewed by Sam Weinig.

Source/WebCore:

No new tests (No change in WebCore behavior).

  • Modules/indexeddb/IDBTransactionBackend.cpp:

(WebCore::IDBTransactionBackend::commit): Update some logging.

  • Modules/indexeddb/IDBTransactionBackendOperations.cpp:

(WebCore::IDBDatabaseBackend::VersionChangeOperation::perform): Move some things that used to be in

IDBServerConnectionLevelDB::changeDatabaseVersion to this cross-platform location.

  • Modules/indexeddb/IDBTransactionBackendOperations.h:

(WebCore::IDBDatabaseBackend::VersionChangeOperation::transaction):

  • Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:

(WebCore::IDBServerConnectionLevelDB::changeDatabaseVersion): Move the actual updating of the database backend

metadata to the VersionChangeOperation.

Source/WebKit2:

  • DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:

(WebKit::DatabaseProcessIDBConnection::getOrEstablishIDBDatabaseMetadata): Add logging.
(WebKit::DatabaseProcessIDBConnection::openTransaction): Ditto.
(WebKit::DatabaseProcessIDBConnection::beginTransaction): Ditto.
(WebKit::DatabaseProcessIDBConnection::commitTransaction): Ditto.
(WebKit::DatabaseProcessIDBConnection::resetTransaction): Ditto.
(WebKit::DatabaseProcessIDBConnection::rollbackTransaction): Ditto.
(WebKit::DatabaseProcessIDBConnection::changeDatabaseVersion): Implement this!

  • DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
  • DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:
  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::shutdown): Clean up all requests, and also cleanup the backing store

on the database queue.

(WebKit::UniqueIDBDatabase::shutdownBackingStore): Shutdown the backing store.
(WebKit::UniqueIDBDatabase::didShutdownBackingStore):
(WebKit::UniqueIDBDatabase::changeDatabaseVersion): Pass along the new version to the database queue.
(WebKit::UniqueIDBDatabase::didChangeDatabaseVersion):
(WebKit::UniqueIDBDatabase::changeDatabaseVersionInBackingStore): Set the new version in the backing store.
(WebKit::UniqueIDBDatabase::postMainThreadTask): Add a ref() to keep the database alive incase it is being

shutdown on the main thread.

(WebKit::UniqueIDBDatabase::performNextMainThreadTask): Balance the ref() from postMainThreadTask, and

accept an empty mainThreadTask queue.

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
  • DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h: Add changeDatabaseVersion.

Flesh out SQLiteIDBTransaction to actually operation on a SQLiteTransaction in a real SQLiteDatabase:

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.cpp:

(WebKit::SQLiteIDBTransaction::SQLiteIDBTransaction):
(WebKit::SQLiteIDBTransaction::~SQLiteIDBTransaction):
(WebKit::SQLiteIDBTransaction::begin):
(WebKit::SQLiteIDBTransaction::commit):
(WebKit::SQLiteIDBTransaction::reset):
(WebKit::SQLiteIDBTransaction::rollback):
(WebKit::SQLiteIDBTransaction::inProgress):

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.h:

(WebKit::SQLiteIDBTransaction::create):
(WebKit::SQLiteIDBTransaction::mode):

Rename m_metadataDB to m_sqliteDB,

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::createAndPopulateInitialMetadata):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::extractExistingMetadata):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::openSQLiteDatabaseAtPath): Disable threading checks on the DB

as work queues can change threads.

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getOrEstablishMetadata):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::establishTransaction):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::beginTransaction):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::changeDatabaseVersion): After validating the transaction, actually

update the version number on disk.

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:
  • WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:

(WebKit::WebIDBServerConnection::~WebIDBServerConnection): Make sure to abort in-flight requests.
(WebKit::WebIDBServerConnection::changeDatabaseVersion):
(WebKit::WebIDBServerConnection::didChangeDatabaseVersion):

  • WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
  • WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:
4:09 PM Changeset in webkit [161075] by ap@apple.com
  • 2 edits in trunk/LayoutTests

[Mac] [WK2] http/tests/security/cross-frame-access-put.html fails
https://bugs.webkit.org/show_bug.cgi?id=116649

  • platform/mac-wk2/TestExpectations: Removing an expectation for this old bug that

was no longer occurring. Failures on this test are now tracked via bug 126238.

3:59 PM Changeset in webkit [161074] by ap@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION (r161033): http/tests/security/cross-frame-access-put.html fails
https://bugs.webkit.org/show_bug.cgi?id=126238

3:54 PM Changeset in webkit [161073] by ap@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION (Lazy tree creation): css3/calc/transitions-dependent.html is frequently failing
https://bugs.webkit.org/show_bug.cgi?id=126142

3:44 PM Changeset in webkit [161072] by fpizlo@apple.com
  • 11 edits
    3 adds in trunk

DFG PhantomArguments shouldn't rely on a dead Phi graph
https://bugs.webkit.org/show_bug.cgi?id=126218

Source/JavaScriptCore:

Reviewed by Oliver Hunt.

This change dramatically rationalizes our handling of PhantomArguments (i.e.
speculative elision of arguments object allocation).

It's now the case that if we decide that we can elide arguments allocation, we just
turn the arguments-creating node into a PhantomArguments and mark all locals that
it's stored to as being arguments aliases. Being an arguments alias and being a
PhantomArguments means basically the same thing: in DFG execution you have the empty
value, on OSR exit an arguments object is allocated in your place, and all operations
that use the value now just refer directly to the actual arguments in the call frame
header (or the arguments we know that we passed to the call, in case of inlining).

This means that we no longer have arguments simplification creating a dead Phi graph
that then has to be interpreted by the OSR exit logic. That sort of never made any
sense.

This means that PhantomArguments now has a clear story in SSA: basically SSA just
gets rid of the "locals" but everything else is the same.

Finally, this means that we can more easily get rid of forward exiting. As I was
working on the code to get rid of forward exiting, I realized that I'd have to
carefully preserve the special meanings of MovHint and SetLocal in the case of
PhantomArguments. It was really bizarre: even the semantics of MovHint were tied to
our specific treatment of PhantomArguments. After this change this is no longer the
case.

One of the really cool things about this change is that arguments reification now
just becomes a special kind of FlushFormat. This further unifies things: it means
that a MovHint(PhantomArguments) and a SetLocal(PhantomArguments) both have the same
meaning, since both of them dictate that the way we recover the local on exit is by
reifying arguments. Previously, the SetLocal(PhantomArguments) case needed some
special handling to accomplish this.

A downside of this approach is that we will now emit code to store the empty value
into aliased arguments variables, and we will even emit code to load that empty value
as well. As far as I can tell this doesn't cost anything, since PhantomArguments are
most profitable in cases where it allows us to simplify control flow and kill the
arguments locals entirely. Of course, this isn't an issue in SSA form since SSA form
also eliminates the locals.

  • dfg/DFGArgumentsSimplificationPhase.cpp:

(JSC::DFG::ArgumentsSimplificationPhase::run):
(JSC::DFG::ArgumentsSimplificationPhase::detypeArgumentsReferencingPhantomChild):

  • dfg/DFGFlushFormat.cpp:

(WTF::printInternal):

  • dfg/DFGFlushFormat.h:

(JSC::DFG::resultFor):
(JSC::DFG::useKindFor):
(JSC::DFG::dataFormatFor):

  • dfg/DFGSpeculativeJIT.cpp:

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

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • dfg/DFGValueSource.h:

(JSC::DFG::ValueSource::ValueSource):
(JSC::DFG::ValueSource::forFlushFormat):

  • dfg/DFGVariableAccessData.h:

(JSC::DFG::VariableAccessData::flushFormat):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::buildExitArguments):

LayoutTests:

Reviewed by Oliver Hunt.

Added a test for an obvious case that I don't think we had coverage for in
microbenchmarks. Of course, this case was already covered by more complex tests.

  • js/regress/inline-arguments-aliased-access-expected.txt: Added.
  • js/regress/inline-arguments-aliased-access.html: Added.
  • js/regress/script-tests/inline-arguments-aliased-access.js: Added.

(foo):
(bar):

12:39 PM Changeset in webkit [161071] by Martin Robinson
  • 2 edits in trunk/Source/WebKit2

[GTK] [CMake] Fix CMake style errors in Source/WebKit2/PlatformGTK.cmake
https://bugs.webkit.org/show_bug.cgi?id=126221

Reviewed by Gustavo Noronha Silva.

  • PlatformGTK.cmake: Fix CMake style errors.
12:38 PM Changeset in webkit [161070] by Martin Robinson
  • 2 edits in trunk

[GTK] [CMake] Properly name the JavaScriptCore library
https://bugs.webkit.org/show_bug.cgi?id=126220

Reviewed by Gustavo Noronha Silva.

  • Source/cmake/OptionsGTK.cmake: Set the JSC library name properly.
11:24 AM Changeset in webkit [161069] by rniwa@webkit.org
  • 2 edits in trunk/Websites/webkit.org

Add a description about webkit-patch setup-git-clone to checkout.html
https://bugs.webkit.org/show_bug.cgi?id=126217

Reviewed by Philippe Normand.

Added.

  • building/checkout.html:
11:07 AM Changeset in webkit [161068] by Martin Robinson
  • 20 edits in trunk

[GTK] [CMake] Clean up generated sources directories
https://bugs.webkit.org/show_bug.cgi?id=126216

Reviewed by Gustavo Noronha Silva.

.:

  • Source/cmake/OptionsGTK.cmake: Pre-define the main derived sources directories

so that they definitions can be shared easily throughout the build system.

Source/WebCore:

  • PlatformGTK.cmake: Use the new directory variables.

Source/WebKit:

  • PlatformGTK.cmake: Use the new derived source variables.

Source/WebKit2:

  • PlatformGTK.cmake: Use the new derived sources variables.
  • UIProcess/API/gtk/tests/CMakeLists.txt: Ditto.

Tools:

  • DumpRenderTree/PlatformGTK.cmake: Use the new derived sources variables.
  • GtkLauncher/CMakeLists.txt: Ditto.
  • MiniBrowser/gtk/CMakeLists.txt: Ditto.
  • TestWebKitAPI/CMakeLists.txt: Now that the EFL and GTK+ forwarding header locations differ,

move the platform-specific includes to the EFL and GTK platform files. Also clean up forwarding
header generation into on target.

  • TestWebKitAPI/PlatformEfl.cmake: Added EFL-specific locations to the include list.
  • TestWebKitAPI/PlatformGTK.cmake: Added GTK-specific locations to the include list.
  • WebKitTestRunner/CMakeLists.txt: Same as for TestWebKitAPI.
  • WebKitTestRunner/PlatformEfl.cmake: Ditto.
  • WebKitTestRunner/PlatformGTK.cmake: Ditto.
  • gtk/generate-gtkdoc: Update to select the appropriate derived sources locations for

the cmake build.

11:03 AM Changeset in webkit [161067] by krit@webkit.org
  • 8 edits in trunk

Support <box> values parsing on 'clip-path' property
https://bugs.webkit.org/show_bug.cgi?id=126147

Reviewed by Ryosuke Niwa.

Source/WebCore:

Support parsing of the background reference boxes, margin-box and bounding-box.
A box will be a reference box and define the origin for a basic shape.
If no basic shape is specified, the box defines the clipping path itself.
The specification text follows the changes to CSS Shapes now.

https://dvcs.w3.org/hg/FXTF/raw-file/3f213145303e/css-masking-1/index.html#the-clip-path

Existing parsing test have been extended to test box values as well.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseClipPath):

  • css/CSSParser.h:
  • css/CSSValueKeywords.in:
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyClipPath::applyValue):

LayoutTests:

Add test to check different combinations of the reference boxes
content-box, padding-box, border-box, margin-box and bounding-box
with other clip-path values.

  • fast/masking/parsing-clip-path-shape.html:
10:58 AM Changeset in webkit [161066] by ddkilzer@apple.com
  • 2 edits
    4 adds in trunk/Source/WebCore

[iOS] Upstream WebCore/pdf changes
http://webkit.org/b/126097

Reviewed by Sam Weinig.

  • WebCore.xcodeproj/project.pbxproj: Added files to project.
  • pdf/ios/PDFDocument.cpp: Added.

(WebCore::PDFDocumentParser::create):
(WebCore::PDFDocumentParser::document):
(WebCore::PDFDocumentParser::PDFDocumentParser):
(WebCore::PDFDocument::createParser):

  • pdf/ios/PDFDocument.h: Added.

(WebCore::PDFDocument::create):
(WebCore::PDFDocument::PDFDocument):

6:48 AM Changeset in webkit [161065] by Philippe Normand
  • 2 edits in trunk/Source/WebKit2

Unreviewed, GTK build fix after r161063

  • GNUmakefile.am: Use locally built .gir dependencies when

building the WebExtensions gir file.

1:56 AM Changeset in webkit [161064] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

[GTK] Fix warnings when generating WebExtensions gobject-instrospection files
https://bugs.webkit.org/show_bug.cgi?id=126225

Reviewed by Philippe Normand.

Add transfer annotation to webkit_web_page_get_dom_document() and
document webkit_web_page_get_main_frame().

  • WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
1:53 AM Changeset in webkit [161063] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

[GTK] Missing introspection information for WebExtensions
https://bugs.webkit.org/show_bug.cgi?id=122407

Reviewed by Philippe Normand.

Generate WebKit2WebExtension-3.0.gir with the WebExtensions API
and move the DOM bindings API from WebKit2-3.0.gir to
WebKit2WebExtension-3.0.gir.

  • GNUmakefile.am:
1:13 AM Changeset in webkit [161062] by ap@apple.com
  • 9 edits
    1 add in trunk/Tools

Add a JSON interface for getting EWS queue status
https://bugs.webkit.org/show_bug.cgi?id=126182

Reviewed by Ryosuke Niwa.

The current goal is to add an indicator of how many patches are in the queue, and
the JSON also includes some other information that was easy to add.

  • QueueStatusServer/app.yaml: Updated version for deployment.
  • QueueStatusServer/handlers/queuestatusjson.py: Added. Returns a JSON with some

bot and patch queue information.

  • QueueStatusServer/index.yaml: Added an index for a new query that only returns

bot ids.

  • QueueStatusServer/main.py: Map /queue-status-json/ directory to QueueStatusJSON

handler.

  • QueueStatusServer/config: Added property svn:ignore.
  • QueueStatusServer/filters: Added property svn:ignore.
  • QueueStatusServer/loggers: Added property svn:ignore.
  • QueueStatusServer/handlers: Added property svn:ignore.
  • QueueStatusServer/model: Added property svn:ignore.

Ignore compiled *.pyc files in all directories they appear in when running locally.

Dec 24, 2013:

4:41 PM Changeset in webkit [161061] by msaboff@apple.com
  • 2 edits in branches/jsCStack/Source/JavaScriptCore

CStack Branch: ecma/ExecutionContexts/10.1.4-2.js test fails
https://bugs.webkit.org/show_bug.cgi?id=126213

Reviewed by Filip Pizlo.

Fixed setting and restoring of stack pointer in JIT::compileCallEval()
and its slow path. Changed the exception check to simplify when the stack
pointer is set to the before call versus after the call values.

  • jit/JITCall.cpp:

(JSC::JIT::compileCallEval):
(JSC::JIT::compileCallEvalSlowCase):
(JSC::JIT::compileOpCall):

1:06 PM Changeset in webkit [161060] by commit-queue@webkit.org
  • 8 edits in trunk/Source

Unreviewed, rolling out r160959.
http://trac.webkit.org/changeset/160959
https://bugs.webkit.org/show_bug.cgi?id=126222

Caused Windows build to fail (Requested by rfong on #webkit).

Source/WebCore:

  • platform/sql/SQLiteDatabase.cpp:

(WebCore::SQLiteDatabase::interrupt):

Source/WTF:

  • wtf/ByteSpinLock.h:

(WTF::ByteSpinLock::lock):

  • wtf/Threading.h:
  • wtf/ThreadingPrimitives.h:

(WTF::pauseBriefly):

  • wtf/ThreadingPthreads.cpp:

(WTF::yield):

  • wtf/ThreadingWin.cpp:

(WTF::yield):

1:00 PM Changeset in webkit [161059] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Remove the test expectations added after r161051 now that the changeset has been rolled out.

The assertion failure is tracked by https://webkit.org/b/126219.

12:43 PM Changeset in webkit [161058] by rniwa@webkit.org
  • 12 edits in trunk

Unreviewed, rolling out r161051.
http://trac.webkit.org/changeset/161051
https://bugs.webkit.org/show_bug.cgi?id=45994

Caused two DFG tests to hit assertions due to a separate bug

Source/WebCore:

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::status):
(WebCore::XMLHttpRequest::statusText):

  • xml/XMLHttpRequest.h:
  • xml/XMLHttpRequest.idl:

LayoutTests:

  • http/tests/xmlhttprequest/exceptions-expected.txt:
  • http/tests/xmlhttprequest/exceptions.html:
  • http/tests/xmlhttprequest/status-after-abort-expected.txt:
  • http/tests/xmlhttprequest/zero-length-response-expected.txt:
  • js/dom/dfg-custom-getter-throw-expected.txt:
  • js/dom/script-tests/dfg-custom-getter-throw-inlined.js:

(foo):
(bar):

  • js/dom/script-tests/dfg-custom-getter-throw.js:

(foo):
(bar):

11:02 AM UsingGitWithWebKit edited by rniwa@webkit.org
Add a description about webkit-patch setup-git-clone (diff)
7:32 AM Changeset in webkit [161057] by msaboff@apple.com
  • 2 edits in branches/jsCStack/Source/JavaScriptCore

CStack Branch: throwExceptionFromCallSlowPathGenerator() shouldn't pop frame
https://bugs.webkit.org/show_bug.cgi?id=126204

Reviewed by Filip Pizlo.

Given that the function epilogue pops the callee frame, there is no need
to pop a frame in throwExceptionFromCallSlowPathGenerator().

  • jit/ThunkGenerators.cpp:

(JSC::throwExceptionFromCallSlowPathGenerator):

6:45 AM Changeset in webkit [161056] by stavila@adobe.com
  • 1 edit
    2 moves in trunk/LayoutTests

Rename fast/regions/repaint/increasing-region-content-height.html to something more clear
https://bugs.webkit.org/show_bug.cgi?id=126209

Reviewed by Mihnea Ovidenie.

Renamed test file name to better reflect the scenario it tests.

  • fast/regions/repaint/repaint-element-inside-relative-region-expected.txt: Renamed from LayoutTests/fast/regions/repaint/increasing-region-content-height-expected.txt.
  • fast/regions/repaint/repaint-element-inside-relative-region.html: Renamed from LayoutTests/fast/regions/repaint/increasing-region-content-height.html.
1:36 AM Changeset in webkit [161055] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Suppress assertions in js/dom/dfg-custom-getter-throw.html and js/dom/dfg-custom-getter-throw-inlined.html for now.

1:25 AM Changeset in webkit [161054] by mihnea@adobe.com
  • 3 edits
    2 adds in trunk

[CSSRegions] Crash while repainting an invalid region
https://bugs.webkit.org/show_bug.cgi?id=126152

Reviewed by Daniel Bates.

Source/WebCore:

An invalid region, part of a dependency cycle, should not attempt to repaint content from
its associated named flow, otherwise there may be the case of an infinite repaint cycle,
resulting in a crash due to a stack overflow.

Test: fast/regions/repaint/invalid-region-repaint-crash.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::repaintIncludingDescendants):

LayoutTests:

  • fast/regions/repaint/invalid-region-repaint-crash-expected.txt: Added.
  • fast/regions/repaint/invalid-region-repaint-crash.html: Added.
12:23 AM Changeset in webkit [161053] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit2

32-bit Mac build fix attempt after r161045.

  • WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:

(WebKit::windowMap):

12:11 AM Changeset in webkit [161052] by rniwa@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Add a test for reattaching collapsed whitespace when siblings change style
https://bugs.webkit.org/show_bug.cgi?id=126053

Reviewed by Dan Bernstein.

Merge the test from https://chromium.googlesource.com/chromium/blink/+/dd5636728643ff958aebeaf064d38754b0d5904b
so that we may not introduce the same regression in WebKit.

  • fast/css/collapsed-whitespace-reattach-in-style-recalc-expected.txt: Added.
  • fast/css/collapsed-whitespace-reattach-in-style-recalc.html: Added.
12:05 AM Changeset in webkit [161051] by rniwa@webkit.org
  • 12 edits in trunk

XMLHttpRequest: status and statusText throw DOM Exception 11 when the state is UNSENT or OPENED.
https://bugs.webkit.org/show_bug.cgi?id=45994

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Merged https://chromium.googlesource.com/chromium/blink/+/23c90460de16e04c5aba7ed942fba76cb79fdb9b.

Latest XHR spec says that XHR should return 0 and an empty string when it's in UNSENT or OPENED state
or error flag is set: http://www.w3.org/TR/2012/WD-XMLHttpRequest-20121206/#the-status-attribute

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::status):
(WebCore::XMLHttpRequest::statusText):

  • xml/XMLHttpRequest.h:
  • xml/XMLHttpRequest.idl:

LayoutTests:

Rebaselined and fixed tests as done in https://chromium.googlesource.com/chromium/blink/+/23c90460de16e04c5aba7ed942fba76cb79fdb9b.

  • http/tests/xmlhttprequest/exceptions-expected.txt:
  • http/tests/xmlhttprequest/exceptions.html:
  • http/tests/xmlhttprequest/status-after-abort-expected.txt:
  • http/tests/xmlhttprequest/zero-length-response-expected.txt:
  • js/dom/dfg-custom-getter-throw-expected.txt:
  • js/dom/script-tests/dfg-custom-getter-throw-inlined.js: Fixed the test.

(foo): Use responseText instead of status so that it throws when responseType is "arraybuffer".
(bar): Set responseType to "arraybuffer" to cause an exception to be thrown.

  • js/dom/script-tests/dfg-custom-getter-throw.js: Ditto.

(foo):
(bar):

Note: See TracTimeline for information about the timeline view.