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

Timeline



Dec 23, 2013:

11:44 PM Changeset in webkit [161050] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Crash in ReplaceSelectionCommand
https://bugs.webkit.org/show_bug.cgi?id=126107

Reviewed by Benjamin Poulain.

Merge https://chromium.googlesource.com/chromium/blink/+/c1ebe5c1e808daf9db5e348a8d0ab32570b9f7a5
except the test since it doesn't reproduce the crash in WebKit.

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::doApply):

11:42 PM Changeset in webkit [161049] by aestes@apple.com
  • 115 edits
    2 deletes in trunk/Source/WebKit

Source/WebKit: Roll out r161043. It broke 32-bit Mac builds.

Source/WebKit/ios: Roll out r161043. It broke 32-bit Mac builds.

Source/WebKit/mac: Roll out r161043. It broke 32-bit Mac builds.

11:29 PM Changeset in webkit [161048] by mihnea@adobe.com
  • 3 edits in trunk/LayoutTests

[CSSRegions] Fix fast/regions/assert-flow-thread-compositing.html test description
https://bugs.webkit.org/show_bug.cgi?id=126203

Reviewed by Dirk Schulze.

Correct description of successful behaviour for fast/regions/assert-flow-thread-compositing.html.

  • fast/regions/assert-flow-thread-compositing-expected.txt:
  • fast/regions/assert-flow-thread-compositing.html:
8:50 PM Changeset in webkit [161047] by jinwoo7.song@samsung.com
  • 2 edits in trunk

[EFL][CMAKE] Case insensitive string comparison of build type
https://bugs.webkit.org/show_bug.cgi?id=126153

Reviewed by Daniel Bates.

Compare CMAKE_BUILD_TYPE with "debug" ignoring case.

  • Source/cmake/OptionsEfl.cmake:
7:28 PM Changeset in webkit [161046] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

Add the pseudo classes link and any-link to the Selector Code Generator
https://bugs.webkit.org/show_bug.cgi?id=126196

Reviewed by Ryosuke Niwa.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::addPseudoType):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsLink):

  • dom/Node.h:

(WebCore::Node::flagIsElement):
(WebCore::Node::flagIsLink):
Fix the type to match TrustedImm32.

7:28 PM Changeset in webkit [161045] by weinig@apple.com
  • 47 edits in trunk/Source/WebKit2

[WK2] Replace usage of DEFINE_STATIC_LOCAL with NeverDestroyed
https://bugs.webkit.org/show_bug.cgi?id=126144

Reviewed by Anders Carlsson.

  • DatabaseProcess/DatabaseProcess.cpp:

(WebKit::DatabaseProcess::shared):

  • DatabaseProcess/DatabaseProcess.h:
  • NetworkProcess/FileAPI/NetworkBlobRegistry.cpp:

(WebKit::NetworkBlobRegistry::shared):

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::shared):
(WebKit::NetworkProcess::downloadManager):

  • NetworkProcess/NetworkProcess.h:
  • NetworkProcess/NetworkProcessPlatformStrategies.cpp:

(WebKit::NetworkProcessPlatformStrategies::initialize):

  • NetworkProcess/mac/RemoteNetworkingContext.mm:

(WebKit::privateBrowsingStorageSessionIdentifierBase):

  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::SyncMessageState::syncMessageStateMap):
(CoreIPC::Connection::SyncMessageState::syncMessageStateMapMutex):

  • PluginProcess/PluginProcess.cpp:

(WebKit::PluginProcess::shared):

  • PluginProcess/PluginProcess.h:
  • PluginProcess/mac/PluginProcessMac.mm:

(WebKit::fullscreenWindowTracker):

  • Shared/ConnectionStack.cpp:

(WebKit::ConnectionStack::shared):

  • Shared/Plugins/Netscape/NetscapePluginModule.cpp:

(WebKit::initializedNetscapePluginModules):

  • Shared/WebContextMenuItem.cpp:

(WebKit::WebContextMenuItem::separatorItem):

  • Shared/WebPreferencesStore.cpp:

(WebKit::boolTestRunnerOverridesMap):

  • Shared/mac/CookieStorageShim.cpp:

(WebKit::CookieStorageShim::shared):

  • Shared/mac/CookieStorageShim.h:

(WebKit::CookieStorageShim::CookieStorageShim):

  • UIProcess/Plugins/PluginProcessManager.cpp:

(WebKit::PluginProcessManager::shared):

  • UIProcess/Plugins/PluginProcessManager.h:
  • UIProcess/WebContext.cpp:

(WebKit::contexts):

  • UIProcess/WebDatabaseManagerProxy.cpp:

(WebKit::WebDatabaseManagerProxy::originKey):
(WebKit::WebDatabaseManagerProxy::originQuotaKey):
(WebKit::WebDatabaseManagerProxy::originUsageKey):
(WebKit::WebDatabaseManagerProxy::databaseDetailsKey):
(WebKit::WebDatabaseManagerProxy::databaseDetailsNameKey):
(WebKit::WebDatabaseManagerProxy::databaseDetailsDisplayNameKey):
(WebKit::WebDatabaseManagerProxy::databaseDetailsExpectedUsageKey):
(WebKit::WebDatabaseManagerProxy::databaseDetailsCurrentUsageKey):

  • UIProcess/WebInspectorProxy.cpp:

(WebKit::WebInspectorPageGroups::shared):

  • UIProcess/WebPageGroup.cpp:

(WebKit::webPageGroupMap):

  • UIProcess/WebPageProxy.cpp:

(WebKit::ExceededDatabaseQuotaRecords::shared):
(WebKit::WebPageProxy::executeEditCommand):

  • UIProcess/WebProcessProxy.cpp:

(WebKit::globalPageMap):

  • UIProcess/cf/WebBackForwardListCF.cpp:

(WebKit::SessionHistoryCurrentVersion):
(WebKit::createEmptySessionHistoryDictionary):
(WebKit::WebBackForwardList::createCFDictionaryRepresentation):
(WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation):
(WebKit::WebBackForwardList::restoreFromV0CFDictionaryRepresentation):
(WebKit::WebBackForwardList::restoreFromV1CFDictionaryRepresentation):
(WebKit::extractBackForwardListEntriesFromArray):

  • UIProcess/cf/WebPageProxyCF.cpp:

(WebKit::WebPageProxy::sessionStateData):
(WebKit::WebPageProxy::restoreFromSessionStateData):

  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::standardUserAgent):

  • WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:

(WebKit::sharedDatabaseBackendMap):

  • WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:

(WebKit::generateServerConnectionIdentifier):

  • WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:

(WebKit::WKDOMNodeCache):
(WebKit::WKDOMRangeCache):

  • WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:

(WebKit::domHandleCache):

  • WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:

(WebKit::domHandleCache):

  • WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:

(WebKit::allExtensions):

  • WebProcess/InjectedBundle/InjectedBundleScriptWorld.cpp:

(WebKit::allWorlds):

  • WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:

(WebKit::globalExceptionString):

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

(WebKit::windowMap):

  • WebProcess/Storage/StorageNamespaceImpl.cpp:

(WebKit::localStorageNamespaceMap):

  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::didBeginEditing):
(WebKit::WebEditorClient::respondToChangedContents):
(WebKit::WebEditorClient::respondToChangedSelection):
(WebKit::WebEditorClient::didEndEditing):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::shouldFallBack):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::initialize):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.h:
  • WebProcess/WebPage/WebBackForwardListProxy.cpp:

(WebKit::idToHistoryItemMap):
(WebKit::historyItemToIDMap):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::downloadManager):

  • WebProcess/WebProcess.h:
  • config.h:
7:23 PM Changeset in webkit [161044] by benjamin@webkit.org
  • 5 edits in trunk/Source/WebCore

Add the experimental CSS code generator files to the remaining build systems
https://bugs.webkit.org/show_bug.cgi?id=126192

Reviewed by Sam Weinig.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
6:07 PM Changeset in webkit [161043] by aestes@apple.com
  • 115 edits
    1 copy
    1 add in trunk/Source/WebKit

[iOS] Upstream PLATFORM(IOS) changes to Source/WebKit/
https://bugs.webkit.org/show_bug.cgi?id=125746

Reviewed by David Kilzer.

Source/WebKit:

  • WebKit.xcodeproj/project.pbxproj: Added WebDatabaseManagerInternal.h

and iOS.xcconfig.

Source/WebKit/ios:

  • WebCoreSupport/WebVisiblePosition.mm:

(-[WebVisiblePosition positionAtStartOrEndOfWord]): Changed a comment
to mention iOS rather than iPhone.

Source/WebKit/mac:

This is a straight upstreaming of the various PLATFORM(IOS) changes
made to Source/WebKit/ with the following modifications:

  • Includes of <Cocoa/Cocoa.h> were generally replaced with an include

of <Foundation/Foundation.h> followed by an include of
<AppKit/AppKit.h> on non-iOS platforms. This assumes that nobody was
relying on <Cocoa/Cocoa.h>'s inclusion of <CoreData/CoreData.h>.

  • Includes of <Cocoa/Cocoa.h> and <Foundation/Foundation.h> were

removed from files that include WebKitPrefix.h.

  • Instances of 'iPhone (OS)' in comments were replaced with 'iOS', and

other sensitive terms were elided.

  • Various PLATFORM(IOS) blocks were simplified. For instance:

#if !PLATFORM(IOS)
...
#endif
#if PLATFORM(IOS)
...
#endif

Was simplified to:

#if !PLATFORM(IOS)
...
#else
...
#endif

  • Configurations/Base.xcconfig:
  • Configurations/DebugRelease.xcconfig:
  • Configurations/Version.xcconfig:
  • Configurations/WebKit.xcconfig:
  • Configurations/iOS.xcconfig: Added.
  • DOM/WebDOMOperations.mm:
  • DefaultDelegates/WebDefaultContextMenuDelegate.mm:
  • DefaultDelegates/WebDefaultEditingDelegate.m:
  • DefaultDelegates/WebDefaultPolicyDelegate.m:
  • DefaultDelegates/WebDefaultUIDelegate.h:
  • DefaultDelegates/WebDefaultUIDelegate.m:
  • History/WebBackForwardList.mm:
  • History/WebHistory.mm:
  • History/WebHistoryItem.mm:
  • History/WebURLsWithTitles.m:
  • Misc/WebCache.mm:
  • Misc/WebDownload.mm:
  • Misc/WebElementDictionary.mm:
  • Misc/WebIconDatabase.mm:
  • Misc/WebIconDatabaseInternal.h:
  • Misc/WebKitNSStringExtras.mm:
  • Misc/WebKitSystemBits.m:
  • Misc/WebKitVersionChecks.h:
  • Misc/WebKitVersionChecks.m:
  • Misc/WebLocalizableStrings.mm:
  • Misc/WebNSArrayExtras.h:
  • Misc/WebNSArrayExtras.m:
  • Misc/WebNSControlExtras.h:
  • Misc/WebNSControlExtras.m:
  • Misc/WebNSDictionaryExtras.h:
  • Misc/WebNSDictionaryExtras.m:
  • Misc/WebNSEventExtras.m:
  • Misc/WebNSFileManagerExtras.mm:
  • Misc/WebNSImageExtras.h:
  • Misc/WebNSImageExtras.m:
  • Misc/WebNSPasteboardExtras.mm:
  • Misc/WebNSPrintOperationExtras.h:
  • Misc/WebNSPrintOperationExtras.m:
  • Misc/WebNSURLExtras.mm:
  • Misc/WebNSViewExtras.m:
  • Misc/WebNSWindowExtras.m:
  • Panels/WebAuthenticationPanel.h:
  • Panels/WebAuthenticationPanel.m:
  • Panels/WebPanelAuthenticationHandler.m:
  • Plugins/Hosted/WebHostedNetscapePluginView.mm:
  • Plugins/WebBasePluginPackage.h:
  • Plugins/WebBasePluginPackage.mm:
  • Plugins/WebJavaPlugIn.h:
  • Plugins/WebPluginContainerCheck.mm:
  • Plugins/WebPluginController.h:
  • Plugins/WebPluginController.mm:
  • Plugins/WebPluginDatabase.mm:
  • Plugins/WebPluginPackage.mm:
  • Plugins/WebPluginsPrivate.m:
  • Storage/WebDatabaseManager.mm:
  • Storage/WebDatabaseManagerClient.h:
  • Storage/WebDatabaseManagerClient.mm:
  • Storage/WebDatabaseManagerInternal.h: Added.
  • Storage/WebStorageManager.mm:
  • WebCoreSupport/CorrectionPanel.h:
  • WebCoreSupport/WebAlternativeTextClient.h:
  • WebCoreSupport/WebApplicationCache.mm:
  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm:
  • WebCoreSupport/WebContextMenuClient.mm:
  • WebCoreSupport/WebEditorClient.h:
  • WebCoreSupport/WebEditorClient.mm:
  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm:
  • WebCoreSupport/WebFrameNetworkingContext.h:
  • WebCoreSupport/WebFrameNetworkingContext.mm:
  • WebCoreSupport/WebGeolocationClient.h:
  • WebCoreSupport/WebGeolocationClient.mm:
  • WebCoreSupport/WebJavaScriptTextInputPanel.m:
  • WebCoreSupport/WebKeyGenerator.mm:
  • WebCoreSupport/WebNotificationClient.mm:
  • WebCoreSupport/WebOpenPanelResultListener.mm:
  • WebCoreSupport/WebSecurityOrigin.mm:
  • WebCoreSupport/WebSystemInterface.mm:
  • WebKitPrefix.h:
  • WebView/WebArchive.mm:
  • WebView/WebClipView.h:
  • WebView/WebDataSource.mm:
  • WebView/WebDelegateImplementationCaching.h:
  • WebView/WebDelegateImplementationCaching.mm:
  • WebView/WebDeviceOrientation.mm:
  • WebView/WebDocumentInternal.h:
  • WebView/WebDocumentLoaderMac.mm:
  • WebView/WebDynamicScrollBarsViewInternal.h:
  • WebView/WebFormDelegate.m:
  • WebView/WebFrame.mm:
  • WebView/WebFrameInternal.h:
  • WebView/WebFrameView.mm:
  • WebView/WebFullScreenController.h:
  • WebView/WebFullScreenController.mm:
  • WebView/WebHTMLRepresentation.mm:
  • WebView/WebHTMLView.mm:
  • WebView/WebHTMLViewInternal.h:
  • WebView/WebPDFDocumentExtras.h:
  • WebView/WebPDFDocumentExtras.mm:
  • WebView/WebPDFRepresentation.h:
  • WebView/WebPDFRepresentation.mm:
  • WebView/WebPDFView.h:
  • WebView/WebPDFView.mm:
  • WebView/WebPreferences.mm:
  • WebView/WebResource.mm:
  • WebView/WebTextCompletionController.h:
  • WebView/WebTextIterator.mm:
  • WebView/WebView.mm:
  • WebView/WebViewData.h:
  • WebView/WebViewData.mm:
  • WebView/WebViewInternal.h:
5:24 PM Changeset in webkit [161042] by rniwa@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Add a test for submitting a form targeted at an iframe
https://bugs.webkit.org/show_bug.cgi?id=126175

Reviewed by Alexey Proskuryakov.

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

  • http/tests/misc/form-target-iframe-inline-expected.txt: Added.
  • http/tests/misc/form-target-iframe-inline.html: Added.
5:22 PM Changeset in webkit [161041] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Add the pseudo class :focus to the Selector Code Generator
https://bugs.webkit.org/show_bug.cgi?id=126189

Reviewed by Ryosuke Niwa.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::addPseudoType):
(WebCore::SelectorCompiler::SelectorCodeGenerator::SelectorCodeGenerator):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsFocused):

5:17 PM Changeset in webkit [161040] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebKit/efl

Unreviewed build fix after r161033

  • ewk/ewk_view.cpp:

(ewk_view_js_object_add): Passed thisObject to constructor of PutPropertySlot.

4:52 PM Changeset in webkit [161039] by mark.lam@apple.com
  • 1 edit in branches/jsCStack/Source/JavaScriptCore/ChangeLog

Updated review status for r161025.

4:49 PM Changeset in webkit [161038] by mark.lam@apple.com
  • 3 edits in branches/jsCStack/Source/JavaScriptCore

CStack:Fixed JSStack::disableErrorStackReserve() and JSStack::installTrapsAfterFrame().
https://bugs.webkit.org/show_bug.cgi?id=126191.

Not yet reviewed.

  1. JSStack::disableErrorStackReserve() was wrongly comparing m_end with m_useableTop. Fixed the comparison.
  2. JSStack::installTrapsAfterFrame() was wrongly overwriting the top slot of the top frame. Fixed to start the trap words at the slot below the top slot in the top frame (as in at lower memory below the allocated stack memory above it).
  • interpreter/JSStack.cpp:

(JSC::JSStack::disableErrorStackReserve):

  • interpreter/JSStackInlines.h:

(JSC::JSStack::installTrapsAfterFrame):

4:48 PM Changeset in webkit [161037] by rniwa@webkit.org
  • 4 edits in trunk/Source/WebCore

Remove boolean argument from Element::setChildrenAffectBy* methods
https://bugs.webkit.org/show_bug.cgi?id=126183

Reviewed by Daniel Bates.

Merge https://chromium.googlesource.com/chromium/blink/+/066ef2fa78336b2b65052cb17cb81b367fe7dbbf

These functions are never called with false.

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne):

  • dom/Element.cpp:

(WebCore::Element::setChildrenAffectedByActive):
(WebCore::Element::setChildrenAffectedByDrag):

  • dom/Element.h:

(WebCore::Element::setChildrenAffectedByHover):

4:25 PM Changeset in webkit [161036] by mark.lam@apple.com
  • 4 edits in branches/jsCStack/Source/JavaScriptCore

CStack: Fix JSStack::grow(), shrink(), growSlowCase(), and setStackLimit().
https://bugs.webkit.org/show_bug.cgi?id=126188.

Not yet reviewed.

These functions were inappropriately mixing "end" and "top" pointer idioms.
Specifically:

  1. growSlowCase() was comparing a newEnd pointer against m_commitTop, and using this to compute the size that the stack needs to grow.
  2. shrink() was wrongly computing excess capacity by subtracting baseOfStack() (which is at high memory) from m_commitTop (which points to lower memory). Also, baseOfStack() is an "end" pointer while m_commitTop is a "top" pointer. This is a mismatch.

To fix this and simplify the code a bit, I changed all of these functions
to take a newTopOfStack pointer instead of a newEnd pointer, and adjusted
their callers where needed to pass the appropropriate pointer values.

  • interpreter/JSStack.cpp:

(JSC::JSStack::growSlowCase):

  • interpreter/JSStack.h:
  • interpreter/JSStackInlines.h:

(JSC::JSStack::popFrame):
(JSC::JSStack::shrink):
(JSC::JSStack::grow):
(JSC::JSStack::setStackLimit):

4:20 PM Changeset in webkit [161035] by timothy_horton@apple.com
  • 6 edits in trunk/Source

Fix the iOS build after r161013 and r160672.

  • Shared/mac/RemoteLayerTreePropertyApplier.mm:

(WebKit::updateCustomAppearance):

  • Shared/mac/RemoteLayerTreeTransaction.mm:
  • WebCore.exp.in:
  • platform/graphics/ca/mac/PlatformCALayerMac.mm:

(PlatformCALayerMac::updateCustomAppearance):

4:12 PM Changeset in webkit [161034] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed build fix for EFL after r161007

  • UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp:

(WebKit::CoordinatedDrawingAreaProxy::waitForAndDispatchDidUpdateBackingStoreState):
Changed the timeout parameter to std::chrono::milliseconds

4:11 PM Changeset in webkit [161033] by oliver@apple.com
  • 27 edits in trunk/Source

Refactor PutPropertySlot to be aware of custom properties
https://bugs.webkit.org/show_bug.cgi?id=126187

Reviewed by msaboff.

Source/JavaScriptCore:

Refactor PutPropertySlot, making the constructor take the thisValue
used as a target. This results in a wide range of boilerplate changes
to pass the new parameter.

  • 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::setCustomProperty):
(JSC::PutPropertySlot::thisValue):
(JSC::PutPropertySlot::isCacheable):

Source/WebCore:

Update the bindings code generation and custom objects
to the new function signatures

  • 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:

Update for new method signatures.

  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:

(WebKit::NetscapePluginInstanceProxy::setProperty):

Source/WebKit2:

Update for new method signatures.

  • WebProcess/Plugins/Netscape/NPJSObject.cpp:

(WebKit::NPJSObject::setProperty):

3:57 PM Changeset in webkit [161032] by benjamin@webkit.org
  • 2 edits in trunk/Source/WTF

Fix the build after r161031

I enabled ENABLE_CSS_SELECTOR_JIT by accident.

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-12-23

  • wtf/Platform.h:
3:47 PM Changeset in webkit [161031] by benjamin@webkit.org
  • 9 edits in trunk/Source

Add class matching to the Selector Code Generator
https://bugs.webkit.org/show_bug.cgi?id=126176

Source/JavaScriptCore:

Reviewed by Antti Koivisto and Oliver Hunt.

Add test and branch based on BaseIndex addressing for x86_64.
Fast loops are needed to compete with clang on tight loops.

  • assembler/MacroAssembler.h:
  • assembler/MacroAssemblerX86_64.h:

(JSC::MacroAssemblerX86_64::branch64):
(JSC::MacroAssemblerX86_64::branchPtr):

  • assembler/X86Assembler.h:

(JSC::X86Assembler::cmpq_rm):

Source/WebCore:

Reviewed by Antti Koivisto.

Add selector matching based on classname to the Selector Compiler.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::SelectorCodeGenerator):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementDataMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasClasses):

  • dom/ElementData.h:

(WebCore::ElementData::classNamesMemoryOffset):

  • dom/SpaceSplitString.h:

(WebCore::SpaceSplitStringData::sizeMemoryOffset):
(WebCore::SpaceSplitStringData::tokensMemoryOffset):

3:42 PM Changeset in webkit [161030] by mark.lam@apple.com
  • 4 edits in branches/jsCStack/Source/JavaScriptCore

CStack: Cosmetic: rename JSStack::m_commitEnd to m_commitTop.
https://bugs.webkit.org/show_bug.cgi?id=126186

Not yet reviewed.

In the JSStack constructor, m_commitEnd is initialized to highAddress()
which is the address just above the start of the stack. This is
appropriate because no memory has been committed for the stack yet i.e.
highAddress() - m_commitEnd should equal 0.

When we grow the stack in growSlowCase, we set m_commitEnd to
m_commitEnd - delta, where delta is some even multiple of commitSize
(some units of page size). This means that if there is memory committed,
m_commitEnd would point to an allocatable slot in the stack, not past it.
Hence, m_commitEnd should more appropriately be named m_commitTop.

  • interpreter/JSStack.cpp:

(JSC::JSStack::JSStack):
(JSC::JSStack::~JSStack):
(JSC::JSStack::growSlowCase):
(JSC::JSStack::releaseExcessCapacity):

  • interpreter/JSStack.h:
  • interpreter/JSStackInlines.h:

(JSC::JSStack::shrink):
(JSC::JSStack::installTrapsAfterFrame):

3:28 PM Changeset in webkit [161029] by dbates@webkit.org
  • 3 edits in trunk/Source/WebCore

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

Reviewed by David Kilzer.

  • storage/StorageAreaSync.cpp:

(WebCore::StorageAreaSync::openDatabase): Added iOS-specific code.
(WebCore::StorageAreaSync::sync): Ditto.

  • storage/StorageTracker.cpp:

(WebCore::StorageTracker::openTrackerDatabase): Ditto.
(WebCore::StorageTracker::syncImportOriginIdentifiers): Ditto.
(WebCore::StorageTracker::syncFileSystemAndTrackerDatabase): Ditto.
(WebCore::StorageTracker::syncSetOriginDetails): Ditto.
(WebCore::StorageTracker::syncDeleteAllOrigins): Ditto.
(WebCore::StorageTracker::syncDeleteOrigin): Ditto.
(WebCore::StorageTracker::databasePathForOrigin): Ditto.

3:25 PM Changeset in webkit [161028] by dbates@webkit.org
  • 8 edits in trunk/Source/WebCore

Fix the iOS build following <http://trac.webkit.org/changeset/160236>
(https://bugs.webkit.org/show_bug.cgi?id=125239)

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

(WebCore::RenderBox::containingBlockLogicalWidthForPositioned): Substitute view() for &view().

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::scrollTo): Fix indentation of closing brace.

  • rendering/RenderLayerCompositor.cpp: Include MainFrame.h.

(WebCore::RenderLayerCompositor::contentsScaleMultiplierForNewTiles): Check that page->mainFrame().view()
is non-null; also add explicit #else clause.
(WebCore::RenderLayerCompositor::ensureRootLayer): Fix up main frame check.

  • rendering/RenderTheme.h:

(WebCore::RenderTheme::paintFileUploadIconDecorations): Substitute rect for r.

  • rendering/RenderThemeIOS.mm:

(WebCore::RenderThemeIOS::paintTextFieldDecorations): Use .get() to access underlying NeverDestroyed item.
(WebCore::RenderThemeIOS::systemFont):

  • rendering/RenderView.cpp:

(WebCore::fixedPositionOffset): Substitute frameView.scrollOffset() for frameView->scrollOffset().

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

CStack: Cosmetic: rename JSStack::m_useableEnd to m_useableTop.
https://bugs.webkit.org/show_bug.cgi?id=126184.

Not yet reviewed.

In JSStack::enableErrorStackReserve() and disableErrorStackReserve(),
m_useableEnd is initialize to reservationTop() or reservationTop() +
commitSize. Hence, it points to an allocatable slot in the stack, not
past it. Naming it m_useableTop is more correct.

  • interpreter/JSStack.cpp:

(JSC::JSStack::growSlowCase):
(JSC::JSStack::enableErrorStackReserve):
(JSC::JSStack::disableErrorStackReserve):

  • interpreter/JSStack.h:
3:13 PM Changeset in webkit [161026] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Minor optimization in FrameSelection::setNonDirectionalSelectionIfNeeded()
https://bugs.webkit.org/show_bug.cgi?id=126108

Reviewed by Benjamin Poulain.

Merge https://chromium.googlesource.com/chromium/blink/+/237b987c324e2e389a9e0350293bfaf16a5e201d

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::setNonDirectionalSelectionIfNeeded):

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

CStack: Cosmetic: rename reservationEnd() to reservationTop().
https://bugs.webkit.org/show_bug.cgi?id=126181.

Not yet reviewed.

reservationEnd() computes the end of the stack at the top. The value
is computed as:

char* reservationEnd = static_cast<char*>(m_reservation.base());
return reinterpret_cast_ptr<Register*>(reservationEnd);

Since m_reservation.base() points at a slot of memory that is within the
allocatable range of the stack, naming this function reservationEnd() is
inappropriate. Per Geoff's input, "end" usually refers to the slot past
the end of a buffer. Calling it "top" is more appropriate. Hence, I'm
renaming it to reservationTop().

  • interpreter/JSStack.cpp:

(JSC::JSStack::enableErrorStackReserve):
(JSC::JSStack::disableErrorStackReserve):

  • interpreter/JSStack.h:

(JSC::JSStack::reservationTop):

2:51 PM Changeset in webkit [161024] by rniwa@webkit.org
  • 3 edits in trunk/Source/WebCore

Use isDocumentFragment() instead of comparing nodeType() with Node::DOCUMENT_FRAGMENT_NODE
https://bugs.webkit.org/show_bug.cgi?id=126178

Reviewed by Antti Koivisto.

Inspired by https://chromium.googlesource.com/chromium/blink/+/a622cb80af2bfb0c5d91123cbcfa4fa72a06554c

Use inline Node::isDocumentFragment() instead of virtual nodeType().

  • dom/ContainerNode.cpp:

(WebCore::collectChildrenAndRemoveFromOldParent):

  • dom/Document.cpp:

(WebCore::Document::canReplaceChild):

2:41 PM Changeset in webkit [161023] by Martin Robinson
  • 2 edits in trunk/Tools

Try to fix the build after r161017

  • gtk/common.py:

(is_cmake_build): Instead of checking whether the return value of build_path
of the CMakeCache.txt file is None, check if a file actually exists at that path.

2:20 PM Changeset in webkit [161022] by matthew_hanson@apple.com
  • 5 edits in branches/safari-537.74-branch/Source

Versioning.

2:15 PM Changeset in webkit [161021] by matthew_hanson@apple.com
  • 1 copy in tags/Safari-537.74.4

New Tag.

2:07 PM Changeset in webkit [161020] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

[GTK][WK2] Simplify ProcessExecutablePathGtk
https://bugs.webkit.org/show_bug.cgi?id=126173

Reviewed by Martin Robinson.

Don't store process name strings in global variables -- each of the names is only used in the relevant
function, so the string can be directly passed into the findWebKitProcess function call.

Simplify the findWebKitProcess function. Make the execDirectory variable static so that g_getenv is only
called once, as it's not expected for the WEBKIT_EXEC_PATH environment variable to change during the runtime.

Introduce the getExecutablePath helper function that gets the current executable path and, if non-null, returns
the directory path of that executable. The helper function preserves the small performance improvement of querying
and processing the executable path only once.
The return value of getExecutablePath is stored in a static variable and is used to construct the process path
if the executable path was successfully retrieved.

  • Shared/gtk/ProcessExecutablePathGtk.cpp:

(WebKit::getExecutablePath):
(WebKit::findWebKitProcess):
(WebKit::executablePathOfWebProcess):
(WebKit::executablePathOfPluginProcess):
(WebKit::executablePathOfNetworkProcess):

2:05 PM Changeset in webkit [161019] by matthew_hanson@apple.com
  • 26 edits in branches/safari-537.74-branch

Merge 161003: <rdar://problem/15719584> plus driveby copyright updates.

2:05 PM Changeset in webkit [161018] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed build fix for GTK and EFL after r161007.

  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::waitForAndDispatchDidUpdateBackingStoreState):
Use std::chrono::milliseconds instead of double for the timeout parameter to
CoreIPC::Connection::waitForAndDispatchImmediately.

2:01 PM Changeset in webkit [161017] by Gustavo Noronha Silva
  • 7 edits in trunk

[GTK] [CMake] Add support for generating gtkdoc
https://bugs.webkit.org/show_bug.cgi?id=116376

Reviewed by Martin Robinson.

.:

  • Source/PlatformGTK.cmake: Added. New custom target that depends on a custom command

which calls our generate-gtkdoc script. It uses a docs-build.stamp for simplicity,
like the autotools build.

Source/WebKit2:

  • PlatformGTK.cmake: make generated API files go to DerivedSources/WebKit2, to

match the autotools build and gtkdoc.py's expectation.

Tools:

  • gtk/common.py: look for files in the directories used by the cmake build as well.
1:49 PM Changeset in webkit [161016] by Martin Robinson
  • 4 edits
    2 adds in trunk

[GTK] [CMake] Build the WebKit2 GObject API tests
https://bugs.webkit.org/show_bug.cgi?id=125683

Reviewed by Daniel Bates.

.:

  • Source/PlatformGTK.cmake: Load the WebKit2 tests file if necessary.
  • Source/cmake/FindATSPI.cmake: Added.
  • Source/cmake/OptionsGTK.cmake: Look for AT-SPI, but don't fail if it isn't found.

Source/WebKit2:

  • UIProcess/API/gtk/tests/CMakeLists.txt: Added.
1:48 PM Changeset in webkit [161015] by Martin Robinson
  • 30 edits
    2 adds in trunk

[GTK] [CMake] Build the WebKit1 GObject API tests
https://bugs.webkit.org/show_bug.cgi?id=125684

Reviewed by Daniel Bates.

.:

  • Source/PlatformGTK.cmake: Added.

Source/WebKit/gtk:

  • tests/CMakeLists.txt: Added.
  • tests/testapplicationcache.c: Use the WTF config.h instead of including the autotools configuration directly.
  • tests/testatk.c: Ditto.
  • tests/testatkroles.c: Ditto.
  • tests/testcontextmenu.c: Ditto.
  • tests/testcopyandpaste.c: Ditto.
  • tests/testdomdocument.c: Ditto.
  • tests/testdomdomwindow.c: Ditto.
  • tests/testdomnode.c: Ditto.
  • tests/testdownload.c: Ditto.
  • tests/testfavicondatabase.c: Ditto.
  • tests/testglobals.c: Ditto.
  • tests/testhittestresult.c: Ditto.
  • tests/testhttpbackend.c: Ditto.
  • tests/testkeyevents.c: Ditto.
  • tests/testloading.c: Ditto.
  • tests/testmimehandling.c: Ditto.
  • tests/testnetworkrequest.c: Ditto.
  • tests/testnetworkresponse.c: Ditto.
  • tests/testwebbackforwardlist.c: Ditto.
  • tests/testwebdatasource.c: Ditto.
  • tests/testwebframe.c: Ditto.
  • tests/testwebhistoryitem.c: Ditto.
  • tests/testwebinspector.c: Ditto.
  • tests/testwebplugindatabase.c: Ditto.
  • tests/testwebresource.c: Ditto.
  • tests/testwebsettings.c: Ditto.
  • tests/testwebview.c: Ditto.
  • tests/testwindow.c: Ditto.
1:39 PM Changeset in webkit [161014] by ryumiel@company100.net
  • 2 edits in trunk/Source/WebCore

Clear ScratchBuffer::m_lastLayerSize when clearing the scratch buffer.
https://bugs.webkit.org/show_bug.cgi?id=126150

Reviewed by Simon Fraser.

Since ScratchBuffer::clearScratchBuffer only clears m_lastRadius,
ShadowBlur doesn't draw shadow into the re-created scratch buffer if it
tries to draw shadow without blurRadius.

Clear m_lastLayerSize to empty is enought to ensure that there is no
drawn contents in the scratch buffer.

No new tests due to the flaky nature of reproducing the issue.

  • platform/graphics/ShadowBlur.cpp:

(WebCore::ScratchBuffer::clearScratchBuffer):

1:09 PM Changeset in webkit [161013] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

REGRESSION (r160672): Random remote layers are getting shadows
https://bugs.webkit.org/show_bug.cgi?id=126126

Reviewed by Anders Carlsson.

In http://trac.webkit.org/changeset/160672, we unconditionally
check m_properties.customAppearance without regard for whether it
has ever been initialized. This would result in sending an uninitialized
custom appearance to the UI process, which could end up requesting a shadow.

  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTransaction::LayerProperties::LayerProperties):
Initialize LayerProperties to the CoreAnimation defaults.

  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(PlatformCALayerRemote::PlatformCALayerRemote):
Remove wrongly-placed default initialization of contentsScale;
there's no reason to send it across the wire for every new layer
if it's left at the default.

12:44 PM Changeset in webkit [161012] by fpizlo@apple.com
  • 3 edits in branches/jsCStack/Source/JavaScriptCore

CStack Branch: Several dfg-arguments-osr-exit tests fail
https://bugs.webkit.org/show_bug.cgi?id=126170

Reviewed by Michael Saboff.

OSR exit makes calls. It makes those calls after putting things into the stack at offsets
that make sense in the baseline JIT. That means that if those calls spill things to the
stack, they'll overwrite what the OSR exit had recovered for the baseline JIT.

Need to adjust SP to a conservative value for the baseline JIT at the top of exit. Note
that the FTL OSR exit already does this.

  • dfg/DFGOSRExitCompiler32_64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

12:25 PM Changeset in webkit [161011] by ap@apple.com
  • 2 edits in trunk/LayoutTests

svg/animations/getCurrentTime-pause-unpause.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=124933

  • platform/mac/TestExpectations: Marking as such.
12:21 PM Changeset in webkit [161010] by benjamin@webkit.org
  • 4 edits in trunk/Source/WebCore

Add id matching to the Selector Code Generator
https://bugs.webkit.org/show_bug.cgi?id=126154

Reviewed by Antti Koivisto.

Compile matching for #id selectors. IDs are Atomic String so it is just a matter
of comparing the pointers.

No attempt is made at optimizing for the double #id case because such problem
do not really happen outside tests.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorFragment::SelectorFragment):
(WebCore::SelectorCompiler::SelectorCodeGenerator::SelectorCodeGenerator):
(WebCore::SelectorCompiler::SelectorCodeGenerator::compile):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementDataMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasId):

  • dom/Element.h:

(WebCore::Element::elementDataMemoryOffset):

  • dom/ElementData.h:

(WebCore::ElementData::idForStyleResolutionMemoryOffset):

12:04 PM WebKitGTK/2.2.x edited by zandobersek@gmail.com
Add r160997 to the list of proposed merges for 2.2.4. (diff)
11:51 AM Changeset in webkit [161009] by oliver@apple.com
  • 12 edits in trunk/Source

Update custom setter implementations to perform type checks
https://bugs.webkit.org/show_bug.cgi?id=126171

Reviewed by Daniel Bates.

Source/JavaScriptCore:

Modify the setter function signature to take encoded values
as we're changing the setter usage everywhere anyway.

  • runtime/Lookup.h:

(JSC::putEntry):

Source/WebCore:

Update the bindings code generator for setters so that they perform a real
type check.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateAttributeEventListenerCall):
(GenerateHeader):
(GenerateImplementation):

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

(WebCore::setJSTestInterfaceConstructorImplementsStaticAttr):
(WebCore::setJSTestInterfaceImplementsStr2):
(WebCore::setJSTestInterfaceImplementsStr3):
(WebCore::setJSTestInterfaceImplementsNode):
(WebCore::setJSTestInterfaceConstructorSupplementalStaticAttr):
(WebCore::setJSTestInterfaceSupplementalStr2):
(WebCore::setJSTestInterfaceSupplementalStr3):
(WebCore::setJSTestInterfaceSupplementalNode):

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

(WebCore::setJSTestObjConstructorStaticStringAttr):
(WebCore::setJSTestObjTestSubObjEnabledBySettingConstructor):
(WebCore::setJSTestObjEnumAttr):
(WebCore::setJSTestObjByteAttr):
(WebCore::setJSTestObjOctetAttr):
(WebCore::setJSTestObjShortAttr):
(WebCore::setJSTestObjUnsignedShortAttr):
(WebCore::setJSTestObjLongAttr):
(WebCore::setJSTestObjLongLongAttr):
(WebCore::setJSTestObjUnsignedLongLongAttr):
(WebCore::setJSTestObjStringAttr):
(WebCore::setJSTestObjTestObjAttr):
(WebCore::setJSTestObjXMLObjAttr):
(WebCore::setJSTestObjCreate):
(WebCore::setJSTestObjReflectedStringAttr):
(WebCore::setJSTestObjReflectedIntegralAttr):
(WebCore::setJSTestObjReflectedUnsignedIntegralAttr):
(WebCore::setJSTestObjReflectedBooleanAttr):
(WebCore::setJSTestObjReflectedURLAttr):
(WebCore::setJSTestObjReflectedCustomIntegralAttr):
(WebCore::setJSTestObjReflectedCustomBooleanAttr):
(WebCore::setJSTestObjReflectedCustomURLAttr):
(WebCore::setJSTestObjTypedArrayAttr):
(WebCore::setJSTestObjAttrWithGetterException):
(WebCore::setJSTestObjAttrWithSetterException):
(WebCore::setJSTestObjStringAttrWithGetterException):
(WebCore::setJSTestObjStringAttrWithSetterException):
(WebCore::setJSTestObjCustomAttr):
(WebCore::setJSTestObjWithScriptStateAttribute):
(WebCore::setJSTestObjWithScriptExecutionContextAttribute):
(WebCore::setJSTestObjWithScriptStateAttributeRaises):
(WebCore::setJSTestObjWithScriptExecutionContextAttributeRaises):
(WebCore::setJSTestObjWithScriptExecutionContextAndScriptStateAttribute):
(WebCore::setJSTestObjWithScriptExecutionContextAndScriptStateAttributeRaises):
(WebCore::setJSTestObjWithScriptExecutionContextAndScriptStateWithSpacesAttribute):
(WebCore::setJSTestObjWithScriptArgumentsAndCallStackAttribute):
(WebCore::setJSTestObjConditionalAttr1):
(WebCore::setJSTestObjConditionalAttr2):
(WebCore::setJSTestObjConditionalAttr3):
(WebCore::setJSTestObjConditionalAttr4Constructor):
(WebCore::setJSTestObjConditionalAttr5Constructor):
(WebCore::setJSTestObjConditionalAttr6Constructor):
(WebCore::setJSTestObjAnyAttribute):
(WebCore::setJSTestObjMutablePoint):
(WebCore::setJSTestObjImmutablePoint):
(WebCore::setJSTestObjStrawberry):
(WebCore::setJSTestObjStrictFloat):
(WebCore::setJSTestObjId):
(WebCore::setJSTestObjReplaceableAttribute):
(WebCore::setJSTestObjNullableLongSettableAttribute):
(WebCore::setJSTestObjNullableStringValue):
(WebCore::setJSTestObjAttributeWithReservedEnumType):

  • bindings/scripts/test/JS/JSTestObj.h:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:

(WebCore::setJSTestSerializedScriptValueInterfaceValue):
(WebCore::setJSTestSerializedScriptValueInterfaceCachedValue):

  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
  • bindings/scripts/test/JS/JSTestTypedefs.cpp:

(WebCore::setJSTestTypedefsUnsignedLongLongAttr):
(WebCore::setJSTestTypedefsImmutableSerializedScriptValue):
(WebCore::setJSTestTypedefsAttrWithGetterException):
(WebCore::setJSTestTypedefsAttrWithSetterException):
(WebCore::setJSTestTypedefsStringAttrWithGetterException):
(WebCore::setJSTestTypedefsStringAttrWithSetterException):

  • bindings/scripts/test/JS/JSTestTypedefs.h:
11:43 AM Changeset in webkit [161008] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

REGRESSION (r160847): fast/dynamic/paused-event-dispatch.html is failing
https://bugs.webkit.org/show_bug.cgi?id=126163

Unreviewed. Try increasing the timeouts after r160896.

  • fast/dynamic/paused-event-dispatch.html:
11:34 AM Changeset in webkit [161007] by andersca@apple.com
  • 9 edits in trunk/Source/WebKit2

Use std::chrono::milliseconds for message wait timeouts in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=126168

Reviewed by Sam Weinig.

  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::waitForMessage):

  • Platform/CoreIPC/Connection.h:

(CoreIPC::Connection::waitForAndDispatchImmediately):

  • UIProcess/API/mac/WKView.mm:

(-[WKView forceAsyncDrawingAreaSizeUpdate:]):
(-[WKView waitForAsyncDrawingAreaSizeUpdate]):

  • UIProcess/DrawingAreaProxy.cpp:
  • UIProcess/DrawingAreaProxy.h:

(WebKit::DrawingAreaProxy::didUpdateBackingStoreStateTimeout):
(WebKit::DrawingAreaProxy::waitForPossibleGeometryUpdate):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::waitForDidUpdateViewState):

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

(WebKit::TiledCoreAnimationDrawingAreaProxy::waitForPossibleGeometryUpdate):

11:15 AM Changeset in webkit [161006] by fpizlo@apple.com
  • 7 edits in branches/jsCStack/Source/JavaScriptCore

cStack branch doesn't run navier-stokes because closure calls aren't implemented yet
https://bugs.webkit.org/show_bug.cgi?id=126141

Reviewed by Michael Saboff.

Add a bunch of assertions regarding the sanity of argument counts. This is a great way of
making sure that SP/BP point to the right place.

Used that to diagnose problems with closure calls. Closure call linking expects that SP is
set up correctly very early on. The DFG JIT was doing this correctly, but the baseline JIT
wasn't: it was setting up T1 as a fake SP and then setting up SP for real very late. This
wasn't doing us any good and it was making closure calls fail.

Also, closure calls were still referring to BP instead of SP and assuming that the caller
was adjusting BP. Obviously, that's not what we do anymore.

These fixes make navier-stokes run. It probably fixes other bugs, but I haven't looked at
those yet.

  • dfg/DFGSpeculativeJIT.cpp:

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

  • jit/AssemblyHelpers.cpp:

(JSC::AssemblyHelpers::jitAssertArgumentCountSane):

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::jitAssertArgumentCountSane):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):

  • jit/JITCall.cpp:

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

  • jit/Repatch.cpp:

(JSC::linkClosureCall):

11:04 AM Changeset in webkit [161005] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Include <condition_variable>, not <thread>.

  • Platform/CoreIPC/Connection.h:
  • Shared/BlockingResponseMap.h:
  • UIProcess/API/mac/WKPrintingView.h:
10:49 AM Changeset in webkit [161004] by Lucas Forschler
  • 1 edit in trunk/Source/WebCore/English.lproj/Localizable.strings

Revert accidental Localizable.string change after r161003.

10:45 AM Changeset in webkit [161003] by Lucas Forschler
  • 26 edits in trunk

Source/JavaScriptCore: <rdar://problem/15682948> Update copyright strings

Reviewed by Dan Bernstein.

  • Info.plist:
  • JavaScriptCore.vcxproj/JavaScriptCore.resources/Info.plist:

Source/WebCore: <rdar://problem/15682948> Update copyright strings

Reviewed by Dan Bernstein

  • Info.plist:

Source/WebKit/mac: <rdar://problem/15682948> Update copyright strings

Reviewed by Dan Bernstein.

  • Info.plist:

Source/WebKit2: <rdar://problem/15682948> Update copyright strings

Reviewed by Dan Bernstein

  • DatabaseProcess/EntryPoint/mac/LegacyProcess/Info.plist:
  • DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService.Development/Info.plist:
  • DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService/Info.plist:
  • Info.plist:
  • NetworkProcess/EntryPoint/mac/LegacyProcess/Info.plist:
  • NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info.plist:
  • NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX.plist:
  • NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-iOS.plist:
  • PluginProcess/EntryPoint/mac/LegacyProcess/Info.plist:
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64.Info.plist:
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/Info.plist:
  • WebProcess/EntryPoint/mac/LegacyProcess/Info.plist:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info.plist:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService/Info.plist:

WebKitLibraries: <rdar://problem/15682948> Update copyright strings

Reviewed by Dan Bernstein.

  • win/tools/scripts/COPYRIGHT-END-YEAR:
10:36 AM Changeset in webkit [161002] by andersca@apple.com
  • 6 edits in trunk/Source/WebKit2

Convert ThreadCondition in WebKit2 over to std::condition_variable
https://bugs.webkit.org/show_bug.cgi?id=126161

Reviewed by Sam Weinig.

  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::waitForMessage):
(CoreIPC::Connection::processIncomingMessage):

  • Platform/CoreIPC/Connection.h:
  • Shared/BlockingResponseMap.h:

(BlockingResponseMap::waitForResponse):
(BlockingResponseMap::didReceiveResponse):
(BlockingResponseMap::cancel):

  • UIProcess/API/mac/WKPrintingView.h:
  • UIProcess/API/mac/WKPrintingView.mm:

(pageDidDrawToPDF):
(-[WKPrintingView _preparePDFDataForPrintingOnSecondaryThread]):
(prepareDataForPrintingOnSecondaryThread):
(-[WKPrintingView knowsPageRange:]):

10:27 AM Changeset in webkit [161001] by commit-queue@webkit.org
  • 5 edits
    5 deletes in trunk

Unreviewed, rolling out r160945.
http://trac.webkit.org/changeset/160945
https://bugs.webkit.org/show_bug.cgi?id=126164

Seems to have broken multiple canvas tests (Requested by ap on
#webkit).

PerformanceTests:

  • Canvas/reuse.html: Removed.

Source/WebCore:

  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/cg/ImageBufferBackingStoreCache.cpp: Removed.
  • platform/graphics/cg/ImageBufferBackingStoreCache.h: Removed.
  • platform/graphics/cg/ImageBufferCG.cpp:

(WebCore::createIOSurface):
(WebCore::ImageBuffer::ImageBuffer):
(WebCore::ImageBuffer::~ImageBuffer):

LayoutTests:

  • fast/canvas/canvas-backing-store-reuse-expected.txt: Removed.
  • fast/canvas/canvas-backing-store-reuse.html: Removed.
10:24 AM Changeset in webkit [161000] by eric.carlson@apple.com
  • 7 edits
    2 moves
    1 add
    1 delete in trunk/Source/WebCore

AudioSessionManager should be MediaSessionManager
https://bugs.webkit.org/show_bug.cgi?id=126087

Reviewed by Jer Noble.

No new tests, no change in functionality.

  • WebCore.xcodeproj/project.pbxproj: Change file names.
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement): MediaSessionManagerToken::create() takes a client

interface instead of the media type.

  • html/HTMLMediaElement.h:
  • platform/audio/AudioSessionListener.h: Include <wtf/Noncopyable.h>.

AudioSessionManager.* -> MediaSessionManager.*

  • platform/audio/AudioSessionManager.cpp: Removed.
  • platform/audio/AudioSessionManager.h: Removed.
  • platform/audio/MediaSessionManager.cpp: Copied from Source/WebCore/platform/audio/AudioSessionManager.cpp.

(MediaSessionManagerToken::create):
(MediaSessionManagerToken::MediaSessionManagerToken):
(MediaSessionManagerToken::~MediaSessionManagerToken):
(MediaSessionManager::sharedManager):
(MediaSessionManager::MediaSessionManager):
(MediaSessionManager::has):
(MediaSessionManager::count):
(MediaSessionManager::addToken):
(MediaSessionManager::removeToken):
(MediaSessionManager::updateSessionState):

  • platform/audio/MediaSessionManager.h: Copied from Source/WebCore/platform/audio/AudioSessionManager.h.
  • platform/audio/mac/AudioDestinationMac.cpp:

(WebCore::AudioDestinationMac::AudioDestinationMac): MediaSessionManagerToken::create() takes a

client interface instead of the media type.

  • platform/audio/mac/AudioDestinationMac.h:
  • platform/audio/mac/AudioSessionMac.cpp:
  • platform/audio/mac/AudioSessionManagerMac.cpp: Removed.
  • platform/audio/mac/MediaSessionManagerMac.cpp: Copied from Source/WebCore/platform/audio/mac/AudioSessionManagerMac.cpp.

(MediaSessionManager::updateSessionState):

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

Layout tests editing/selection/5057506.html and editing/selection/5057506-2.html
frequently time out on Mac WK2
https://bugs.webkit.org/show_bug.cgi?id=124437

  • platform/mac-wk2/TestExpectations: Marked the latter test accordingly. It used

to me marked as image failure, but I don't see this happen recently on the dashboard.

9:48 AM Changeset in webkit [160998] by mark.lam@apple.com
  • 1 edit in branches/jsCStack/Source/JavaScriptCore/ChangeLog

Updated review status of r160982.

8:28 AM Changeset in webkit [160997] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

webkit gtk 2.2.3 stable tarball compilation error
https://bugs.webkit.org/show_bug.cgi?id=125987

Reviewed by Gustavo Noronha Silva.

Only try including <gdk/gdkwayland.h> and using GDK_IS_WAYLAND_DISPLAY if the Wayland support has been
enabled and when not compiling with GTK+ 2 (which occurs when building for libPlatformGtk2).

  • platform/graphics/GLContext.cpp:

(WebCore::GLContext::createContextForWindow):

7:55 AM Changeset in webkit [160996] by zandobersek@gmail.com
  • 4 edits in trunk/Source

[GTK] Clean up compiler optimizations flags for libWTF, libJSC
https://bugs.webkit.org/show_bug.cgi?id=126157

Reviewed by Gustavo Noronha Silva.

Source/JavaScriptCore:

  • GNUmakefile.am: Remove the -fstrict-aliasing and -O3 compiler flags for libWTF.la. -O3 gets

overridden by -O2 that's listed in CXXFLAGS (or -O0 in case of debug builds) and -fstrict-aliasing
is enabled when -O2 is used (and shouldn't be enabled in debug builds anyway).

Source/WTF:

  • GNUmakefile.am: Remove the -fstrict-aliasing and -O3 compiler flags for libWTF.la. -O3 gets

overridden by -O2 that's listed in CXXFLAGS (or -O0 in case of debug builds) and -fstrict-aliasing
is enabled when -O2 is used (and shouldn't be enabled in debug builds anyway).

6:46 AM Changeset in webkit [160995] by Martin Robinson
  • 2 edits in trunk/Source/JavaScriptCore

[CMake] Fix typo from r160812
https://bugs.webkit.org/show_bug.cgi?id=126145

Reviewed by Gustavo Noronha Silva.

  • CMakeLists.txt: Fix typo when detecting the type of library.
6:45 AM Changeset in webkit [160994] by Martin Robinson
  • 9 edits in trunk

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

[GTK][CMake] libtool-compatible soversion calculation
Reviewed by Gustavo Noronha Silva.

  • Source/cmake/OptionsGTK.cmake: Specify the appropriate libtool triples and use

the CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE macro to specify the library-specific
version information.

  • Source/cmake/WebKitHelpers.cmake: Add some helpful macros.

Source/JavaScriptCore: [GTK][CMake] libtool-compatible soversion calculation
https://bugs.webkit.org/show_bug.cgi?id=125511

Reviewed by Gustavo Noronha Silva.

  • CMakeLists.txt: Use the POPULATE_LIBRARY_VERSION macro and the

library-specific version information.

Source/WebKit: [GTK][CMake] libtool-compatible soversion calculation
https://bugs.webkit.org/show_bug.cgi?id=125511

Reviewed by Gustavo Noronha Silva.

  • CMakeLists.txt: Use the POPULATE_LIBRARY_VERSION macro and the

library-specific version information.

Source/WebKit2: [GTK][CMake] libtool-compatible soversion calculation
https://bugs.webkit.org/show_bug.cgi?id=125511

Reviewed by Gustavo Noronha Silva.

  • CMakeLists.txt: Use the POPULATE_LIBRARY_VERSION macro and the

library-specific version information.

5:35 AM Changeset in webkit [160993] by Gustavo Noronha Silva
  • 7 edits
    1 add in trunk

[GTK] [CMake] Generate pkg-config files
https://bugs.webkit.org/show_bug.cgi?id=125685

Reviewed by Martin Robinson.

.:

  • Source/cmake/OptionsGTK.cmake: set variables used for filling in the values in the

pkg-config files.

Source/JavaScriptCore:

  • PlatformGTK.cmake: Added. Generate javascriptcoregtk-3.0.pc.

Source/WebKit:

  • PlatformGTK.cmake: generate webkitgtk-3.0.pc.

Source/WebKit2:

  • PlatformGTK.cmake: generate webkit2gtk.pc.
5:15 AM Changeset in webkit [160992] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[GStreamer] video/audio seeking is not unified.
https://bugs.webkit.org/show_bug.cgi?id=125852

Patch by Piotr Grad <p.grad@samsung.com> on 2013-12-23
Reviewed by Philippe Normand.

This bug is fixing regression with seeking audio/video elements and unifies seeking
in MediaPlayerPrivateGStreamer.

Test: media/video-seek-with-negative-playback.html

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::seek):
(WebCore::MediaPlayerPrivateGStreamer::seekIncludingRate):
(WebCore::MediaPlayerPrivateGStreamer::setRate):
(WebCore::MediaPlayerPrivateGStreamer::updateStates):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
2:18 AM Changeset in webkit [160991] by ChangSeok Oh
  • 4 edits in trunk/Source/WebCore

[GTK][WK2] WebGL is not working with GLES
https://bugs.webkit.org/show_bug.cgi?id=126138

Reviewed by Martin Robinson.

m_texture has been unnecessarily regenerated. It's generated in GraphicsContext3D
constructor for offscreen rendering. And m_compositorTexture is used by only Mac port.
They create it in their GraphicsContext3D constructor so that we don't need to recreate it
in GC3DOpenGLES::reshapeFBOs.

No new tests since no functionality changed.

  • platform/graphics/cairo/GraphicsContext3DCairo.cpp:

(WebCore::GraphicsContext3D::~GraphicsContext3D):

  • platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:

(WebCore::GraphicsContext3D::reshapeFBOs):

  • platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:

(WebCore::GraphicsContext3D::reshapeFBOs):

1:22 AM Changeset in webkit [160990] by Michał Pakuła vel Rutka
  • 18 edits
    2 adds in trunk/LayoutTests

Unreviewed EFL gardening

Rebaseline tests after 160908.

  • platform/efl/TestExpectations:
  • platform/efl/editing/inserting/break-blockquote-after-delete-expected.png: Added.
  • platform/efl/editing/inserting/break-blockquote-after-delete-expected.txt: Added.
  • platform/efl/fast/css-generated-content/table-row-group-to-inline-expected.txt:
  • platform/efl/fast/dynamic/011-expected.txt:
  • platform/efl/fast/forms/formmove3-expected.txt:
  • platform/efl/fast/forms/preserveFormDuringResidualStyle-expected.txt:
  • platform/efl/fast/invalid/001-expected.txt:
  • platform/efl/fast/invalid/003-expected.txt:
  • platform/efl/fast/invalid/004-expected.txt:
  • platform/efl/fast/invalid/007-expected.txt:
  • platform/efl/fast/invalid/019-expected.txt:
  • platform/efl/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt:
  • platform/efl/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt:
  • platform/efl/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.txt:
  • platform/efl/fast/ruby/ruby-base-merge-block-children-crash-expected.txt:
  • platform/efl/tables/mozilla/bugs/bug113235-1-expected.txt:
  • platform/efl/tables/mozilla/bugs/bug647-expected.txt:
  • platform/efl/tables/mozilla/other/wa_table_tr_align-expected.txt:
1:07 AM Changeset in webkit [160989] by Carlos Garcia Campos
  • 9 edits in trunk

[GTK] Build with network process unconditionally
https://bugs.webkit.org/show_bug.cgi?id=126128

Reviewed by Martin Robinson.

.:

  • Source/autotools/SetupAutomake.m4: Remove network process

conditional for Makefiles.

  • Source/autotools/SetupWebKitFeatures.m4: Remove network process

feature.

Source/WebKit2:

Build always with the network process enabled and decide whether
to use it or not using an environment variable. This makes a lot
easier to work on the network process and also to switch between
using it or not.

  • GNUmakefile.am: Make sure we always include the WebKit2Prefix.h.
  • UIProcess/API/gtk/WebKitWebContext.cpp:

(createDefaultWebContext): Use the network process when
WEBKIT_USE_NETWORK_PROCESS environment variable is present.

  • WebKit2Prefix.h: Always enable network process for GTK port.

Tools:

  • Scripts/webkitperl/FeatureList.pm: Remove network-process

feature command line option.

12:41 AM Changeset in webkit [160988] by brian.holt@samsung.com
  • 3 edits in trunk/Source/WebKit2

[WK2] Implement platform specific Resource Response for SOUP
https://bugs.webkit.org/show_bug.cgi?id=125422

Reviewed by Martin Robinson.

SOUP specific Resource Response implementation for the Network
Process.

  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::continueWillSendRequest):

  • WebProcess/Network/WebResourceLoader.cpp:

(WebKit::WebResourceLoader::didReceiveResponseWithCertificateInfo):

12:21 AM Changeset in webkit [160987] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

[GTK] run-gtk-tests should always run glib tests with -k option
https://bugs.webkit.org/show_bug.cgi?id=126132

Reviewed by Philippe Normand.

With -k command line option, gtester continues running all other
test cases after a failure.

  • Scripts/run-gtk-tests:

(TestRunner._run_test_glib): Use -k option when runing glib tests
to not stop on failure.

Dec 22, 2013:

10:20 PM Changeset in webkit [160986] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit2

[WK2][SOUP] WebContext::allowSpecificHTTPSCertificateForHost does not work correctly when m_usesNetworkProcess is false
https://bugs.webkit.org/show_bug.cgi?id=125564

Reviewed Carlos Garcia Campos.

WebContext::allowSpecificHTTPSCertificateForHost should send
AllowSpecificHTTPSCertificateForHost to the web process when
m_usesNetworkProcess is false. Also we shouldn't guard
WebProcess::allowSpecificHTTPSCertificateForHost with
!ENABLE(NETWORK_PROCESS) because we need this method when
m_usesNetworkProcess is false.

Patch by Kwang Yul Seo <skyul@company100.net> on 2013-12-22

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::allowSpecificHTTPSCertificateForHost):

  • WebProcess/WebProcess.h:
  • WebProcess/WebProcess.messages.in:
  • WebProcess/soup/WebProcessSoup.cpp:
10:08 PM Changeset in webkit [160985] by Martin Robinson
  • 6 edits
    2 adds in trunk

[GTK][CMake] Integrate GResource for inspector files (and others?)
https://bugs.webkit.org/show_bug.cgi?id=125569

Reviewed by Gustavo Noronha Silva.

Source/WebInspectorUI:

  • GNUmakefile.am: Use the new generation script instead of generating with

shell scripting in the makefile.

Source/WebKit2:

  • GNUmakefile.am: Use the newly added static WebKit2InspectorGResourceBundle.xml

instead of generating the same file each time.

  • PlatformGTK.cmake: Add support for building the GResource bundles into WebKit2.
  • UIProcess/API/gtk/WebKit2InspectorGResourceBundle.xml: Added.

Tools:

  • gtk/generate-inspector-gresource-manifest.py: Added.
8:40 PM Changeset in webkit [160984] by Martin Robinson
  • 2 edits in trunk/Source/WebKit

Small build fix for GTK+ with the CMake build

  • CMakeLists.txt: Remove duplicate include directory and add missing directories

necessary for GTK+.

4:45 PM Changeset in webkit [160983] by benjamin@webkit.org
  • 8 edits
    2 adds in trunk/Source

Create a skeleton for CSS Selector code generation
https://bugs.webkit.org/show_bug.cgi?id=126044

Source/JavaScriptCore:

Reviewed by Antti Koivisto and Gavin Barraclough.

  • assembler/LinkBuffer.h:

Add a new owner UID for code compiled for CSS.
Export the symbols needed to link code from WebCore.

Source/WebCore:

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-12-22
Reviewed by Antti Koivisto and Gavin Barraclough.

Add CSSCompiler, which provides the basic infrastructure to compile
CSS Selectors on x86_64.

Compilation happens in two phases.
1) The various matching and relation of each CSSSelector is aggregated into units

matching a single element: SelectorFragment.
SelectorFragment also knows about the relations between different fragments,
and contains all the information to generate the code for a particular element.

2) The compiler then goes over the fragments, and generate code based on the information

of each fragment.

It the current state, SelectorCompiler only compiles the tag matching selectors and
any of the relation between selectors.

Depending on the relation and position of a fragment, failure on traversal or matching
does not necessarily causes the complete selector. A failure can cause matching to
resume from the parent or the sibling of a previously visisted node.
The implementation of this is done through the BacktrackingAction. In case of failure,
the next starting state is setup and the program counter jumps back to the appropriate
starting point.

When backtracking, the method used to save the starting point depends on the type
of backtracking.
The child/parent relation (">") is very common so it uses an additional register to keep
the next starting point (m_descendantBacktrackingStart).
The indirect sibling relation ("~") is much less common and uses the stack to save
the next starting point.

  • WebCore.xcodeproj/project.pbxproj:
  • cssjit/SelectorCompiler.cpp: Added.

(WebCore::SelectorCompiler::SelectorFragment::SelectorFragment):
(WebCore::SelectorCompiler::compileSelector):
(WebCore::SelectorCompiler::fragmentRelationForSelectorRelation):
(WebCore::SelectorCompiler::SelectorCodeGenerator::SelectorCodeGenerator):
(WebCore::SelectorCompiler::SelectorCodeGenerator::compile):
(WebCore::SelectorCompiler::updateChainStates):
(WebCore::SelectorCompiler::isFirstAncestor):
(WebCore::SelectorCompiler::isFirstAdjacent):
(WebCore::SelectorCompiler::isAfterChildRelation):
(WebCore::SelectorCompiler::solveBacktrackingAction):
(WebCore::SelectorCompiler::requiresAdjacentTail):
(WebCore::SelectorCompiler::requiresDescendantTail):
(WebCore::SelectorCompiler::SelectorCodeGenerator::computeBacktrackingInformation):
(WebCore::SelectorCompiler::testIsElementFlagOnNode):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateWalkToParentElement):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateParentElementTreeWalker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateAncestorTreeWalker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateWalkToPreviousAdjacent):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateDirectAdjacentTreeWalker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateIndirectAdjacentTreeWalker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::markParentElementIfResolvingStyle):
(WebCore::SelectorCompiler::SelectorCodeGenerator::linkFailures):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateAdjacentBacktrackingTail):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateDescendantBacktrackingTail):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateBacktrackingTailsIfNeeded):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasTagName):

  • cssjit/SelectorCompiler.h: Added.

(WebCore::SelectorCompilationStatus::SelectorCompilationStatus):
(WebCore::SelectorCompilationStatus::operator Status):
(WebCore::SelectorCompiler::simpleSelectorCheckerFunction):
(WebCore::SelectorCompiler::selectorCheckerFunctionWithCheckingContext):

  • dom/Element.cpp:

(WebCore::Element::setChildrenAffectedByDirectAdjacentRules):
(WebCore::Element::setChildrenAffectedByForwardPositionalRules):

  • dom/Element.h:

(WebCore::Element::tagQNameMemoryOffset):
(WebCore::Element::setChildrenAffectedByForwardPositionalRules):

  • dom/Node.h:

(WebCore::Node::parentNodeMemoryOffset):
(WebCore::Node::previousSiblingMemoryOffset):
(WebCore::Node::nodeFlagsMemoryOffset):
(WebCore::Node::flagIsElement):

  • dom/QualifiedName.h:

(WebCore::QualifiedName::QualifiedNameImpl::localNameMemoryOffset):
(WebCore::QualifiedName::QualifiedNameImpl::namespaceMemoryOffset):
(WebCore::QualifiedName::implMemoryOffset):

4:02 PM Changeset in webkit [160982] by mark.lam@apple.com
  • 4 edits in branches/jsCStack/Source/JavaScriptCore

CStack: Add #if ENABLE(LLINT_C_LOOP) to C loop LLINT only parts of JSStack.
https://bugs.webkit.org/show_bug.cgi?id=126140.

Not yet reviewed.

Also moved startOfFrameFor() to the ENABLE(DEBUG_JSSTACK) section because
it's only needed there.

  • interpreter/JSStack.cpp:

(JSC::JSStack::JSStack):
(JSC::JSStack::gatherConservativeRoots):
(JSC::JSStack::sanitizeStack):

  • interpreter/JSStack.h:

(JSC::JSStack::gatherConservativeRoots):
(JSC::JSStack::sanitizeStack):
(JSC::JSStack::initializeThreading):

  • interpreter/JSStackInlines.h:

(JSC::JSStack::topOfFrameFor):

2:26 PM Changeset in webkit [160981] by mark.lam@apple.com
  • 3 edits in branches/jsCStack/Source/JavaScriptCore

CStack: Fixed some JSStack on C Stack boundary computations.
https://bugs.webkit.org/show_bug.cgi?id=126139.

Not yet reviewed.

  1. Implement committedByteCount() for JSStack on the C stack using the current stack usage as an estimate of committed stack memory.
  2. Implement lowAddress() and highAddress() for JSStack on the C stack for containsAddress(). lowAddress() will be the top of the JS stack. highAddress() will be 1 past the end of the JS stack.
  3. Moved some functions around in preparation for an upcoming patch to #if out code which is only used when ENABLE(LLINT_C_LOOP)
  • interpreter/JSStack.cpp:

(JSC::JSStack::lowAddress):
(JSC::JSStack::highAddress):
(JSC::JSStack::committedByteCount):

  • interpreter/JSStack.h:

(JSC::JSStack::containsAddress):
(JSC::JSStack::lowAddress):

10:42 AM Changeset in webkit [160980] by fpizlo@apple.com
  • 19 edits in branches/jsCStack/Source/JavaScriptCore

It should be possible to run the full version of V8v7/crypto with the FTL and call IC's
https://bugs.webkit.org/show_bug.cgi?id=126116

Not yet reviewed.

This involved a number of minor fixes:

  • CallLinkInfo::unlink() was assuming that repatchBuffer.codeBlock() is the caller. It's actually the callee. So, to determine if the caller requires register preservation, we need an extra bit to say whether the CallLinkInfo belongs to an FTL JITCode.


  • A lot of bugs arise from us incorrectly preserving (or failing to preserve) registers. This adds a bunch of jitAssertTagsInPlace() assertion that helps to catch a bunch of those bugs.


  • Apparently the compact_unwind sometimes has garbage after its one entry. This changes our unwind parser so that it doesn't assert that the second entry is null, but it does assert that the first entry corresponds to our generated function.


  • The native function thunks assume that tags are set up and that they can clobber any registers. This breaks if we call the thunks from the FTL. This patch fixes the bug by wrapping just those thunks in a DirectJITCode, which has the register preservation wrappers. This probably ends up making sense because the FTL *really* should have intrinsics for all of those thunks. As part of this change, I refactored how NativeExecutable gets its JITCode to make things somewhat more explicit.


We still have a bunch of known performance bugs to fix, but the FTL is already at near
parity with the DFG on V8v7/crypto. This is pretty cool considering the FTL's other
speed-ups, and the fact that crypto has been our primary DFG tuning test for the past
2.5 years.

  • bytecode/CallLinkInfo.cpp:

(JSC::CallLinkInfo::unlink):

  • bytecode/CallLinkInfo.h:

(JSC::CallLinkInfo::CallLinkInfo):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::compileEntry):

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompilerCommon.cpp:

(JSC::DFG::adjustAndJumpToTarget):

  • dfg/DFGSpeculativeJIT.cpp:

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

  • ftl/FTLCompile.cpp:

(JSC::FTL::compile):

  • ftl/FTLJSCall.cpp:

(JSC::FTL::JSCall::link):

  • ftl/FTLUnwindInfo.cpp:

(JSC::FTL::UnwindInfo::parse):

  • ftl/FTLUnwindInfo.h:
  • jit/AssemblyHelpers.cpp:

(JSC::AssemblyHelpers::jitAssertTagsInPlace):

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::jitAssertTagsInPlace):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):

  • jit/JITCode.cpp:
  • jit/JITCode.h:
  • jit/JITThunks.cpp:

(JSC::JITThunks::hostFunctionStub):

  • jit/RegisterPreservationWrapperGenerator.cpp:

(JSC::generateRegisterPreservationWrapper):

  • runtime/Executable.h:

(JSC::NativeExecutable::create):

10:15 AM Changeset in webkit [160979] by mihnea@adobe.com
  • 3 edits
    2 adds in trunk

[CSSRegions] Crash when trying to select content from invalid region
https://bugs.webkit.org/show_bug.cgi?id=126113

Reviewed by Antti Koivisto.

Source/WebCore:

After fix for https://bugs.webkit.org/show_bug.cgi?id=120769, positionForPoint for a region attempts to use the associated named flow to perform its task.
However, this should happen only when the region is valid. If the region is invalid, part of a dependency cycle, positionForPoint should behave as usual
for a block instead of a region, otherwise it may run into an infinite loop due to cyclic dependencies and a crash will occur.

This patch ensures that positionForPoint region specifie behaviour is followed only if the region is valid - not part of a dependency cycle.

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

  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::positionForPoint):

LayoutTests:

  • fast/regions/selection/invalid-region-selection-crash-expected.txt: Added.
  • fast/regions/selection/invalid-region-selection-crash.html: Added.
10:03 AM Changeset in webkit [160978] by mihnea@adobe.com
  • 9 edits in trunk/LayoutTests

[CSSRegions] Clean-up selection tests a bit
https://bugs.webkit.org/show_bug.cgi?id=126135

Reviewed by Dirk Schulze.

Move function clearSelection in helper.js. Combine checkResult() from position-for-point* and position-for-point-1*
into a single function, checkSelectionResult() and move it into helper.js too.

  • fast/regions/resources/helper.js:
  • fast/regions/selection/position-for-point-1-vert-lr.html:
  • fast/regions/selection/position-for-point-1-vert-rl.html:
  • fast/regions/selection/position-for-point-1.html:
  • fast/regions/selection/position-for-point-vert-lr.html:
  • fast/regions/selection/position-for-point-vert-rl.html:
  • fast/regions/selection/position-for-point.html:
  • fast/regions/selection/selecting-text-through-different-region-flows.html:
8:45 AM Changeset in webkit [160977] by barraclough@apple.com
  • 24 edits in trunk/Source/WebKit2

URTBF after r160971 to try to make EFL build again.

Patch by Csaba Osztrogonác <Csaba Osztrogonác> on 2013-12-22

  • WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp:

(WebKit::internalError):

8:33 AM Changeset in webkit [160976] by Csaba Osztrogonác
  • 3 edits in trunk/Tools

Last URTBF after r160971 to make EFL build happy.

  • TestWebKitAPI/efl/PlatformWebView.cpp:
  • WebKitTestRunner/efl/PlatformWebViewEfl.cpp:
7:45 AM Changeset in webkit [160975] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

URTBF after r160971 to try to make EFL build again.

  • WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp:

(WebKit::internalError):

1:09 AM Changeset in webkit [160974] by Carlos Garcia Campos
  • 9 edits in trunk/Source/WebKit2

Unreviewed. Fix GTK+ build after r160971 and r160969.

  • GNUmakefile.list.am:
  • UIProcess/API/gtk/WebKitFileChooserRequest.cpp:

(webkit_file_chooser_request_select_files):

  • UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:

(didReceiveWebViewMessageFromInjectedBundle):

  • UIProcess/API/gtk/WebKitURISchemeRequest.cpp:

(webkitURISchemeRequestCreate):

  • UIProcess/API/gtk/WebKitURISchemeRequestPrivate.h:
  • UIProcess/API/gtk/WebKitWebResource.cpp:

(webkit_web_resource_get_data):

  • UIProcess/soup/WebSoupRequestManagerClient.h:
  • WebProcess/WebCoreSupport/gtk/WebErrorsGtk.cpp:

(WebKit::internalError):

Note: See TracTimeline for information about the timeline view.