Timeline
Apr 7, 2015:
- 11:41 PM Changeset in webkit [182522] by
-
- 3 edits in trunk/Source/WebCore
Fix the build.
- platform/graphics/cocoa/FontCascadeCocoa.mm:
(WebCore::FontCascade::drawGlyphs):
- platform/spi/cg/CoreGraphicsSPI.h:
- 11:03 PM Changeset in webkit [182521] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, another iOS build fix after r182516.
I missed another use of MAC_OS_X_VERSION_MIN_REQUIRED without a
PLATFORM(MAC) check.
- platform/graphics/cocoa/FontCascadeCocoa.mm:
- 10:57 PM Changeset in webkit [182520] by
-
- 3 edits2 adds in trunk
Bug 142887 - role progress bar does not support indeterminate state
https://bugs.webkit.org/show_bug.cgi?id=142887
Patch by Michael Peechatt <mpeechatt@gmail.com> on 2015-04-07
Reviewed by Chris Fleizach.
Source/WebCore:
Test: platform/mac/accessibility/progressbar-indeterminate.html
- accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
When getting min or max value of an indeterminate progress indicator, return 0.
This is so VoiceOver will recognize it as indeterminate.
LayoutTests:
- platform/mac/accessibility/progressbar-indeterminate-expected.txt: Added.
- platform/mac/accessibility/progressbar-indeterminate.html: Added.
Test that checks if 0 is returned for indetermiate progress indicators when
aria min and max values are non zero.
- 10:44 PM Changeset in webkit [182519] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, speculative iOS build fix after r182516.
Add #if PLATFORM(MAC) checks.
- platform/spi/cg/CoreGraphicsSPI.h:
- 10:31 PM Changeset in webkit [182518] by
-
- 2 edits in trunk/Source/WebCore
Try to fix incremental builds by forcing *InternalSettings* to get
regenerated.
- testing/InternalSettings.idl:
- 9:24 PM Changeset in webkit [182517] by
-
- 4 edits2 adds in trunk
Open WebSockets should not prevent a page from entering PageCache
https://bugs.webkit.org/show_bug.cgi?id=143505
<rdar://problem/19923085>
Reviewed by Alexey Proskuryakov.
Source/WebCore:
Open WebSockets should not prevent a page from entering PageCache. This
is currently causing mobile.nytimes.com to not be page-cacheable.
In this patch, We close open WebSockets when entering the page cache
and fire the "close" events after resuming, similarly to what we did
for XMLHttpRequest in r181480. This gives a chance for the content to
handle the 'close' event (with wasClean being false and code being
1006) in order to reopen the connection if necessary.
Test: http/tests/websocket/tests/hybi/closed-when-entering-page-cache.html
- Modules/websockets/WebSocket.cpp:
(WebCore::WebSocket::WebSocket):
(WebCore::WebSocket::canSuspend):
(WebCore::WebSocket::suspend):
(WebCore::WebSocket::resume):
(WebCore::WebSocket::resumeTimerFired):
(WebCore::WebSocket::didClose):
- Modules/websockets/WebSocket.h:
LayoutTests:
Add a layout test to check that an open WebSocket does not prevent a
page from entering page cache and that a 'close' event is fired after
resuming (restoring from the page cache).
- http/tests/websocket/tests/hybi/closed-when-entering-page-cache-expected.txt: Added.
- http/tests/websocket/tests/hybi/closed-when-entering-page-cache.html: Added.
- 9:15 PM Changeset in webkit [182516] by
-
- 11 edits in trunk/Source/WebCore
Add experimental code to use custom font dilation when rendering into non-opaque contexts
https://bugs.webkit.org/show_bug.cgi?id=143508
Reviewed by Sam Weinig.
Add GraphicsContext::setAntialiasedFontDilationEnabled(), and set it to true
when rendering into a compositing layer which is not opaque (at the same location
where we disable font smoothing).
If Settings::antialiasedFontDilationEnabled() is true, when rendering non-smoothed
text (and if CSS hasn't opted into antialiased mode), use custom font dilation
parameters, chosen using a light/medium/dark heuristic, to make this text
match more closely with LCD-smoothed text.
- page/Settings.cpp:
(WebCore::Settings::Settings):
(WebCore::Settings::setAntialiasedFontDilationEnabled): Set global state
in FontCascade (which can't easily get at Settings). This it not ideal,
but is temporary.
- page/Settings.h:
(WebCore::Settings::antialiasedFontDilationEnabled):
- page/Settings.in: Can't autogenerate this setting any more.
- platform/graphics/FontCascade.cpp:
(WebCore::FontCascade::setAntialiasedFontDilationEnabled): Set the global.
(WebCore::FontCascade::antialiasedFontDilationEnabled):
- platform/graphics/FontCascade.h:
- platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::setAntialiasedFontDilationEnabled): Set graphics state
to say that we should do dilation of antialiased text.
- platform/graphics/GraphicsContext.h:
(WebCore::GraphicsContextState::GraphicsContextState):
(WebCore::GraphicsContext::antialiasedFontDilationEnabled):
- platform/graphics/ca/mac/PlatformCALayerMac.mm:
(PlatformCALayer::drawLayerContents): If the layer is not opaque, enable the
dilated text code path.
- platform/graphics/cocoa/FontCascadeCocoa.mm:
(WebCore::dilationSizeForTextColor): Heuristic (values chosen empirically) to
computed custom dilation based on foreground color.
(WebCore::FontCascade::drawGlyphs): Set the custom dilation parameters, and the
antialiasing state if we're not doing smoothing, and CSS hasn't opted into the
antialiased path.
- platform/spi/cg/CoreGraphicsSPI.h: New SPI.
- 8:40 PM Changeset in webkit [182515] by
-
- 2 edits in trunk/Tools
PageVisibilityStateWithWindowChanges should only be enabled on Yosemite
rdar://problem/20461342
- TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
- 8:39 PM Changeset in webkit [182514] by
-
- 3 edits in trunk/Websites/perf.webkit.org
Perf dashboard should have a way of marking outliers
https://bugs.webkit.org/show_bug.cgi?id=143466
Reviewed by Chris Dumez.
Address kling's in-person comment to notify users when the new run status is saved in the database.
- public/v2/app.js:
(App.PaneController._selectedItemIsMarkedOutlierDidChange)
- public/v2/chart-pane.css: Fixed a typo.
- 6:51 PM Changeset in webkit [182513] by
-
- 9 edits3 deletes in trunk
Unreviewed, rolling out r182511.
https://bugs.webkit.org/show_bug.cgi?id=143507
caused debug test failures (Requested by alexchristensen on
#webkit).
Reverted changeset:
"Block popups from content extensions."
https://bugs.webkit.org/show_bug.cgi?id=143497
http://trac.webkit.org/changeset/182511
- 6:08 PM Changeset in webkit [182512] by
-
- 5 edits in trunk/Source/WebCore
[Cocoa] System fonts do not get correct tracking
https://bugs.webkit.org/show_bug.cgi?id=143395
Reviewed by Ryosuke Niwa.
Inside FontPlatformData, we have two CTFonts. If the user has specified
-webkit-system-font, we will pass in a CTFont, and the FontPlatformData
will wrap it. However, we will then roundtrip through CGFont in order
to create a second CTFont. We were basing our tracking and system
font knowledge off of this round-tripped font instead of the original font.
Note that this design is terrible and needs to be overhauled.
FontPlatformData should only have a single platform font inside it.
This patch also caches whether or not a font is a system font.
No new tests because it is impossible to test the tracking of the
system font in a robust way.
- platform/graphics/Font.cpp:
(WebCore::Font::Font): Rearrange member variables.
- platform/graphics/Font.h: Move member variables around for better
packing, and cache whether or not the font is a system font.
- platform/graphics/FontData.h: Add comment
- platform/graphics/cocoa/FontCocoa.mm:
(WebCore::Font::platformInit): Cache whether or not the font is a system
font.
(WebCore::hasCustomTracking): Use cached value.
(WebCore::canUseFastGlyphAdvanceGetter):
(WebCore::Font::platformWidthForGlyph):
- 5:38 PM Changeset in webkit [182511] by
-
- 9 edits3 adds in trunk
Block popups from content extensions.
https://bugs.webkit.org/show_bug.cgi?id=143497
Patch by Alex Christensen <achristensen@webkit.org> on 2015-04-07
Reviewed by Brady Eidson.
Source/WebCore:
Test: http/tests/contentextensions/popups.html
- loader/ResourceLoadInfo.cpp:
(WebCore::readResourceType):
- loader/ResourceLoadInfo.h:
- page/DOMWindow.cpp:
(WebCore::DOMWindow::open):
- page/UserContentController.cpp:
(WebCore::UserContentController::actionsForResourceLoad):
- page/UserContentController.h:
Check content extensions before opening a window.
Tools:
- TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
(TestWebKitAPI::TEST_F):
Added popup test.
LayoutTests:
- http/tests/contentextensions/popups-expected.txt: Added.
- http/tests/contentextensions/popups.html: Added.
- http/tests/contentextensions/popups.html.json: Added.
- 4:53 PM Changeset in webkit [182510] by
-
- 5 edits in branches/safari-600.5.17-branch/Source
Versioning.
- 4:42 PM Changeset in webkit [182509] by
-
- 6 edits in trunk
Get the features.json files ready for open contributions
https://bugs.webkit.org/show_bug.cgi?id=143436
Reviewed by Darin Adler.
Source/JavaScriptCore:
- features.json:
Source/WebCore:
- features.json:
Tools:
- Scripts/webkitpy/style/checkers/jsonchecker.py:
(JSONFeaturesChecker.check):
Extend the syntax checking a bit, but leave everything non-mandatory
very loose until we figure what fields are important.
- 4:37 PM Changeset in webkit [182508] by
-
- 2 edits in trunk/Source/WebCore
More unreviewed fixing API tests.
- contentextensions/ContentExtensionsBackend.cpp:
(WebCore::ContentExtensions::ContentExtensionsBackend::actionsForResourceLoad):
Don't check for javascript protocol.
- 4:33 PM Changeset in webkit [182507] by
-
- 1 copy in tags/Safari-600.5.17.1
New tag.
- 4:27 PM Changeset in webkit [182506] by
-
- 7 edits in branches/safari-600.5.17-branch/Source
Merged r181628. rdar://problem/20394343
- 4:21 PM Changeset in webkit [182505] by
-
- 3 edits in trunk/Source/WebCore
[Mac] never update caption user style sheet during parsing
https://bugs.webkit.org/show_bug.cgi?id=143499
Reviewed by Jer Noble.
- page/CaptionUserPreferencesMediaAF.cpp:
(WebCore::CaptionUserPreferencesMediaAF::setInterestedInCaptionPreferenceChanges):
(WebCore::CaptionUserPreferencesMediaAF::captionPreferencesChanged): Ignore a
"preferences changed" notification fired while registering for said notification, we
already create and insert the style sheet after a brief delay anyway.
- page/CaptionUserPreferencesMediaAF.h:
- 4:14 PM Changeset in webkit [182504] by
-
- 5 edits in branches/safari-600.5.17-branch/Source
Versioning.
- 4:10 PM Changeset in webkit [182503] by
-
- 1 copy in branches/safari-600.5.17-branch
New Branch.
- 4:09 PM Changeset in webkit [182502] by
-
- 2 edits in trunk/Source/WebCore
[Win] Unreviewed build fix after r182494.
- platform/win/ContextMenuItemWin.cpp:
(WebCore::ContextMenuItem::ContextMenuItem): Deleted.
- 3:56 PM Changeset in webkit [182501] by
-
- 2 edits in trunk/Source/WebKit2
Fix the build.
- UIProcess/API/mac/WKView.mm:
(-[WKView _setFixedLayoutSize:]):
- 3:49 PM Changeset in webkit [182500] by
-
- 4 edits in trunk/Source/WebCore
Unreviewed fixing API tests.
- contentextensions/ContentExtensionsBackend.cpp:
(WebCore::ContentExtensions::ContentExtensionsBackend::actionsForResourceLoad):
- platform/URL.cpp:
(WebCore::URL::init):
- platform/URL.h:
(WebCore::URL::protocolIsData):
(WebCore::URL::protocolIsJavaScript): Deleted.
Revert part of r182492 that changed URL.h.
- 3:37 PM Changeset in webkit [182499] by
-
- 10 edits1 add in trunk
Expose and test fixedLayoutSize via modern WebKit SPI
https://bugs.webkit.org/show_bug.cgi?id=143500
Reviewed by Simon Fraser.
- UIProcess/API/Cocoa/WKViewPrivate.h:
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _isFixedLayoutEnabled]):
(-[WKWebView _setFixedLayoutEnabled:]):
(-[WKWebView _fixedLayoutSize]):
(-[WKWebView _setFixedLayoutSize:]):
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- UIProcess/API/mac/WKView.mm:
(-[WKView _isFixedLayoutEnabled]):
(-[WKView _setFixedLayoutEnabled:]):
(-[WKView _fixedLayoutSize]):
(-[WKView _setFixedLayoutSize:]):
Add API for adjusting the fixed layout size, and whether or not we use it.
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
Repair a mistake I made in r139822, where I brought odd TILED_BACKING_STORE-only
logic (which disables scrollbars if fixedLayoutSize is enabled) to the rest of the ports.
Put it back as TILED_BACKING_STORE-only.
Persist the fixedLayoutSize through view creation; we already persist the enabled state,
but not the size, which doesn't make any sense.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::fixedLayoutSize):
- WebProcess/WebPage/WebPage.h:
Add a fixedLayoutSize() getter.
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKit2Cocoa/FixedLayoutSize.mm: Added.
(-[FixedLayoutSizeNavigationDelegate webView:didFinishNavigation:]):
(TEST):
Add a test that verifies that fixedLayoutSize works at all, that
it persists through a navigation, and that turning it back off reverts to
laying out at the size of the view.
- 3:09 PM Changeset in webkit [182498] by
-
- 20 edits1 add in trunk/Source/JavaScriptCore
Constant folding of typed array properties should be handled by AI rather than strength reduction
https://bugs.webkit.org/show_bug.cgi?id=143496
Reviewed by Geoffrey Garen.
Handling constant folding in AI is better because it precludes us from having to fixpoint the CFA
phase and whatever other phase did the folding in order to find all constants.
This also removes the TypedArrayWatchpoint node type because we can just set the watchpoint
directly.
This also fixes a bug in FTL lowering of GetTypedArrayByteOffset. The bug was previously not
found because all of the tests for it involved the property getting constant folded. I found that
the codegen was bad because an earlier version of the patch broke that constant folding. This
adds a new test for that node type, which makes constant folding impossible by allocating a new
typed array every type. The lesson here is: if you write a test for something, run the test with
full IR dumps to make sure it's actually testing the thing you want it to test.
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
- dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
- dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
- dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dump):
(JSC::DFG::Graph::tryGetFoldableView):
(JSC::DFG::Graph::tryGetFoldableViewForChild1): Deleted.
- dfg/DFGGraph.h:
- dfg/DFGNode.h:
(JSC::DFG::Node::hasTypedArray): Deleted.
(JSC::DFG::Node::typedArray): Deleted.
- dfg/DFGNodeType.h:
- dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
- dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::jumpForTypedArrayOutOfBounds):
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGStrengthReductionPhase.cpp:
(JSC::DFG::StrengthReductionPhase::handleNode):
(JSC::DFG::StrengthReductionPhase::foldTypedArrayPropertyToConstant): Deleted.
(JSC::DFG::StrengthReductionPhase::prepareToFoldTypedArray): Deleted.
- dfg/DFGWatchpointCollectionPhase.cpp:
(JSC::DFG::WatchpointCollectionPhase::handle):
(JSC::DFG::WatchpointCollectionPhase::addLazily):
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileGetTypedArrayByteOffset):
(JSC::FTL::LowerDFGToLLVM::typedArrayLength):
- tests/stress/fold-typed-array-properties.js:
(foo):
- tests/stress/typed-array-byte-offset.js: Added.
(foo):
- 2:42 PM Changeset in webkit [182497] by
-
- 7 edits in trunk/Source/WebCore
More work on making the application cache storage be per page
https://bugs.webkit.org/show_bug.cgi?id=143498
Reviewed by Andreas Kling.
- loader/appcache/ApplicationCacheStorage.cpp:
(WebCore::ApplicationCacheStorage::create):
(WebCore::ApplicationCacheStorage::singleton):
- loader/appcache/ApplicationCacheStorage.h:
- page/Page.cpp:
(WebCore::Page::Page):
- page/Page.h:
(WebCore::Page::applicationCacheStorage):
- page/PageConfiguration.cpp:
(WebCore::PageConfiguration::PageConfiguration): Deleted.
- page/PageConfiguration.h:
- 2:42 PM Changeset in webkit [182496] by
-
- 14 edits1 add in trunk/Websites/perf.webkit.org
Perf dashboard should have a way of marking outliers
https://bugs.webkit.org/show_bug.cgi?id=143466
Reviewed by Chris Dumez.
Added UI to mark a data point as an outlier as well as a button to toggle the visibility of outliers.
Added a new privileged API /privileged-api/update-run-status to store this boolean flag.
- init-database.sql: Added run_marked_outlier column to test_runs table.
- public/admin/tests.php:
- public/api/runs.php:
(main): Only emit Cache-Control and Expires headers in v1 UI.
(RunsGenerator::format_run): Emit markedOutlier.
- public/include/admin-header.php:
- public/include/db.php:
(Database::is_true): Made it static.
- public/include/manifest.php:
(Manifest::platforms):
- public/index.html: Call into /api/runs/ with ?cache=true.
- public/privileged-api/update-run-status.php: Added.
(main): Updates the newly added column in test_runs table.
- public/v2/app.js:
(App.Pane._fetch):
(App.Pane.refetchRuns): Extracted from App.Pane._fetch.
(App.Pane._didFetchRuns): Renamed from _updateChartData.
(App.Pane._setNewChartData): Added. Pick the right time series based based on the value of showOutlier.
Cloning chartData is necessary when toggling the outlier visibility or using statistics tools because
the interactive chart component only observes changes to chartData and not individual properties of it.
(App.Pane._highlightPointsMarkedAsOutlier): Added. Highlight points marked as outliers.
(App.Pane._movingAverageOrEnvelopeStrategyDidChange): Call to _setNewChartData replaced the code to
clone chartData here.
(App.PaneController.actions.toggleShowOutlier): Toggle the visibility of points marked as outliers by
invoking App.Pane._setNewChartData.
(App.PaneController._detailsChanged): Don't hide the analysis pane when details changed since keep
opening the pane for marking points as outliers would be annoying.
(App.PaneController._updateCanAnalyze): Update 'cannotMarkOutlier' as well as 'cannotAnalyze'.
(App.PaneController.selectedMeasurement): Added.
(App.PaneController.showOutlierTitle): Added.
(App.PaneController._selectedItemIsMarkedOutlierDidChange): Added. Call out to setMarkedOutlier to
mark the selected point as an outlier via the newly added privileged API.
- public/v2/chart-pane.css: Updated styles.
- public/v2/data.js:
(PrivilegedAPI._post): Report the semantic errors.
(Measurement.prototype.markedOutlier): Added.
(Measurement.prototype.setMarkedOutlier): Added. Uses PrivilegedAPI to update the database.
(RunsData.prototype.timeSeriesByCommitTime): Added a new argument, includeOutliers, to indicate
whether the time series should include measurements marked as outliers or not.
(RunsData.prototype.timeSeriesByBuildTime): Ditto.
(RunsData.prototype._timeSeriesByTimeInternal): Extracted from timeSeriesByCommitTime and
timeSeriesByBuildTime to share code. Now ignores measurements marked as outliers if needed.
- public/v2/index.html: Added an icon for showing and hiding outliers. Also added a checkbox to
mark individual points as outliers.
- public/v2/interactive-chart.js:
(App.InteractiveChartComponent._selectClosestPointToMouseAsCurrentItem): Re-enable the distance
heuristics that takes vertical closeness into account. This heuristics is more useful when marking
some points as outliers. This heuristics was disabled because the behavior was unpredictable but
with the arrow key navigation support, this is no longer an issue.
- public/v2/manifest.js:
(App.Manifest._formatFetchedData): Added showOutlier to the chart data. This function dynamically
updates the time series in this chart data in order to include or exclude outliers.
- 2:34 PM Changeset in webkit [182495] by
-
- 33 edits1 add in trunk
Source and stack information should get appended only to native errors
Source/JavaScriptCore:
and should be added directly after construction rather than when thrown.
This fixes frozen objects being unfrozen when thrown while conforming to
ecma script standard and other browser behavior.
rdar://problem/19927293
https://bugs.webkit.org/show_bug.cgi?id=141871
Reviewed by Geoffrey Garen.
Appending stack, source, line, and column information to an object whenever that object is thrown
is incorrect because it violates the ecma script standard for the behavior of throw. Suppose for example
that the object being thrown already has one of these properties or is frozen. Adding the properties
would then violate the frozen contract or overwrite those properties. Other browsers do not do this,
and doing this causes unnecessary performance hits in code with heavy use of the throw construct as
a control flow construct rather than just an error reporting mechanism.
Because WebCore adds "native" errors which do not inherit from any JSC native error,
appending the error properties as a seperate call after construction of the error is required
to avoid having to manually truncate the stack and gather local source information due to
the stack being extended by a nested call to construct one of the native jsc error.
- interpreter/Interpreter.cpp:
(JSC::Interpreter::execute):
- interpreter/Interpreter.h:
- parser/ParserError.h:
(JSC::ParserError::toErrorObject):
- runtime/CommonIdentifiers.h:
- runtime/Error.cpp:
(JSC::createError):
(JSC::createEvalError):
(JSC::createRangeError):
(JSC::createReferenceError):
(JSC::createSyntaxError):
(JSC::createTypeError):
(JSC::createNotEnoughArgumentsError):
(JSC::createURIError):
(JSC::createOutOfMemoryError):
(JSC::FindFirstCallerFrameWithCodeblockFunctor::FindFirstCallerFrameWithCodeblockFunctor):
(JSC::FindFirstCallerFrameWithCodeblockFunctor::operator()):
(JSC::FindFirstCallerFrameWithCodeblockFunctor::foundCallFrame):
(JSC::FindFirstCallerFrameWithCodeblockFunctor::index):
(JSC::addErrorInfoAndGetBytecodeOffset): Added.
(JSC::addErrorInfo): Added special case for appending complete error info
to a newly constructed error object.
- runtime/Error.h:
- runtime/ErrorConstructor.cpp:
(JSC::Interpreter::constructWithErrorConstructor):
(JSC::Interpreter::callErrorConstructor):
- runtime/ErrorInstance.cpp:
(JSC::appendSourceToError): Moved from VM.cpp
(JSC::FindFirstCallerFrameWithCodeblockFunctor::FindFirstCallerFrameWithCodeblockFunctor):
(JSC::FindFirstCallerFrameWithCodeblockFunctor::operator()):
(JSC::FindFirstCallerFrameWithCodeblockFunctor::foundCallFrame):
(JSC::FindFirstCallerFrameWithCodeblockFunctor::index):
(JSC::addErrorInfoAndGetBytecodeOffset):
(JSC::ErrorInstance::finishCreation):
- runtime/ErrorInstance.h:
(JSC::ErrorInstance::create):
- runtime/ErrorPrototype.cpp:
(JSC::ErrorPrototype::finishCreation):
- runtime/ExceptionFuzz.cpp:
(JSC::doExceptionFuzzing):
- runtime/ExceptionHelpers.cpp:
(JSC::createError):
(JSC::createInvalidFunctionApplyParameterError):
(JSC::createInvalidInParameterError):
(JSC::createInvalidInstanceofParameterError):
(JSC::createNotAConstructorError):
(JSC::createNotAFunctionError):
(JSC::createNotAnObjectError):
(JSC::throwOutOfMemoryError):
(JSC::createStackOverflowError): Deleted.
(JSC::createOutOfMemoryError): Deleted.
- runtime/ExceptionHelpers.h:
- runtime/JSArrayBufferConstructor.cpp:
(JSC::constructArrayBuffer):
- runtime/JSArrayBufferPrototype.cpp:
(JSC::arrayBufferProtoFuncSlice):
- runtime/JSGenericTypedArrayViewInlines.h:
(JSC::JSGenericTypedArrayView<Adaptor>::create):
(JSC::JSGenericTypedArrayView<Adaptor>::createUninitialized):
- runtime/NativeErrorConstructor.cpp:
(JSC::Interpreter::constructWithNativeErrorConstructor):
(JSC::Interpreter::callNativeErrorConstructor):
- runtime/VM.cpp:
(JSC::VM::throwException):
(JSC::appendSourceToError): Moved to Error.cpp
(JSC::FindFirstCallerFrameWithCodeblockFunctor::FindFirstCallerFrameWithCodeblockFunctor): Deleted.
(JSC::FindFirstCallerFrameWithCodeblockFunctor::operator()): Deleted.
(JSC::FindFirstCallerFrameWithCodeblockFunctor::foundCallFrame): Deleted.
(JSC::FindFirstCallerFrameWithCodeblockFunctor::index): Deleted.
- tests/stress/freeze_leek.js: Added.
Source/WebCore:
and should be added directly after construction rather than when thrown.
This fixes frozen objects being unfrozen when thrown while conforming to
ecma script standard and other browser behavior.
rdar://problem/19927293
https://bugs.webkit.org/show_bug.cgi?id=141871
Reviewed by Geoffrey Garen.
Covered by existing tests.
Sets line, column, source and stack information for DOMExceptions as
expected by the webinspector for native errors.
- bindings/js/JSDOMBinding.cpp:
(WebCore::setDOMException):
LayoutTests:
and should be added after construction rather than when thrown.
This fixes frozen objects being unfrozen when thrown while conforming to
ecma script standard and other browser behavior.
rdar://problem/19927293
https://bugs.webkit.org/show_bug.cgi?id=141871
Reviewed by Geoffrey Garen.
Fixes tests to throw new Errors such that they will contain line, column, and stack information
as expected, and fixes the column in the error in the expected output.
- http/tests/w3c/resources/testharness.js: Other browsers don't expect stack information
with this test, but we do, and so the AssertionError should include stack information gathered from Error.
This could also have been fixed by changing expectations, but its a good idea to check the stack anyway.
- js/dom/exception-linenums-in-html-1.html: Throw "new Error()" rather than "{}".
- js/dom/exception-linenums-in-html-2.html: ditto.
- js/dom/exception-linenums-in-html-3.html: ditto.
- js/dom/script-tests/stack-trace.js: ditto.
(throwError): ditto.
(h): ditto.
(inlineableThrow): ditto.
(dfgThing.get willThrow): ditto.
(dfgThing.willThrowFunc): ditto.
- js/dom/stack-trace-expected.txt: fixed error column expectation.
- js/exception-properties-expected.txt: ditto.
- js/script-tests/exception-linenums.js:
(exceptionInFunction): throw "new Error()" rather than "{}".
(firstPropIsGetter.get getter): ditto
(secondPropIsGetter.get getter): ditto
(firstPropIsSetter.set setter): ditto
(secondPropIsSetter.set setter): ditto
- js/script-tests/exception-properties.js: now checking that column, line, and sourceURL are existant on a "new Error"
since we now add these at error construction rather than at error throwing.
- platform/mac/http/tests/media/media-source/mediasource-addsourcebuffer-expected.txt: fixed expectation to match.
- platform/mac/http/tests/media/media-source/mediasource-sourcebuffer-mode-expected.txt: ditto.
- 2:29 PM Changeset in webkit [182494] by
-
- 10 edits in trunk/Source
ContextMenuItem refactoring
https://bugs.webkit.org/show_bug.cgi?id=143485
Reviewed by Beth Dakin.
Source/WebCore:
- platform/ContextMenuItem.h:
(WebCore::ContextMenuItem::isNull):
- platform/gtk/ContextMenuItemGtk.cpp:
(WebCore::ContextMenuItem::ContextMenuItem):
- platform/mac/ContextMenuItemMac.mm:
(WebCore::ContextMenuItem::ContextMenuItem):
(WebCore::ContextMenuItem::platformDescription):
(WebCore::ContextMenuItem::setSubMenu):
(WebCore::ContextMenuItem::releasePlatformDescription): Deleted.
(WebCore::ContextMenuItem::getPlatformDescription): Deleted.
- platform/mac/ContextMenuMac.mm:
(WebCore::ContextMenu::appendItem):
(WebCore::ContextMenu::insertItem):
(WebCore::platformMenuDescription):
- platform/win/ContextMenuItemWin.cpp:
(WebCore::ContextMenuItem::ContextMenuItem):
Source/WebKit/mac:
- WebCoreSupport/WebContextMenuClient.mm:
(WebContextMenuClient::contextMenuItemSelected):
Source/WebKit2:
- Shared/mac/NativeContextMenuItem.mm:
(WebKit::NativeContextMenuItem::NativeContextMenuItem):
- 2:28 PM Changeset in webkit [182493] by
-
- 15 edits in trunk
Web Inspector: ES6: Show Symbol properties on Objects
https://bugs.webkit.org/show_bug.cgi?id=141279
Reviewed by Timothy Hatcher.
Source/JavaScriptCore:
- inspector/protocol/Runtime.json:
Give PropertyDescriptor a reference to the Symbol RemoteObject
if the property is a symbol property.
- inspector/InjectedScriptSource.js:
Enumerate symbol properties on objects.
Source/WebInspectorUI:
- Localizations/en.lproj/localizedStrings.js:
- UserInterface/Models/PropertyDescriptor.js:
(WebInspector.PropertyDescriptor.get symbol):
- UserInterface/Protocol/RemoteObject.js:
(WebInspector.RemoteObject.wrappedCallback):
Update new PropertyDescriptor call site.
- UserInterface/Views/ObjectTreeBaseTreeElement.js:
(WebInspector.ObjectTreeBaseTreeElement._logSymbolProperty):
Provide a context menu for rows with Symbol properties to log
the Symbol property, and therefore get a reference to it.
- UserInterface/Views/ObjectTreeView.js:
(WebInspector.ObjectTreeView.comparePropertyDescriptors):
Better handle symbol properties in sorting.
- UserInterface/Views/TypePropertiesSection.js:
(WebInspector.TypePropertiesSection.PropertyComparator):
Return better value when values are equal.
LayoutTests:
- inspector/model/remote-object-expected.txt:
- inspector/model/remote-object-get-properties-expected.txt:
- inspector/model/remote-object-get-properties.html:
- inspector/model/remote-object.html:
Update tests to include objects with Symbol properties.
- 2:17 PM Changeset in webkit [182492] by
-
- 7 edits in trunk/Source/WebCore
Optimize content extensions interpreting speed.
https://bugs.webkit.org/show_bug.cgi?id=143490
Reviewed by Brady Eidson.
- contentextensions/ContentExtensionCompiler.cpp:
(WebCore::ContentExtensions::compileRuleList):
- contentextensions/ContentExtensionsBackend.cpp:
(WebCore::ContentExtensions::ContentExtensionsBackend::actionsForResourceLoad):
Measure total time added by content extensions.
- contentextensions/DFABytecodeCompiler.cpp:
(WebCore::ContentExtensions::DFABytecodeCompiler::compileNode):
(WebCore::ContentExtensions::DFABytecodeCompiler::compile):
When jumping to the root, don't re-add all the actions.
- contentextensions/DFABytecodeCompiler.h:
- platform/URL.cpp:
(WebCore::URL::init):
- platform/URL.h:
(WebCore::URL::protocolIsJavaScript): Added.
- 2:11 PM Changeset in webkit [182491] by
-
- 9 edits in trunk/Source
Add a new setting, AntialiasedFontDilationEnabled, exposed via WK2.
https://bugs.webkit.org/show_bug.cgi?id=143495
Reviewed by Tim Horton.
Source/WebCore:
Add a new Setting, antialiasedFontDilationEnabled, which defaults to true. This
will be used in an upcoming patch.
- page/Settings.in:
Source/WebKit2:
Exposed the antialiasedFontDilationEnabled setting via WK C SPI and Objective-C SPI.
- Shared/WebPreferencesDefinitions.h:
- UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetAntialiasedFontDilationEnabled):
(WKPreferencesGetAntialiasedFontDilationEnabled):
- UIProcess/API/C/WKPreferencesRefPrivate.h:
- UIProcess/API/Cocoa/WKPreferences.mm:
(-[WKPreferences _antialiasedFontDilationEnabled]):
(-[WKPreferences _setAntialiasedFontDilationEnabled:]):
- UIProcess/API/Cocoa/WKPreferencesPrivate.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
- 1:50 PM Changeset in webkit [182490] by
-
- 2 edits in tags/Safari-601.1.25.1/Source/WebCore
Merged r182292. rdar://problem/20407648
- 1:48 PM Changeset in webkit [182489] by
-
- 7 edits in trunk/Source/WebCore
[Content Filtering] Add logging
https://bugs.webkit.org/show_bug.cgi?id=143470
Reviewed by Daniel Bates.
Added a new ContentFiltering logging channel, and started logging some useful diagnostic messages.
- loader/ContentFilter.cpp:
(WebCore::ContentFilter::~ContentFilter):
(WebCore::ContentFilter::willSendRequest):
(WebCore::ContentFilter::startFilteringMainResource):
(WebCore::ContentFilter::responseReceived):
(WebCore::ContentFilter::dataReceived):
(WebCore::ContentFilter::notifyFinished):
(WebCore::ContentFilter::didDecide):
- platform/Logging.h:
- platform/cocoa/ContentFilterUnblockHandlerCocoa.mm:
(WebCore::ContentFilterUnblockHandler::canHandleRequest):
(WebCore::ContentFilterUnblockHandler::requestUnblockAsync):
- platform/cocoa/NetworkExtensionContentFilter.mm:
(WebCore::NetworkExtensionContentFilter::enabled):
(WebCore::NetworkExtensionContentFilter::unblockHandler):
(WebCore::NetworkExtensionContentFilter::handleDecision):
- platform/cocoa/ParentalControlsContentFilter.mm:
(WebCore::ParentalControlsContentFilter::enabled):
(WebCore::ParentalControlsContentFilter::updateFilterState):
- testing/MockContentFilter.cpp:
(WebCore::MockContentFilter::enabled):
(WebCore::MockContentFilter::unblockHandler):
(WebCore::MockContentFilter::maybeDetermineStatus):
- 1:45 PM Changeset in webkit [182488] by
-
- 5 edits in tags/Safari-601.1.25.1/Source
Versioning.
- 1:42 PM Changeset in webkit [182487] by
-
- 1 copy in tags/Safari-601.1.25.1
New tag.
- 1:23 PM Changeset in webkit [182486] by
-
- 16 edits in trunk/Source/WebCore
[Mac] video playing to external device should not be interrupted
https://bugs.webkit.org/show_bug.cgi?id=143492
Reviewed by Jer Noble.
- Modules/mediacontrols/mediaControlsApple.js:
(Controller.prototype.handlePanelTransitionEnd): Drive-by fix to make sure the controls are
not hidden if the opacity timer is primed before they go into a state where they should
never be hidden.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::canPlayToWirelessPlaybackTarget): Make it const.
(WebCore::HTMLMediaElement::isPlayingToWirelessPlaybackTarget): New.
- html/HTMLMediaElement.h:
- html/HTMLMediaSession.cpp:
(WebCore::HTMLMediaSession::canPlayToWirelessPlaybackTarget): New. Short-circuit call to
client when we already know the answer.
(WebCore::HTMLMediaSession::isPlayingToWirelessPlaybackTarget): Ditto.
(WebCore::HTMLMediaSession::startPlayingToPlaybackTarget): Ditto.
(WebCore::HTMLMediaSession::stopPlayingToPlaybackTarget): Ditto.
- html/HTMLMediaSession.h:
- platform/audio/MediaSession.cpp:
(WebCore::MediaSession::canPlayToWirelessPlaybackTarget): Deleted, moved inline and neutered
because only HTMLMediaSession needs to use them.
(WebCore::MediaSession::startPlayingToPlaybackTarget): Ditto.
(WebCore::MediaSession::stopPlayingToPlaybackTarget): Ditto.
- platform/audio/MediaSession.h:
(WebCore::MediaSession::canPlayToWirelessPlaybackTarget):
(WebCore::MediaSession::isPlayingToWirelessPlaybackTarget):
(WebCore::MediaSession::startPlayingToPlaybackTarget):
(WebCore::MediaSession::stopPlayingToPlaybackTarget):
(WebCore::MediaSessionClient::canPlayToWirelessPlaybackTarget):
(WebCore::MediaSessionClient::isPlayingToWirelessPlaybackTarget):
- platform/audio/MediaSessionManager.cpp:
(WebCore::MediaSessionManager::MediaSessionManager):
(WebCore::MediaSessionManager::sessionShouldBeginPlayingToWirelessPlaybackTarget): New.
(WebCore::MediaSessionManager::sessionWillBeginPlayback): Don't interrupt an active session
playing to a target device.
- platform/audio/MediaSessionManager.h:
- platform/graphics/MediaPlayer.cpp:
(WebCore::MediaPlayer::isPlayingToWirelessPlaybackTarget): New, passthrough.
- platform/graphics/MediaPlayer.h:
- platform/graphics/MediaPlayerPrivate.h:
(WebCore::MediaPlayerPrivateInterface::isPlayingToWirelessPlaybackTarget):
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
(WebCore::MediaPlayerPrivateAVFoundationObjC::canPlayToWirelessPlaybackTarget):
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::setWirelessPlaybackTarget): Explicitly call
when passed a nil or inactive target context.
(WebCore::MediaPlayerPrivateAVFoundationObjC::startPlayingToPlaybackTarget): Add logging.
(WebCore::MediaPlayerPrivateAVFoundationObjC::stopPlayingToPlaybackTarget): Ditto.
(WebCore::MediaPlayerPrivateAVFoundationObjC::isPlayingToWirelessPlaybackTarget): New. Return
true when playing with an active context.
(WebCore::playerKVOProperties): "outputContext" is not observable.
- 1:14 PM Changeset in webkit [182485] by
-
- 2 edits in trunk/Source/WebKit2
Should only propagate pressure events with relevant phases
https://bugs.webkit.org/show_bug.cgi?id=143494
-and corresponding-
rdar://problem/20453738
Reviewed by Tim Horton.
We only care about the changed, began, and ended phases.
- UIProcess/API/mac/WKView.mm:
(-[WKView pressureChangeWithEvent:]):
- 12:50 PM Changeset in webkit [182484] by
-
- 2 edits in trunk/Tools
Unreviewed. Add myself as a committer.
- Scripts/webkitpy/common/config/contributors.json:
- 12:41 PM Changeset in webkit [182483] by
-
- 13 edits in trunk/Source/JavaScriptCore
Make it possible to enable LLVM FastISel
https://bugs.webkit.org/show_bug.cgi?id=143489
Reviewed by Michael Saboff.
The decision to enable FastISel is made by Options.h|cpp, but the LLVM library can disable it if it finds that it is built
against a version of LLVM that doesn't support it. Thereafter, JSC::enableLLVMFastISel is the flag that tells the system
if we should enable it.
- ftl/FTLCompile.cpp:
(JSC::FTL::mmAllocateDataSection):
- llvm/InitializeLLVM.cpp:
(JSC::initializeLLVMImpl):
- llvm/InitializeLLVM.h:
- llvm/InitializeLLVMLinux.cpp:
(JSC::getLLVMInitializerFunction):
(JSC::initializeLLVMImpl): Deleted.
- llvm/InitializeLLVMMac.cpp:
(JSC::getLLVMInitializerFunction):
(JSC::initializeLLVMImpl): Deleted.
- llvm/InitializeLLVMPOSIX.cpp:
(JSC::getLLVMInitializerFunctionPOSIX):
(JSC::initializeLLVMPOSIX): Deleted.
- llvm/InitializeLLVMPOSIX.h:
- llvm/InitializeLLVMWin.cpp:
(JSC::getLLVMInitializerFunction):
(JSC::initializeLLVMImpl): Deleted.
- llvm/LLVMAPI.cpp:
- llvm/LLVMAPI.h:
- llvm/library/LLVMExports.cpp:
(initCommandLine):
(initializeAndGetJSCLLVMAPI):
- runtime/Options.cpp:
(JSC::Options::initialize):
- 11:49 AM CommitterTips edited by
- WebKit2 owners exist now, so don't advise reviewers otherwise (diff)
- 11:35 AM Changeset in webkit [182482] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: HierarchicalPathNavigationItem's additionalClassNames should be _additionalClassNames
https://bugs.webkit.org/show_bug.cgi?id=143487
Reviewed by Joseph Pecoraro.
- UserInterface/Views/HierarchicalPathNavigationItem.js:
(WebInspector.HierarchicalPathNavigationItem.prototype.get _additionalClassNames):
- 11:06 AM Changeset in webkit [182481] by
-
- 2 edits in trunk/Tools
[Win] Bots complain about missing /etc/catalog
https://bugs.webkit.org/show_bug.cgi?id=143484
Reviewed by Chris Dumez.
The libxml2 build on Mac, iOS, and Windows does not provide the set
of default catalog files. We do not actually need these for our
purposes, but we get warnings and some bot flakiness because they
are not present.
We can avoid both problems the same way the Mac and iOS ports do,
by setting the XML_CATALOG_FILES environment variable to 'empty string',
which avoid the warnings and bot problems.
- Scripts/webkitpy/port/win.py:
(WinPort.setup_environ_for_server): Added.
- 10:50 AM Changeset in webkit [182480] by
-
- 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore
Merge r181643 - [GTK] Wrong transfer annotations used in GObject DOM bindings
https://bugs.webkit.org/show_bug.cgi?id=142780
Reviewed by Gustavo Noronha Silva.
We are using transfer none for all methods returning a GObject DOM
Object. That's not true. Only objects derived from Node are
automatically released by the DOM object cache and can be transfer
none. All other objects are added to the cache only to avoid
creating the same wrapper twice for the same core object, but
caller should release the returned reference.
- bindings/scripts/CodeGeneratorGObject.pm:
(GetTransferTypeForReturnType):
(GenerateFunction):
- 10:38 AM Changeset in webkit [182479] by
-
- 5 edits in releases/WebKitGTK/webkit-2.4/Source
Merge r180214 - [GTK] GObject DOM bindings object are cached forever
https://bugs.webkit.org/show_bug.cgi?id=141558
Reviewed by Sergio Villar Senin.
Source/WebCore:
Rework the DOMObjectCache to avoid having to manually clear the
objects when the frame is destroyed, using a FrameDestructionObserver
instead. When a new object associated to a Frame is added to the
cache, a FrameDestructionObserver is created for the frame if
needed, and the DOM object is tracked by the observer too. When
the frame is detached from the page all its objects are cleared,
and if the aren't additional references, the object is finalized
and removed from the cache normally.
This patch also simplifies and modernizes the code to make it
easier to read an maintain.
- bindings/gobject/DOMObjectCache.cpp:
(WebKit::DOMObjectCacheData::DOMObjectCacheData): Add constructor
to initialize its members and simplify the callers.
(WebKit::DOMObjectCacheData::clearObject): Remove the references
added by the cache, ensuring the GObject is not finalized until
the method returns.
(WebKit::DOMObjectCacheData::refObject): Adds a reference owned by
the cache.
(WebKit::domObjectCacheFrameObservers): Map a frame to a FrameDestructionObserver.
(WebKit::getOrCreateDOMObjectCacheFrameObserver): Create a new
FrameDestructionObserver for the given Frame or return the
existing one.
(WebKit::domObjects): Map wrapped object to wrapper object.
(WebKit::DOMObjectCache::forget): Remove the wrapped object from
the cache.
(WebKit::DOMObjectCache::get): Return the wrapped object if it is
in the cache, increasing the cache references.
(WebKit::DOMObjectCache::put): Add the wrapper object to the cache
for the given wrapped object. If it's a Node and has a frame add
the node to the FrameDestructionObserver corresponding to the frame.
(WebKit::getFrameFromHandle): Deleted.
(WebKit::weakRefNotify): Deleted.
(WebKit::DOMObjectCache::clearByFrame): Deleted.
(WebKit::DOMObjectCache::~DOMObjectCache): Deleted.
- bindings/gobject/DOMObjectCache.h:
Merge r181631 - [GTK] WebKitDOM objects leaking
https://bugs.webkit.org/show_bug.cgi?id=118788
Reviewed by Darin Adler and Sergio Villar Senin.
Source/WebCore:
Use a DOMwindowObserver class, derived from DOMWindowProperty to
be notified when the window object is detached from the frame to
clear the DOM objects associated to that frame in that case too.
- bindings/gobject/DOMObjectCache.cpp:
- 10:22 AM Changeset in webkit [182478] by
-
- 2 edits in trunk/Source/WebCore
Re-add JSReadableStream and JSReadableStreamReader the Xcode project to
make Xcode happy.
- WebCore.xcodeproj/project.pbxproj:
- 10:18 AM Changeset in webkit [182477] by
-
- 2 edits in trunk/Source/WebKit2
Unreviewed build fix; make calls to new SPI conditional on iOS version.
- UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
(WebKit::WebVideoFullscreenManagerProxy::setVideoLayerFrame):
- 10:07 AM Changeset in webkit [182476] by
-
- 5 edits3 adds in trunk/Tools
Use content extensions in MiniBrowser.
https://bugs.webkit.org/show_bug.cgi?id=143446
Patch by Sam Weinig <sam@webkit.org> on 2015-04-06
Reviewed by Alex Christensen.
- MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj:
- MiniBrowser/mac/AppDelegate.h:
- MiniBrowser/mac/AppDelegate.m:
(-[BrowserAppDelegate init]):
(-[BrowserAppDelegate showExtensionsManager:]):
(-[BrowserAppDelegate userContentContoller]):
- MiniBrowser/mac/ExtensionManagerWindowController.h: Added.
- MiniBrowser/mac/ExtensionManagerWindowController.m: Added.
(-[ExtensionManagerWindowController init]):
(-[ExtensionManagerWindowController windowDidLoad]):
(-[ExtensionManagerWindowController add:]):
(-[ExtensionManagerWindowController remove:]):
- MiniBrowser/mac/ExtensionManagerWindowController.xib: Added.
- MiniBrowser/mac/MainMenu.xib:
- 9:32 AM Changeset in webkit [182475] by
-
- 11 edits2 deletes in releases/WebKitGTK/webkit-2.4/Tools
Merge r176563 - [GTK] Use custom JavaScript instead of DBus to implement WebProcess tests
https://bugs.webkit.org/show_bug.cgi?id=138834
Reviewed by Sergio Villar Senin.
It makes everyting simpler and the tests run faster too, since we
don't need to spawn the private bus and wait until the DBus name
is registered. The web extension registers a new JavaSCript class
with a status method to run the tests, similar to the DBus
method. In the UI process side, tests use webkit_web_view_run_java_script()
instead of sending a DBus message.
- TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
- TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeFilterTest.cpp:
(WebKitDOMNodeFilterTest::create):
(WebKitDOMNodeFilterTest::testTreeWalker):
(WebKitDOMNodeFilterTest::testNodeIterator):
(WebKitDOMNodeFilterTest::webPageFromArgs): Deleted.
(WebKitDOMNodeFilterTest::runTest): Deleted.
- TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeTest.cpp:
(WebKitDOMNodeTest::create):
(WebKitDOMNodeTest::testHierarchyNavigation):
(WebKitDOMNodeTest::testInsertion):
(WebKitDOMNodeTest::testTagNames):
(WebKitDOMNodeTest::webPageFromArgs): Deleted.
(WebKitDOMNodeTest::runTest): Deleted.
- TestWebKitAPI/Tests/WebKit2Gtk/DOMXPathNSResolverTest.cpp:
(WebKitDOMXPathNSResolverTest::create):
(WebKitDOMXPathNSResolverTest::testXPathNSResolverNative):
(WebKitDOMXPathNSResolverTest::testXPathNSResolverCustom):
(WebKitDOMXPathNSResolverTest::webPageFromArgs): Deleted.
(WebKitDOMXPathNSResolverTest::runTest): Deleted.
- TestWebKitAPI/Tests/WebKit2Gtk/FrameTest.cpp:
(WebKitFrameTest::create):
(WebKitFrameTest::testMainFrame):
(WebKitFrameTest::testURI):
(WebKitFrameTest::testJavaScriptContext):
(WebKitFrameTest::webPageFromArgs): Deleted.
(WebKitFrameTest::runTest): Deleted.
- TestWebKitAPI/Tests/WebKit2Gtk/TestDOMNode.cpp:
(testWebKitDOMNodeHierarchyNavigation):
(testWebKitDOMNodeInsertion):
(testWebKitDOMNodeTagNames):
(beforeAll):
(afterAll):
- TestWebKitAPI/Tests/WebKit2Gtk/TestDOMNodeFilter.cpp:
(runTest):
(beforeAll):
(afterAll):
- TestWebKitAPI/Tests/WebKit2Gtk/TestDOMXPathNSResolver.cpp:
(testWebKitDOMXPathNSResolverNative):
(testWebKitDOMXPathNSResolverCustom):
(beforeAll):
(afterAll):
(runTest): Deleted.
- TestWebKitAPI/Tests/WebKit2Gtk/TestFrame.cpp:
(webkitFrameTestRun):
(beforeAll):
(afterAll):
- TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.cpp:
(testsMap):
(WebProcessTest::add):
(WebProcessTest::create):
(runTest):
(windowObjectClearedCallback):
(webkit_web_extension_initialize):
(methodCallCallback): Deleted.
(webkit_web_extension_initialize_with_user_data): Deleted.
- TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.h:
- TestWebKitAPI/gtk/WebKit2Gtk/WebProcessTestRunner.cpp: Removed.
- TestWebKitAPI/gtk/WebKit2Gtk/WebProcessTestRunner.h: Removed.
- TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp:
(WebViewTest::runWebProcessTest):
- TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.h:
- 9:05 AM Changeset in webkit [182474] by
-
- 5 edits in releases/WebKitGTK/webkit-2.4/Tools
Merge r178644 - [GTK] [WK2] TestWebKitWebView snapshot fails
https://bugs.webkit.org/show_bug.cgi?id=120404
Reviewed by Žan Doberšek.
Rework the test to make sure the snapshot is always created at the
desired size.
- Scripts/run-gtk-tests:
(TestRunner): Unskip /webkit2/WebKitWebView/snapshot.
- TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
(testWebViewSnapshot): Use a fixed size for the document, and
disable scrollbars to make sure the visible area is always the
WebView size.
- TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp:
(WebViewTest::showInWindowAndWaitUntilMapped): Add optional width
and height parameters to create the window with a given size.
- TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.h:
- 9:01 AM Changeset in webkit [182473] by
-
- 2 edits in releases/WebKitGTK/webkit-2.4/Tools
Merge r173832 - [GTK] Test /webkit2/WebKitWebView/can-show-mime-type fails if evince browser plugin is installed
https://bugs.webkit.org/show_bug.cgi?id=136998
Reviewed by Philippe Normand.
- TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
(testWebViewCanShowMIMEType): Remove the check of PDF as
unsupported MIME type.
- 7:53 AM Changeset in webkit [182472] by
-
- 6 edits2 adds in trunk
[CSS Grid Layout] Update track sizes after distributing extra space
https://bugs.webkit.org/show_bug.cgi?id=141422
Reviewed by Antti Koivisto.
Source/WebCore:
Both old and new tracks sizing algorithms instruct us to update
the sizes of the content sized tracks only after distributing the
extra space for all the items in the same span group. So far we
were doing it inside distributeSpaceToTracks(), i.e., once for
every single item. That is wrong because it makes the algorithm
order dependent.
Our old implementation looked something like this (pseudocode):
resolveContentBasedTrackSizingFunctions()
foreach item
resolveContentBasedTrackSizingFunctionsForItems() (x4)
distributeSpaceToTracks()
updateTrackSizes()
Now it's done this way (pseudocode):
resolveContentBasedTrackSizingFunctions()
foreach spanGroup
resolveContentBasedTrackSizingFunctionsForItems() (x4)
foreach item in spanGroup
distributeSpaceToTracks()
updateTrackSizes()
As it can be seen the update of track sizes only happens after
processing all the items of a given span group. In order to
accomplish this a new field was added to GridTrack called
tempIncrease which stores per-track increases while distributing
the extra space among the items in the same span group. That
temporal increase could eventually be used to update the
plannedIncrease which is the one we use to finally set the new
size of the track.
This change makes our implementation closer to the spec, removes
the order dependency and ensures that every track satisfies their
min track sizing functions before starting to consider the max
track sizing functions.
Test: fast/css-grid-layout/grid-update-sizes-after-distributing-all.html
- rendering/RenderGrid.cpp:
(WebCore::GridTrack::plannedSize):
(WebCore::GridTrack::setPlannedSize): New setter.
(WebCore::GridTrack::tempSize): New attribute.
(WebCore::RenderGrid::computeUsedBreadthOfGridTracks):
RenderGrid::distributeSpaceToTracks() no longer updates the track
sizes so we have to do it after the call returns.
(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctions):
Call RenderGrid::resolveContentBasedTrackSizingFunctionsForItems()
passing a span group instead of a single item.
(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctionsForItems):
It now receives a span group instead of a single item. Apart from
that we need an extra function to get the unaltered track size (as
the current one returns the base size whenever the growth limit is
infinity).
(WebCore::RenderGrid::distributeSpaceToTracks): This no longer
updates track sizes but only the track's planned size;
- rendering/RenderGrid.h:
LayoutTests:
- fast/css-grid-layout/grid-content-sized-columns-resolution-expected.txt:
- fast/css-grid-layout/grid-content-sized-columns-resolution.html:
- fast/css-grid-layout/grid-update-sizes-after-distributing-all-expected.txt: Added.
- fast/css-grid-layout/grid-update-sizes-after-distributing-all.html: Added.
- 6:28 AM WebKitGTK/2.4.x edited by
- (diff)
- 6:28 AM Changeset in webkit [182471] by
-
- 3 edits in releases/WebKitGTK/webkit-2.4/Source/WTF
Merge r178725 - Fix failed to build for Linux/MIPS64EL
https://bugs.webkit.org/show_bug.cgi?id=124370
Patch by YunQiang Su <wzssyqa@gmail.com> on 2015-01-20
Reviewed by Darin Adler.
Add MIPS64EL support.
- wtf/Platform.h:
- wtf/dtoa/utils.h:
- 6:25 AM WebKitGTK/2.4.x edited by
- (diff)
- 6:24 AM Changeset in webkit [182470] by
-
- 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore
[GTK] [WebKit1] Crash under WebCore::ScrollView::contentsToWindow()
https://bugs.webkit.org/show_bug.cgi?id=142343
Patch by Milan Crha <mcrha@redhat.com> on 2015-04-07
Reviewed by Carlos Garcia Campos.
Return early from frameRectsChanged() if the plugin widget doesn't
have a parent.
- platform/gtk/GtkPluginWidget.cpp:
(WebCore::GtkPluginWidget::frameRectsChanged):
- 6:10 AM WebKitGTK/2.4.x edited by
- (diff)
- 6:09 AM Changeset in webkit [182469] by
-
- 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebKit/gtk
[GTK] Memory leak from webkit_web_policy_decision_new()
https://bugs.webkit.org/show_bug.cgi?id=141564
Patch by Milan Crha <mcrha@redhat.com> on 2015-02-16
Reviewed by Carlos Garcia Campos.
- webkit/webkitwebpolicydecision.cpp:
- 6:03 AM Changeset in webkit [182468] by
-
- 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore
Merge r180141 - [GTK] Loading page into WebView shows g_closure_unref warning
https://bugs.webkit.org/show_bug.cgi?id=127474
Patch by Milan Crha <mcrha@redhat.com> on 2015-02-16
Reviewed by Carlos Garcia Campos.
- bindings/gobject/GObjectEventListener.cpp:
(WebCore::GObjectEventListener::gobjectDestroyed):
- 6:01 AM WebKitGTK/2.4.x edited by
- (diff)
- 6:01 AM Changeset in webkit [182467] by
-
- 4 edits2 adds in releases/WebKitGTK/webkit-2.4
Merge r178231 - Calling clearSelection on a detached RenderObject leads to segfault.
https://bugs.webkit.org/show_bug.cgi?id=140275
Reviewed by Simon Fraser.
We collect selection rects and compute selection gaps in order to
paint/clear selection. With certain content, we need to be able
to walk the tree up to a particular container to compute the selection rect.
However this container might not be available when the selection is part of a detached tree.
This is a null-check fix to ensure we don't crash in such cases, but in the long run
selection gaps and rect should be cached between two layouts so that we don't need to
keep collecting/recomputing them. Tracked here: webkit.org/b/140321
Source/WebCore:
Test: editing/selection/clearselection-on-detached-subtree-crash.html
- rendering/RenderBox.cpp:
(WebCore::RenderBox::containingBlockLogicalWidthForContent):
(WebCore::RenderBox::containingBlockLogicalHeightForContent):
- rendering/RenderView.cpp:
(WebCore::RenderView::clearSelection):
LayoutTests:
- editing/selection/clearselection-on-detached-subtree-crash-expected.txt: Added.
- editing/selection/clearselection-on-detached-subtree-crash.html: Added.
- 5:57 AM Changeset in webkit [182466] by
-
- 4 edits1 add in trunk/LayoutTests
[GTK] Gardening 7th April
https://bugs.webkit.org/show_bug.cgi?id=143467
Unreviewed
Patch by Marcos Chavarría Teijeiro <chavarria1991@gmail.com> on 2015-04-07
- platform/gtk/TestExpectations:
- platform/gtk/editing/deleting/regional-indicators-expected.txt: Rebaselined after r182137.
- platform/gtk/editing/pasteboard/emacs-ctrl-k-y-001-expected.txt: Rebaselined after r181889.
- platform/gtk/inspector-protocol/debugger/regress-133182-expected.txt: Added. Rebaselined after r181810.
- 5:27 AM WebKitGTK/2.4.x edited by
- (diff)
- 5:27 AM Changeset in webkit [182465] by
-
- 3 edits2 adds in releases/WebKitGTK/webkit-2.4
Merge r176254 - AX: [ATK] Crash getting the orientation of a MenuListOption after the MenuList was removed from the document
https://bugs.webkit.org/show_bug.cgi?id=138727
Reviewed by Chris Fleizach.
Source/WebCore:
AccessibilityMenuListOption::elementRect() returns the value of the
grandparent MenuList, asserting that the grandparent exists with that
role. But it is possible to have an existing MenuListOption and remove
the element which had been backing that MenuList from the document.
Adding null checks prior to the assertions prevents our crashing if the
parent or grandparent was removed.
Test: platform/gtk/accessibility/combobox-descendants-orientation-crash.html
- accessibility/AccessibilityMenuListOption.cpp:
(WebCore::AccessibilityMenuListOption::elementRect):
LayoutTests:
- platform/gtk/accessibility/combobox-descendants-orientation-crash-expected.txt: Added.
- platform/gtk/accessibility/combobox-descendants-orientation-crash.html: Added.
- 5:25 AM WebKitGTK/2.4.x edited by
- (diff)
- 5:25 AM Changeset in webkit [182464] by
-
- 5 edits2 adds in releases/WebKitGTK/webkit-2.4
Merge r176091 - AX: [ATK] Do not return ATK_ROLE_UNKNOWN for null or otherwise invalid accessible objects
https://bugs.webkit.org/show_bug.cgi?id=137867
Reviewed by Chris Fleizach.
Source/WebCore:
Return ATK_ROLE_INVALID for null or otherwise invalid accessible objects.
Test: platform/gtk/accessibility/detached-object-role.html
- accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleGetRole):
Tools:
Add ATK_ROLE_INVALID to roleToString. Remove the null AtkRole check in
AccessibilityUIElement::role: ATK_ROLE_INVALID = 0, and we need to be
able to test for the presence of ATK_ROLE_INVALID.
- WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::role):
LayoutTests:
- platform/gtk/accessibility/detached-object-role-expected.txt: Added.
- platform/gtk/accessibility/detached-object-role.html: Added.
- 5:23 AM WebKitGTK/2.4.x edited by
- (diff)
- 5:23 AM Changeset in webkit [182463] by
-
- 3 edits2 adds in releases/WebKitGTK/webkit-2.4
Merge r176076 - AX: [ATK] Accessible focus events are emitted when the selection is changed in non-focused combo boxes
https://bugs.webkit.org/show_bug.cgi?id=137866
Reviewed by Mario Sanchez Prada.
Source/WebCore:
Check that the AccessibilityMenuList is really focused before notifying
the platform that it is focused. Likewise, only notify the platform of
an AccessibilityMenuListOption focus gain if the AccessibilityMenuList
containing that option is expanded.
Test: platform/gtk/accessibility/menu-list-unfocused-notifications.html
- accessibility/atk/AXObjectCacheAtk.cpp:
(WebCore::notifyChildrenSelectionChange):
(WebCore::AXObjectCache::postPlatformNotification):
LayoutTests:
- platform/gtk/accessibility/menu-list-unfocused-notifications-expected.txt: Added.
- platform/gtk/accessibility/menu-list-unfocused-notifications.html: Added.
- 5:12 AM WebKitGTK/2.4.x edited by
- (diff)
- 5:12 AM Changeset in webkit [182462] by
-
- 4 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore
Merge r175347 - Notify Settings object when its Page object goes away.
https://bugs.webkit.org/show_bug.cgi?id=138183
rdar://problem/18786900
Reviewed by Andreas Kling.
I could not make a test for this issue.
- page/Page.cpp:
(WebCore::Page::~Page):
- page/Settings.cpp:
(WebCore::setImageLoadingSettings):
(WebCore::Settings::Settings):
(WebCore::Settings::setTextAutosizingEnabled):
(WebCore::Settings::setTextAutosizingWindowSizeOverride):
(WebCore::Settings::setTextAutosizingFontScaleFactor):
(WebCore::Settings::setMediaTypeOverride):
(WebCore::Settings::setScriptEnabled):
(WebCore::Settings::setUserStyleSheetLocation):
(WebCore::Settings::setMinDOMTimerInterval):
(WebCore::Settings::minDOMTimerInterval):
(WebCore::Settings::domTimerAlignmentInterval):
(WebCore::Settings::setUsesPageCache):
(WebCore::Settings::setScreenFontSubstitutionEnabled):
(WebCore::Settings::setFontRenderingMode):
(WebCore::Settings::setDNSPrefetchingEnabled):
(WebCore::Settings::setStorageBlockingPolicy):
(WebCore::Settings::setBackgroundShouldExtendBeyondPage):
(WebCore::Settings::setScrollingPerformanceLoggingEnabled):
(WebCore::Settings::setHiddenPageDOMTimerThrottlingEnabled):
(WebCore::Settings::setHiddenPageCSSAnimationSuspensionEnabled):
(WebCore::Settings::setFontFallbackPrefersPictographs):
- page/Settings.h:
(WebCore::Settings::pageDestroyed):
- 4:58 AM WebKitGTK/Gardening/Calendar edited by
- (diff)
- 4:18 AM WebKitGTK/2.4.x edited by
- (diff)
- 4:18 AM Changeset in webkit [182461] by
-
- 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore
Merge r175277 - FrameProgressTracker expects Page to not have detached
https://bugs.webkit.org/show_bug.cgi?id=138061
Reviewed by Alexey Proskuryakov.
In some cases, a Page may be detached from a Frame before its
FrameLoader is torn down, causing FrameProgressTracker's destructor
to hit a null pointer.
No new tests; it is impossible to reliably simulate the null pointer
case without intrusive code changes.
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::FrameProgressTracker::~FrameProgressTracker):
- 3:49 AM WebKitGTK/2.4.x edited by
- (diff)
- 3:49 AM Changeset in webkit [182460] by
-
- 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore
Merge r175158 - WebContent crash at WebCore::RenderTextControl::textFormControlElement const.
https://bugs.webkit.org/show_bug.cgi?id=138035
Reviewed by Antti Koivisto.
NULL-check element().renderer() before using it.
- html/SearchInputType.cpp:
(WebCore::SearchInputType::didSetValueByUserEdit):
- 3:33 AM WebKitGTK/2.4.x edited by
- (diff)
- 3:33 AM Changeset in webkit [182459] by
-
- 4 edits in releases/WebKitGTK/webkit-2.4/Source
Merge r172759 - TEXTREL in libjavascriptcoregtk-1.0.so.0.11.0 on x86 (or i586)
https://bugs.webkit.org/show_bug.cgi?id=70610
Patch by Magnus Granberg <zorry@gentoo.org> on 2014-08-19
Reviewed by Darin Adler.
Source/JavaScriptCore:
Setup %ebx so we can use the plt.
- jit/ThunkGenerators.cpp:
Source/WTF:
Add PLT if we're building with PIC.
- wtf/InlineASM.h:
- 3:08 AM WebKitGTK/2.4.x edited by
- (diff)
- 3:07 AM Changeset in webkit [182458] by
-
- 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore
REGRESSION(r177885): [GTK][WK1] Cannot compile 2.4.8 when WK2 is disabled
https://bugs.webkit.org/show_bug.cgi?id=140241
Patch by Tomas Popela <tpopela@redhat.com> on 2015-04-07
Reviewed by Carlos Garcia Campos.
We have to compile the PluginPackageNone.cpp and PluginViewNone.cpp
just when WebKit2 is enabled and we are not building for X11.
- GNUmakefile.list.am:
- 2:29 AM WebKitGTK/2.4.x edited by
- (diff)
- 2:28 AM Changeset in webkit [182457] by
-
- 2 edits in releases/WebKitGTK/webkit-2.4
configure check for clang version is incorrect
https://bugs.webkit.org/show_bug.cgi?id=126324
Patch by Philip Chimento <philip.chimento@gmail.com> on 2015-04-07
Reviewed by Carlos Garcia Campos.
- Source/autotools/CheckSystemAndBasicDependencies.m4:
Change compiler version checks of Clang and GCC so that they
handle major/minor versions correctly.
- 2:23 AM Changeset in webkit [182456] by
-
- 6 edits in releases/WebKitGTK/webkit-2.4/Source
Unreviewed. Fix the build with newer GLib.
Source/WebCore:
Use WTF::GMutexLocker.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::updateTexture):
(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):
(WebCore::MediaPlayerPrivateGStreamerBase::paint):
- platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
(webkitVideoSinkTimeoutCallback):
(webkitVideoSinkRender):
(unlockBufferMutex):
(webkitVideoSinkUnlockStop):
(webkitVideoSinkStart):
- platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(webKitWebSrcSetProperty):
(webKitWebSrcGetProperty):
(webKitWebSrcStop):
(webKitWebSrcStart):
(webKitWebSrcChangeState):
(webKitWebSrcQueryWithParent):
(webKitWebSrcGetUri):
(webKitWebSrcSetUri):
(webKitWebSrcNeedDataMainCb):
(webKitWebSrcNeedDataCb):
(webKitWebSrcEnoughDataMainCb):
(webKitWebSrcEnoughDataCb):
(webKitWebSrcSeekMainCb):
(webKitWebSrcSeekDataCb):
(webKitWebSrcSetMediaPlayer):
(StreamingClient::createReadBuffer):
(StreamingClient::handleResponseReceived):
(StreamingClient::handleDataReceived):
(StreamingClient::handleNotifyFinished):
(ResourceHandleStreamingClient::wasBlocked):
(ResourceHandleStreamingClient::cannotShowURL):
Source/WTF:
- wtf/gobject/GMutexLocker.h: Move to the WTF namespace.
- 1:11 AM Changeset in webkit [182455] by
-
- 2 edits in trunk/Tools
web-platform-tests server should retrieve the modules file relatively to its docroot path
https://bugs.webkit.org/show_bug.cgi?id=142742
Reviewed by Darin Adler.
- Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
(WebPlatformTestServer._install_modules): Compute the modules description file path according wpt server doc root path.
- 1:06 AM WebKitGTK/Gardening/Calendar edited by
- (diff)
- 12:45 AM Changeset in webkit [182454] by
-
- 1 copy in releases/WebKitGTK/webkit-2.6.6
WebKitGTK+ 2.6.6
- 12:44 AM Changeset in webkit [182453] by
-
- 4 edits in releases/WebKitGTK/webkit-2.6
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.6.6 release.
.:
- Source/cmake/OptionsGTK.cmake: Bump version numbers.
Source/WebKit2:
- gtk/NEWS: Add release notes for 2.6.6.
- 12:26 AM Changeset in webkit [182452] by
-
- 5 edits1 add in trunk/Source/JavaScriptCore
put_by_val_direct need to check the property is index or not for using putDirect / putDirectIndex
https://bugs.webkit.org/show_bug.cgi?id=140426
Reviewed by Darin Adler.
In the put_by_val_direct operation, we use JSObject::putDirect.
However, it only accepts non-index property. For index property, we need to use JSObject::putDirectIndex.
This patch checks toString-ed Identifier is index or not to choose putDirect / putDirectIndex.
- dfg/DFGOperations.cpp:
(JSC::DFG::putByVal):
(JSC::DFG::operationPutByValInternal):
- jit/JITOperations.cpp:
- llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
- runtime/Identifier.h:
(JSC::isIndex):
(JSC::parseIndex):
- tests/stress/dfg-put-by-val-direct-with-edge-numbers.js: Added.
(lookupWithKey):
(toStringThrowsError.toString):
Apr 6, 2015:
- 11:52 PM Changeset in webkit [182451] by
-
- 4 edits in releases/WebKitGTK/webkit-2.6
Merge r182450 - [GTK] Fix HPPA build
https://bugs.webkit.org/show_bug.cgi?id=143453
Reviewed by Darin Adler.
Add HPPA to the list of supported CPUs.
- CMakeLists.txt:
- 11:25 PM Changeset in webkit [182450] by
-
- 4 edits in trunk
[GTK] Fix HPPA build
https://bugs.webkit.org/show_bug.cgi?id=143453
Reviewed by Darin Adler.
Add HPPA to the list of supported CPUs.
- CMakeLists.txt:
- 11:22 PM Changeset in webkit [182449] by
-
- 8 edits4 adds in trunk
Bing video search result pages are not PageCacheable
https://bugs.webkit.org/show_bug.cgi?id=143463
<rdar://problem/20440916>
Reviewed by Alexey Proskuryakov.
Source/WebCore:
Bing video search result pages are not PageCacheable (tested on iOS).
It both:
- is bad for power usage as it causes a reload when clicking one of the results then navigating back in history.
- degrades user experience because the results page uses infinite scrolling and the scroll position is not properly restored when navigating back, not to mention the user has to wait for the reload to complete.
The issue was that the bing search page was doing a ping load when
clicking on one of the search results. The ping load was done by
create an image and its 'src' attribute to the ping URL. This load
usually did not have time to complete when navigating away so we would
cancel it and the main document would end up with an error that would
prevent the page from entering the page cache. We already have code
making sure load cancellations do not prevent page caching as long as
the loads are for XHR or images. However, the latter check was broken
in the case where the ResourceRequest's cachePartition was non-empty.
This is because the check was using the MemoryCache::ResourceForUrl()
API which rarely does what we want because it will request a dummy
ResourceRequest (without cachePartition) and then call
MemoryCache::resourceForRequest(). This patch updates the check
to use resourceForRequest() directly as we have the ResourceRequest
at this point.
This patch also gets rid of the MemoryCache::ResourceForUrl() API as
it rarely does what we want and it is bug prone. It was only used in
2 places, one of them causing this bug and the other in Internals.
Tests: http/tests/navigation/page-cache-pending-image-load-cache-partition.html
http/tests/navigation/page-cache-pending-image-load.html
- loader/DocumentLoader.cpp:
(WebCore::areAllLoadersPageCacheAcceptable):
Use MemoryCache::resourceForRequest() instead of resourceForUrl() as
we have the ResourceRequest and calling resourceForUrl() would loose
the cachePartition.
- loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::resourceForURL): Deleted.
Drop this API as it is bug prone and rarely does what we want.
- testing/Internals.cpp:
(WebCore::Internals::isLoadingFromMemoryCache):
Update call to create a dummy ResourceRequest and call
resourceForRequest() instead of resourceForUrl(), as this API no
longer exists. The new code also set the cachePartition on the
dummy request so that this function actually behaves as expected
if the cachePartition in the memory cache is non-empty.
Source/WebKit/mac:
Fix the iOS / WK1 build by using MemoryCache::resourceForRequest()
instead of resourceForUrl().
- Misc/WebCache.mm:
(+[WebCache imageForURL:]):
LayoutTests:
Add layout tests to confirm that a pending image load does not prevent
a page from entering the page cache. There are 2 tests, once that cover
the case where the request's cachePartion is empty (passing without the
fix), and another where the request's cachePartition is non-empty
(which only passes with the fix).
- http/tests/navigation/page-cache-pending-image-load-cache-partition-expected.txt: Added.
- http/tests/navigation/page-cache-pending-image-load-cache-partition.html: Added.
- http/tests/navigation/page-cache-pending-image-load-expected.txt: Added.
- http/tests/navigation/page-cache-pending-image-load.html: Added.
- 5:29 PM Changeset in webkit [182448] by
-
- 2 edits in trunk/LayoutTests
http/tests/contentfiltering/block-after-redirect.html fails on Windows
https://bugs.webkit.org/show_bug.cgi?id=143460
- platform/win/TestExpectations: Marked test as ImageOnlyFailure.
- 5:05 PM Changeset in webkit [182447] by
-
- 4 edits in trunk/Source/WebKit2
Create the web inspector process pool lazily
https://bugs.webkit.org/show_bug.cgi?id=143456
rdar://problem/20146520
Reviewed by Mark Lam.
Add and implement WebInspectorProxy::isInspectorProcessPool instead of always creating the inspector process pool
when trying to determine if a given process pool is the inspector process pool.
This should speed up initialization somewhat and avoid creating a storage manager for example.
- UIProcess/WebInspectorProxy.cpp:
(WebKit::WebInspectorProxy::inspectorProcessPool):
(WebKit::WebInspectorProxy::isInspectorProcessPool):
- UIProcess/WebInspectorProxy.h:
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::getLaunchOptions):
- 4:24 PM Changeset in webkit [182446] by
-
- 5 edits3 deletes in trunk/Tools
Unreviewed, rolling out r182445.
https://bugs.webkit.org/show_bug.cgi?id=143459
broke 32 bit build (Requested by alexchristensen on #webkit).
Reverted changeset:
"Use content extensions in MiniBrowser."
https://bugs.webkit.org/show_bug.cgi?id=143446
http://trac.webkit.org/changeset/182445
Patch by Commit Queue <commit-queue@webkit.org> on 2015-04-06
- 4:15 PM Changeset in webkit [182445] by
-
- 5 edits3 adds in trunk/Tools
Use content extensions in MiniBrowser.
https://bugs.webkit.org/show_bug.cgi?id=143446
Patch by Sam Weinig <sam@webkit.org> on 2015-04-06
Reviewed by Alex Christensen.
- MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj:
- MiniBrowser/mac/AppDelegate.h:
- MiniBrowser/mac/AppDelegate.m:
(-[BrowserAppDelegate init]):
(-[BrowserAppDelegate showExtensionsManager:]):
(-[BrowserAppDelegate userContentContoller]):
- MiniBrowser/mac/ExtensionManagerWindowController.h: Added.
- MiniBrowser/mac/ExtensionManagerWindowController.m: Added.
(-[ExtensionManagerWindowController init]):
(-[ExtensionManagerWindowController windowDidLoad]):
(-[ExtensionManagerWindowController add:]):
(-[ExtensionManagerWindowController remove:]):
- MiniBrowser/mac/ExtensionManagerWindowController.xib: Added.
- MiniBrowser/mac/MainMenu.xib:
- 3:53 PM WindowsWithoutCygwin edited by
- (diff)
- 3:48 PM Changeset in webkit [182444] by
-
- 3 edits1 add in trunk/Source/JavaScriptCore
In the 64-bit DFG and FTL, Array::Double case for HasIndexedProperty should set its result to true when all is well.
<https://webkit.org/b/143396>
Reviewed by Filip Pizlo.
The DFG was neglecting to set the result boolean. The FTL was setting it with
an inverted value. Both of these are now resolved.
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileHasIndexedProperty):
- tests/stress/for-in-array-mode.js: Added.
(.):
(test):
- 3:39 PM Changeset in webkit [182443] by
-
- 2 edits in trunk/WebKitLibraries
[Win] [SVG -> OTF Converter] Turn off on Windows until I can get the tests under control
Unreviewed.
- win/tools/vsprops/FeatureDefines.props:
- 3:33 PM Changeset in webkit [182442] by
-
- 17 edits1 add2 deletes in trunk/Source/WebKit2
Combine ActionMenuHitTestResult with WebHitTestResult
https://bugs.webkit.org/show_bug.cgi?id=143444
Reviewed by Beth Dakin.
- Shared/mac/ActionMenuHitTestResult.h: Removed.
- Shared/mac/ActionMenuHitTestResult.mm: Removed.
- Shared/WebHitTestResult.cpp:
(WebKit::WebHitTestResult::Data::Data):
(WebKit::WebHitTestResult::Data::encode):
(WebKit::WebHitTestResult::Data::decode):
(WebKit::WebHitTestResult::Data::platformEncode):
(WebKit::WebHitTestResult::Data::platformDecode):
- Shared/WebHitTestResult.h:
- Shared/mac/WebHitTestResult.mm: Added.
(WebKit::WebHitTestResult::Data::platformEncode):
(WebKit::WebHitTestResult::Data::platformDecode):
- UIProcess/API/mac/WKView.mm:
(-[WKView _didPerformActionMenuHitTest:forImmediateAction:contentPreventsDefault:userData:]):
(-[WKView _didPerformActionMenuHitTest:forImmediateAction:userData:]): Deleted.
- UIProcess/API/mac/WKViewInternal.h:
- UIProcess/PageClient.h:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didPerformActionMenuHitTest):
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
- UIProcess/mac/PageClientImpl.h:
- UIProcess/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::didPerformActionMenuHitTest):
- UIProcess/mac/WKActionMenuController.h:
- UIProcess/mac/WKActionMenuController.mm:
(-[WKActionMenuController willDestroyView:]):
(-[WKActionMenuController _clearActionMenuState]):
(-[WKActionMenuController didPerformActionMenuHitTest:userData:]):
(-[WKActionMenuController _hitTestResultDataImage]):
(-[WKActionMenuController _defaultMenuItemsForImage]):
(-[WKActionMenuController _copyImage:]):
(-[WKActionMenuController _addImageToPhotos:]):
(-[WKActionMenuController _defaultMenuItemsForDataDetectedText]):
(-[WKActionMenuController _defaultMenuItemsForEditableTextWithSuggestions]):
(-[WKActionMenuController _defaultMenuItemsForDataDetectableLink]):
(-[WKActionMenuController _webHitTestResult]):
(-[WKActionMenuController _defaultMenuItems]):
(-[WKActionMenuController _hitTestResultImage]): Deleted.
- UIProcess/mac/WKImmediateActionController.h:
- UIProcess/mac/WKImmediateActionController.mm:
(-[WKImmediateActionController willDestroyView:]):
(-[WKImmediateActionController _clearImmediateActionState]):
(-[WKImmediateActionController didPerformActionMenuHitTest:contentPreventsDefault:userData:]):
(-[WKImmediateActionController immediateActionRecognizerDidUpdateAnimation:]):
(-[WKImmediateActionController _webHitTestResult]):
(-[WKImmediateActionController _defaultAnimationController]):
(-[WKImmediateActionController _updateImmediateActionItem]):
(-[WKImmediateActionController _menuItemForDataDetectedText]):
(-[WKImmediateActionController _animationControllerForText]):
(-[WKImmediateActionController didPerformActionMenuHitTest:userData:]): Deleted.
- WebKit2.xcodeproj/project.pbxproj:
- WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::performActionMenuHitTestAtLocation):
- 3:27 PM Changeset in webkit [182441] by
-
- 2 edits in trunk/Tools
[GTK] install-dependencies should prefer dnf to yum
https://bugs.webkit.org/show_bug.cgi?id=143441
Patch by Michael Catanzaro <Michael Catanzaro> on 2015-04-06
Reviewed by Martin Robinson.
Test for the existance of dnf before yum, and only try to use yum if dnf does not exist.
- gtk/install-dependencies:
- 3:16 PM Changeset in webkit [182440] by
-
- 2 edits in trunk/Tools
[iOS] 'make clean' fails in Tools/WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=143455
Reviewed by Dan Bernstein.
This Makefile adds '-target WebKitTestRunnerApp' to OTHER_OPTIONS during iOS builds, but the top-level
Makefile.shared adds '-alltargets' for clean builds, and xcodebuild does not allow both -target and -alltargets.
- WebKitTestRunner/Makefile: Don't add '-target WebKitTestRunerApp' to OTHER_OPTIONS on clean builds.
- 3:02 PM Changeset in webkit [182439] by
-
- 12 edits1 add in trunk/Source
Synchronize fullscreen animation between processes.
https://bugs.webkit.org/show_bug.cgi?id=143131
Reviewed by Simon Fraser.
Source/WebCore:
Rather than attempt to synchcronize animations across the WebProcess / UIProcess boundary,
do the bounds-change animation in-process by applying a sublayer transformation to the
video layer. This gives the same visual effect as a synchronized bounds animation, but
without needing a synchronization fence. Resolve the difference between the transformation
and bounds by doing a fence-synchronized bounds change after the current animation is
scheduled to complete.
To do this calculation correctly, WebAVPlayer needs to query both the effective
videoLayerFrame and the videoLayerGravity. To that end, add getter methods for
videoLayerFrame() and videoLayerGravity().
- html/HTMLMediaElement.h:
(WebCore::HTMLMediaElement::videoFullscreenGravity):
- platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
(-[WebAVVideoLayer dealloc]): Cancel outstanding performSelector requests.
(-[WebAVVideoLayer setBounds:]): Add a scale transform to simulate a bonuds change.
(-[WebAVVideoLayer resolveBounds]): Reset the scale transform and set the bounds.
(WebVideoFullscreenInterfaceAVKit::setupFullscreenInternal): Set the initial video frame bounds.
(-[WebAVPlayerController layoutSublayersOfLayer:]): Deleted.
- platform/ios/WebVideoFullscreenModel.h:
- platform/ios/WebVideoFullscreenModelVideoElement.h:
- platform/ios/WebVideoFullscreenModelVideoElement.mm:
(WebVideoFullscreenModelVideoElement::videoLayerFrame): Added; simple getter.
(WebVideoFullscreenModelVideoElement::videoLayerGravity): Ditto.
Source/WebKit2:
Support synchronize resizing by animating within the UIProcess. Since setVideoLayerFrameFenced() is now only
ever called from within a 0-duration transaction, make that the official contract of the function and wrap
the WebProcess side of that method in its own 0-duration transaction.
- Platform/spi/ios/BackBoardServicesSPI.h: Added.
- Platform/spi/ios/UIKitSPI.h:
- UIProcess/ios/WebVideoFullscreenManagerProxy.h:
- UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
(WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID): Remember the initial rect.
(WebKit::WebVideoFullscreenManagerProxy::videoLayerFrame): Added; simple getter.
(WebKit::WebVideoFullscreenManagerProxy::setVideoLayerFrame): Use a different synchronization fence primative.
Save the cached frame value.
(WebKit::WebVideoFullscreenManagerProxy::videoLayerGravity): Added; simple getter.
(WebKit::WebVideoFullscreenManagerProxy::setVideoLayerGravity): Save the cached gravity value.
- WebKit2.xcodeproj/project.pbxproj:
- WebProcess/ios/WebVideoFullscreenManager.mm:
(WebKit::WebVideoFullscreenManager::setVideoLayerFrameFenced): Wrap in a 0-length transaction.
- 2:08 PM Changeset in webkit [182438] by
-
- 6 edits in trunk/Websites/perf.webkit.org
Perf dashboard should be able to trigger A/B testing jobs for iOS
https://bugs.webkit.org/show_bug.cgi?id=143398
Reviewed by Chris Dumez.
Fix various bugs in the perf dashboard so that it can schedule A/B testing jobs for iOS.
Also generalized sync-with-buildbot.py slightly to meet the requirements of iOS builders.
- public/api/triggerables.php:
(main): Avoid spitting a warning when $id_to_triggerable doesn't contain the triggerable.
- public/v2/analysis.js:
(App.AnalysisTask.triggerable): Log an error when failed to fetch triggerables for debugging purposes.
- public/v2/app.js:
(App.AnalysisTaskController.updateRootConfigurations): Show 'None' when a revision is missing from
some of the data points. This will happen when we modify the list of projects we build for iOS.
(App.AnalysisTaskController.actions.createTestGroup): Gracefully fail by showing alerts when an user
attempts to create an invalid test group; when there is already another test group of the same or when
only either configuration specifies the revision for some repository.
(App.AnalysisTaskController._updateRootsBySelectedPoints): Fixed a typo: sets[i] -> set.
- public/v2/index.html: Don't show the form to create a new test group if it's not available.
- tools/sync-with-buildbot.py:
(find_request_updates):
(schedule_request): iOS builders take a JSON that contains the list of roots. Generate this JSON when
a dictionary of the form {rootsExcluding: WebKit} is specified. Also replaced the way we refer to
a revision from $-based text replacements to an explicit dictionary of the form {root: "WebKit"}.
(request_id_from_build): Don't hard code the parameter name here. Retrieve the name from the config.
- 1:49 PM Changeset in webkit [182437] by
-
- 5 edits in trunk/Source/WebKit2
[WK2][iOS] Regression(r182323): ASSERTION FAILED: WebCore::SQLiteDatabaseTracker::hasTransactionInProgress() in NetworkCache::Statistics::initialize()
https://bugs.webkit.org/show_bug.cgi?id=143451
<rdar://problem/20437994>
Reviewed by Anders Carlsson.
Initialize WebProcess::m_webSQLiteDatabaseTracker and
NetworkProcess::m_webSQLiteDatabaseTracker in their respective class
constructors instead of doing it later in the initializeWebProcess() /
initializeNetworkProcess() methods.
If we do it later, it can happen that the tracker gets set after
a SQLiteTransactionInProgressAutoCounter initialization and before
the actual transaction. When this happens, the
SQLiteTransactionInProgressAutoCounter variable fails to increment the
transaction count. Then when the transaction is executed,
SQLiteDatabaseTracker::hasTransactionInProgress() can return false.
This would lead to possible assertions on start up on iOS.
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::NetworkProcess):
(WebKit::NetworkProcess::initializeNetworkProcess):
- NetworkProcess/NetworkProcess.h:
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::initializeConnection):
- WebProcess/WebProcess.h:
- 1:39 PM Changeset in webkit [182436] by
-
- 2 edits in trunk/Source/WebCore
Simple line layout: RunResolver::Iterator class cleanup.
https://bugs.webkit.org/show_bug.cgi?id=143445
Reviewed by Antti Koivisto.
- SimpleLineLayout::Run is an intermediate structure and should not be publicly accessible through RunResolver::Iterator.
RunResolver::Run is the class to use to access run properties.
- Also move advance()/advanceLine() to private. Callers should use LineResolver to advance on lines.
No change in functionality.
- rendering/SimpleLineLayoutResolver.h:
- 1:26 PM Changeset in webkit [182435] by
-
- 2 edits in trunk/Source/WebKit2
https://trac.webkit.org/changeset/182338 introduced a build failure that I
attempted to fix with https://trac.webkit.org/changeset/182341 , but that disabled
the feature accidentally. This should do the right thing.
- UIProcess/API/mac/WKView.mm:
(-[WKView pressureChangeWithEvent:]):
- 12:58 PM Changeset in webkit [182434] by
-
- 2 edits in trunk/Tools
WebKit1.SetAndUpdateCacheModelPreferencesChangeMix fails on some machines
https://bugs.webkit.org/show_bug.cgi?id=143450
Reviewed by Anders Carlsson.
- TestWebKitAPI/Tests/mac/SetAndUpdateCacheModel.mm: (TestWebKitAPI::TEST):
Make sure that the view is actually closed, regardless of anything else that happens beneath.
Also, removed unnecessary get() calls.
- 12:07 PM Changeset in webkit [182433] by
-
- 21 edits1 add in trunk/Source/JavaScriptCore
[ES6] DFG and FTL should be aware of that StringConstructor behavior for symbols becomes different from ToString
https://bugs.webkit.org/show_bug.cgi?id=143424
Reviewed by Geoffrey Garen.
In ES6, StringConstructor behavior becomes different from ToString abstract operations in the spec. (and JSValue::toString).
ToString(symbol) throws a type error.
However, String(symbol) produces SymbolDescriptiveString(symbol).
So, in DFG and FTL phase, they should not inline StringConstructor to ToString.
Now, in the template literals patch, ToString DFG operation is planned to be used.
And current ToString behavior is aligned to the spec (and JSValue::toString) and it's better.
So intead of changing ToString behavior, this patch adds CallStringConstructor operation into DFG and FTL.
In CallStringConstructor, all behavior in DFG analysis is the same.
Only the difference from ToString is, when calling DFG operation functions, it calls
operationCallStringConstructorOnCell and operationCallStringConstructor instead of
operationToStringOnCell and operationToString.
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
- dfg/DFGBackwardsPropagationPhase.cpp:
(JSC::DFG::BackwardsPropagationPhase::propagate):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleConstantInternalFunction):
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
- dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::fixupToStringOrCallStringConstructor):
(JSC::DFG::FixupPhase::attemptToMakeFastStringAdd):
(JSC::DFG::FixupPhase::fixupToString): Deleted.
- dfg/DFGNodeType.h:
- dfg/DFGOperations.cpp:
- dfg/DFGOperations.h:
- dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
- dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileToStringOrCallStringConstructorOnCell):
(JSC::DFG::SpeculativeJIT::compileToStringOnCell): Deleted.
- dfg/DFGSpeculativeJIT.h:
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGStructureRegistrationPhase.cpp:
(JSC::DFG::StructureRegistrationPhase::run):
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileToStringOrCallStringConstructor):
(JSC::FTL::LowerDFGToLLVM::compileToString): Deleted.
- runtime/StringConstructor.cpp:
(JSC::stringConstructor):
(JSC::callStringConstructor):
- runtime/StringConstructor.h:
- tests/stress/symbol-and-string-constructor.js: Added.
(performString):
- 11:37 AM Changeset in webkit [182432] by
-
- 4 edits in trunk/Source/WebKit2
Unreviewed, rolling out r182296.
https://bugs.webkit.org/show_bug.cgi?id=143448
This will disturb network cache efficacy logging, we should
reland this later. (Requested by cdumez on #webkit).
Reverted changeset:
"[WK2][NetworkCache] Drop HTTP method from NetworkCache::Key"
https://bugs.webkit.org/show_bug.cgi?id=143348
http://trac.webkit.org/changeset/182296
- 10:00 AM Changeset in webkit [182431] by
-
- 5 edits in trunk/Source/WebCore
Use a RenderObject bit for isRenderFlowThread()
https://bugs.webkit.org/show_bug.cgi?id=143439
Reviewed by Darin Adler.
Turning isRenderFlowThread() into a bit in rare data rather than a virtual function reduces
the time under RenderLayer::scrollTo() on a large overflow:scroll table from 56% to 44%.
- rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::RenderFlowThread):
- rendering/RenderFlowThread.h:
- rendering/RenderObject.cpp:
(WebCore::RenderObject::setIsRenderFlowThread):
- rendering/RenderObject.h:
(WebCore::RenderObject::isDragging):
(WebCore::RenderObject::hasReflection):
(WebCore::RenderObject::isRenderFlowThread):
(WebCore::RenderObject::RenderObjectRareData::RenderObjectRareData):
- 9:32 AM Changeset in webkit [182430] by
-
- 6 edits2 deletes in releases/WebKitGTK/webkit-2.8/Source
Merge r182175 - [GTK] DnD icon/widget has odd background
https://bugs.webkit.org/show_bug.cgi?id=143217
Reviewed by Martin Robinson.
Source/WebCore:
Remove DragIcon class since it's no longer needed with GTK+3 and
the GTK+2 code there is unused. GTK+ knows what to do with a cairo
surface, I guess we migrated the GTK+2 code to GTK+3 without
realizing that using the surface was enough.
- PlatformGTK.cmake:
- platform/gtk/DragIcon.cpp: Removed.
- platform/gtk/DragIcon.h: Removed.
Source/WebKit2:
Use gtk_drag_set_icon_surface() to set the drag icon image,
instead of DragIcon class.
- UIProcess/API/gtk/WebKitWebView.cpp:
- UIProcess/gtk/DragAndDropHandler.cpp:
(WebKit::DragAndDropHandler::startDrag):
- UIProcess/gtk/DragAndDropHandler.h:
- 9:30 AM Changeset in webkit [182429] by
-
- 3 edits2 adds in releases/WebKitGTK/webkit-2.8
Merge r182051 - Inline continuation code should not take anonymous containing wrapper granted.
https://bugs.webkit.org/show_bug.cgi?id=133312
Reviewed by Dave Hyatt.
It's wrong to assume that when RenderInline is part of an inline continuation, its containing block
is an anonymous wrapper and its sibling might be a block level renderer.
When the inline continuation is no longer needed, for example when the block level renderer that initiated the continuation
is detached from the render tree, the inline renderes still continue to form continuation.(however they no longer require
anonymous wrappers)
Source/WebCore:
Test: fast/inline/crash-when-position-property-is-changed-and-no-longer-in-continuation.html
- rendering/RenderInline.cpp:
(WebCore::updateStyleOfAnonymousBlockContinuations):
(WebCore::RenderInline::styleDidChange):
LayoutTests:
- fast/inline/crash-when-position-property-is-changed-and-no-longer-in-continuation-expected.txt: Added.
- fast/inline/crash-when-position-property-is-changed-and-no-longer-in-continuation.html: Added.
- 9:28 AM Changeset in webkit [182428] by
-
- 18 edits1 delete in trunk
Reduce the dependency on Flash in regression tests
https://bugs.webkit.org/show_bug.cgi?id=143391
Reviewed by Anders Carlsson.
Tools:
- WebKitTestRunner/TestController.cpp: (WTR::TestController::decidePolicyForPluginLoad):
Only allow QuickTime and the test plug-in.
LayoutTests:
- accessibility/inline-block-assertion.html:
- accessibility/plugin.html:
- compositing/geometry/empty-embed-rects.html:
- fast/history/resources/subframe-with-plugin.html:
- fast/images/embed-does-not-propagate-dimensions-to-object-ancestor.html:
- fast/loader/loadInProgress.html:
- fast/replaced/border-radius-clip.html:
- fast/replaced/embed-display-none.html:
- plugins/crash-restoring-plugin-page-from-page-cache.html:
- plugins/object-embed-plugin-scripting.html:
- plugins/resources/plugin-frame.html:
Use TestNetscapePlugin, as the tests don't appear to have any real need for Flash.
- plugins/iframe-shims.html: Removed. This was a test for a chromium only feature
that never existed in WebKit.
- platform/mac/TestExpectations:
- platform/wincairo/TestExpectations:
Removed the deleted plugins/iframe-shims.html.
- platform/mac-wk2/TestExpectations: Skip snapshotting tests that use Flash,
because they make WebKitTestRunner crash now. Marked all other snapshotting tests
as Pass/Failure, because they don't really make any sense, and are only useful for
finsing crashes.
- platform/wk2/TestExpectations: Skipped a few remaining tests that use Flash.
These tests still run (and pass) under WebKit1, regardless of whether Flash is
installed, so they don't seem like very accurate tests.
- 9:28 AM Changeset in webkit [182427] by
-
- 3 edits2 adds in releases/WebKitGTK/webkit-2.6
Merge r182051 - Inline continuation code should not take anonymous containing wrapper granted.
https://bugs.webkit.org/show_bug.cgi?id=133312
Reviewed by Dave Hyatt.
It's wrong to assume that when RenderInline is part of an inline continuation, its containing block
is an anonymous wrapper and its sibling might be a block level renderer.
When the inline continuation is no longer needed, for example when the block level renderer that initiated the continuation
is detached from the render tree, the inline renderes still continue to form continuation.(however they no longer require
anonymous wrappers)
Source/WebCore:
Test: fast/inline/crash-when-position-property-is-changed-and-no-longer-in-continuation.html
- rendering/RenderInline.cpp:
(WebCore::updateStyleOfAnonymousBlockContinuations):
(WebCore::RenderInline::styleDidChange):
LayoutTests:
- fast/inline/crash-when-position-property-is-changed-and-no-longer-in-continuation-expected.txt: Added.
- fast/inline/crash-when-position-property-is-changed-and-no-longer-in-continuation.html: Added.
- 9:16 AM Changeset in webkit [182426] by
-
- 11 edits in releases/WebKitGTK/webkit-2.6
Merge r180020 - Drop the quirks-mode exception for CSS MIME types
https://bugs.webkit.org/show_bug.cgi?id=141501
Reviewed by Alexey Proskuryakov.
Source/WebCore:
Drop the quirks-mode exception for CSS MIME types.
This matches Firefox's behavior.
This patch is based on the following Blink revision:
http://src.chromium.org/viewvc/blink?view=revision&revision=189669
Tests:
- http/tests/misc/css-accept-any-type.html
- http/tests/security/cross-origin-css.html
- css/StyleSheetContents.cpp:
(WebCore::StyleSheetContents::parseAuthorStyleSheet):
- dom/ProcessingInstruction.cpp:
(WebCore::ProcessingInstruction::setCSSStyleSheet):
- inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::cachedResourceContent):
- loader/cache/CachedCSSStyleSheet.cpp:
(WebCore::CachedCSSStyleSheet::sheetText):
(WebCore::CachedCSSStyleSheet::canUseSheet):
- loader/cache/CachedCSSStyleSheet.h:
LayoutTests:
Update a couple of layout tests now that we dropped the quirks-mode
exception for CSS MIME types.
- http/tests/misc/css-accept-any-type-expected.txt:
- http/tests/misc/css-accept-any-type.html:
- http/tests/security/cross-origin-css-expected.txt:
- http/tests/security/cross-origin-css.html:
- 9:04 AM Changeset in webkit [182425] by
-
- 3 edits in releases/WebKitGTK/webkit-2.6/Source/WTF
Merge r178725 - Fix failed to build for Linux/MIPS64EL
https://bugs.webkit.org/show_bug.cgi?id=124370
Patch by YunQiang Su <wzssyqa@gmail.com> on 2015-01-20
Reviewed by Darin Adler.
Add MIPS64EL support.
- wtf/Platform.h:
- wtf/dtoa/utils.h:
- 8:49 AM Changeset in webkit [182424] by
-
- 2 edits in trunk/LayoutTests
[Win] Unreviewed test update after r182369.
New test does not pass on Windows.
- platform/win/TestExpectations: Skip.
- 8:30 AM Changeset in webkit [182423] by
-
- 6 edits in trunk
[Win] [SVG -> OTF Converter] Support the SVG -> OTF Font Converter
https://bugs.webkit.org/show_bug.cgi?id=143402
Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2015-04-06
Reviewed by Darin Adler.
Source/WebCore:
There are a few pieces to the converter that Windows requires that we haven't already
implemented:
- Checksums were being calculated with the wrong endianness
- Windows requires a format 4 'cmap' subtable in addition to the format 12 one we already
were using
- Windows requires a reference to a Private DICT inside the CFF table, even if the DICT
is of 0 length.
Covered by all our existing SVG font tests.
- svg/SVGFontFaceElement.h: Add capHeight accessor.
- svg/SVGFontFaceElement.cpp:
(WebCore::SVGFontFaceElement::capHeight): Ditto.
- svg/SVGToOTFConversion.cpp: Update the conversion process according to the above
requirements.
(WebCore::SVGToOTFFontConverter::appendFormat12CMAPTable):
(WebCore::SVGToOTFFontConverter::appendFormat4CMAPTable):
(WebCore::SVGToOTFFontConverter::appendCMAPTable): Use helpers.
(WebCore::SVGToOTFFontConverter::appendHHEATable): Use member variables.
(WebCore::SVGToOTFFontConverter::appendOS2Table): Update to version 2.
(WebCore::SVGToOTFFontConverter::appendCFFTable): Create a reference to a
zero-sized Private DICT
(WebCore::SVGToOTFFontConverter::SVGToOTFFontConverter): Populate member
variables.
(WebCore::SVGToOTFFontConverter::calculateChecksum): Flip endianness
WebKitLibraries:
- win/tools/vsprops/FeatureDefines.props: Enable the define.
- 8:25 AM Changeset in webkit [182422] by
-
- 4 edits in releases/WebKitGTK/webkit-2.6
Merge r181864 - Source/WebKit2:
Make platform/mac-wk2/plugins/destroy-during-async-npp-new.html work again.
https://bugs.webkit.org/show_bug.cgi?id=133692
rdar://problem/17255947
Reviewed by Alexey Proskuryakov.
Add plug-in destruction protectors around message receiver code that can call out to NPObjects or JavaScript
where we need the plug-in to stay around after the call.
- Shared/Plugins/NPObjectMessageReceiver.cpp:
(WebKit::NPObjectMessageReceiver::invoke):
(WebKit::NPObjectMessageReceiver::invokeDefault):
(WebKit::NPObjectMessageReceiver::getProperty):
(WebKit::NPObjectMessageReceiver::setProperty):
(WebKit::NPObjectMessageReceiver::construct):
LayoutTests:
Make platform/mac-wk2/plugins/destroy-during-async-npp-new.html work again
https://bugs.webkit.org/show_bug.cgi?id=133692
rdar://problem/17255947
Reviewed by Alexey Proskuryakov.
- platform/mac-wk2/TestExpectations:
Unskip test.
- 8:23 AM Changeset in webkit [182421] by
-
- 4 edits in releases/WebKitGTK/webkit-2.6/Source/JavaScriptCore
Merge r181835 - DFG OSR exit shouldn't assume that the frame count for exit is greater than the frame count in DFG
https://bugs.webkit.org/show_bug.cgi?id=142948
Reviewed by Sam Weinig.
It's necessary to ensure that the stack pointer accounts for the extent of our stack usage
since a signal may clobber the area below the stack pointer. When the DFG is executing,
the stack pointer accounts for the DFG's worst-case stack usage. When we OSR exit back to
baseline, we will use a different amount of stack. This is because baseline is a different
compiler. It will make different decisions. So it will use a different amount of stack.
This gets tricky when we are in the process of doing an OSR exit, because we are sort of
incrementally transforming the stack from how it looked in the DFG to how it will look in
baseline. The most conservative approach would be to set the stack pointer to the max of
DFG and baseline.
When this code was written, a reckless assumption was made: that the stack usage in
baseline is always at least as large as the stack usage in DFG. Based on this incorrect
assumption, the code first adjusts the stack pointer to account for the baseline stack
usage. This sort of usually works, because usually baseline does happen to use more stack.
But that's not an invariant. Nobody guarantees this. We will never make any changes that
would make this be guaranteed, because that would be antithetical to how optimizing
compilers work. The DFG should be allowed to use however much stack it decides that it
should use in order to get good performance, and it shouldn't try to guarantee that it
always uses less stack than baseline.
As such, we must always assume that the frame size for DFG execution (i.e.
frameRegisterCount) and the frame size in baseline once we exit (i.e.
requiredRegisterCountForExit) are two independent quantities and they have no
relationship.
Fortunately, though, this code can be made correct by just moving the stack adjustment to
just before we do conversions. This is because we have since changed the OSR exit
algorithm to first lift up all state from the DFG state into a scratch buffer, and then to
drop it out of the scratch buffer and into the stack according to the baseline layout. The
point just before conversions is the point where we have finished reading the DFG frame
and will not read it anymore, and we haven't started writing the baseline frame. So, at
this point it is safe to set the stack pointer to account for the frame size at exit.
This is benign because baseline happens to create larger frames than DFG.
- dfg/DFGOSRExitCompiler32_64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
- dfg/DFGOSRExitCompiler64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
- dfg/DFGOSRExitCompilerCommon.cpp:
(JSC::DFG::adjustAndJumpToTarget):
- 8:19 AM Changeset in webkit [182420] by
-
- 3 edits2 adds in releases/WebKitGTK/webkit-2.6
Merge r181773 - Source/WebCore:
REGRESSION (r109593): Clicking after last inline element could cause a crash.
https://bugs.webkit.org/show_bug.cgi?id=142880
rdar://problem/17222294
Reviewed by Ryosuke Niwa.
Test: editing/selection/click-after-last-inline-crash.html
- rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::closestLeafChildForLogicalLeftPosition):
- 8:18 AM Changeset in webkit [182419] by
-
- 9 edits4 adds in releases/WebKitGTK/webkit-2.6
Merge r181691 - Flex and grid items should be painted as inline-blocks
https://bugs.webkit.org/show_bug.cgi?id=142266
Reviewed by Darin Adler.
Source/WebCore:
Based on Blink r157004 by <cbiesinger@chromium.org>.
https://src.chromium.org/viewvc/blink?revision=157004&view=revision
Both flexbox and grid specs define that the painting order of flex/grid
items is the same as inline blocks. See
http://dev.w3.org/csswg/css-flexbox/#painting and
http://dev.w3.org/csswg/css-grid/#z-order.
Extracted inline blocks painting code from InlineElementBox and moved to
a helper method that will be reused for flexboxes and grids.
Tests: css3/flexbox/flex-item-text-background-not-interleaved.html
fast/css-grid-layout/grid-item-text-background-not-interleaved.html
- rendering/InlineElementBox.cpp:
(WebCore::InlineElementBox::paint): Move code to
RenderElement::paintAsInlineBlock().
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::paintChild): Add new argument to paint children
as inline blocks.
- rendering/RenderBlock.h: Define PaintType enmu and modify paintChild()
signature to add the new argument.
- rendering/RenderElement.cpp:
(WebCore::paintPhase): Paint element in a phase.
(WebCore::RenderElement::paintAsInlineBlock): Code extracted from
InlineElementBox::paint().
- rendering/RenderElement.h: Add new method signature.
- rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::paintChildren): Call
RenderBlock::paintChild() with the new argument.
- rendering/RenderGrid.cpp:
(WebCore::RenderGrid::paintChildren): Ditto.
LayoutTests:
- css3/flexbox/flex-item-text-background-not-interleaved-expected.html: Added.
- css3/flexbox/flex-item-text-background-not-interleaved.html: Added.
- fast/css-grid-layout/float-not-protruding-into-next-grid-item-expected.html:
Add some vertical space to avoid issues with backgrounds.
- fast/css-grid-layout/float-not-protruding-into-next-grid-item.html:
Ditto.
- fast/css-grid-layout/grid-item-text-background-not-interleaved-expected.html: Added.
- fast/css-grid-layout/grid-item-text-background-not-interleaved.html: Added.
- 8:09 AM Changeset in webkit [182418] by
-
- 2 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore
Merge r181787 - [GTK] Crash due to empty drag image during drag-and-drop
https://bugs.webkit.org/show_bug.cgi?id=142671
Reviewed by Philippe Normand.
Return early from ImageBuffer constructor if an empty size is
given. This is a speculative fix for a crash while starting a drag
and drop operation, that I haven't been able to reproduce.
- platform/graphics/cairo/ImageBufferCairo.cpp:
(WebCore::ImageBuffer::ImageBuffer):
- 8:07 AM Changeset in webkit [182417] by
-
- 3 edits2 adds in releases/WebKitGTK/webkit-2.6
Merge r181600 - AX: Crash viewing http://www.last.fm/
https://bugs.webkit.org/show_bug.cgi?id=142309
Reviewed by Chris Fleizach.
Source/WebCore:
The crash occurs when a not-yet-rendered object emits a children-changed
signal. If an assistive technology is listening, AT-SPI2 will attempt to
create and cache the state set for the child being added and the creation
of the state set assumes a rendered object.
Test: platform/gtk/accessibility/no-notification-for-unrendered-iframe-children.html
- accessibility/atk/AXObjectCacheAtk.cpp:
(WebCore::AXObjectCache::attachWrapper):
LayoutTests:
This test doesn't verify the absence of the crash because the crash seems
to require that an assistive technology is listening for events, and that
AT-SPI2 is caching the tree for that assistive technology -- something we
cannot count on being the case on our bots. (I suspect that the reason non-
assistive technology users of Epiphany were getting hit by this is because
Caribou was listening for events in the background, thus they were AT users
without realizing it. That Caribou issue is in theory now resolved.) What
this test does verify is the absence of children-changed:add accessibility
signals for non-rendered objects, which is the source of the crash given
the aforementioned environment.
- platform/gtk/accessibility/no-notification-for-unrendered-iframe-children-expected.txt: Added.
- platform/gtk/accessibility/no-notification-for-unrendered-iframe-children.html: Added.
- 8:06 AM Changeset in webkit [182416] by
-
- 2 edits in releases/WebKitGTK/webkit-2.6/Source/WebKit2
Merge r181599 - ASSERT(m_plugin) on plugins/snapshotting/snapshot-plugin-not-quite-blocked-by-image.html
https://bugs.webkit.org/show_bug.cgi?id=142637
Reviewed by Dean Jackson.
- WebProcess/Plugins/PluginView.cpp: (WebKit::PluginView::pluginSnapshotTimerFired):
m_plugin can be legitimately null.
- 8:05 AM Changeset in webkit [182415] by
-
- 2 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore
Merge r181565 - URLs visited during private browsing show up in WebpageIcons.db
rdar://problem/11254910 and https://bugs.webkit.org/show_bug.cgi?id=142733
Patch by Sam Weinig. Reviewed by Brady Eidson.
- loader/icon/IconController.cpp:
(WebCore::IconController::startLoader): Bail early here if the page is using an ephemeral session.
(WebCore::IconController::continueLoadWithDecision): Instead of here.
- 8:03 AM Changeset in webkit [182414] by
-
- 7 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore
Merge r181449 - Stop using single-include headers that are only available since GStreamer >= 1.2.
https://bugs.webkit.org/show_bug.cgi?id=142537
Patch by Sebastian Dröge <sebastian@centricular.com> on 2015-03-12
Reviewed by Philippe Normand.
- platform/audio/gstreamer/AudioDestinationGStreamer.cpp:
- platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
- platform/audio/gstreamer/AudioSourceProviderGStreamer.cpp:
- platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
- platform/graphics/gstreamer/GStreamerUtilities.cpp:
- platform/graphics/gstreamer/GStreamerUtilities.h:
- platform/graphics/gstreamer/ImageGStreamer.h:
Instead of using single-include headers for the GStreamer libraries,
directly include the headers we need. The single-include headers were
only added in 1.2, and this would be the only reason why we would
depend on 1.2.
- 7:56 AM Changeset in webkit [182413] by
-
- 7 edits1 add in releases/WebKitGTK/webkit-2.6/Source
Merge r181305 - 8-bit version of weakCompareAndSwap() can cause an infinite loop.
https://webkit.org/b/142513>
Reviewed by Filip Pizlo.
Source/JavaScriptCore:
Added a test that exercises the 8-bit CAS from multiple threads. The threads
will contend to set bits in a large array of bytes using the CAS function.
- API/tests/CompareAndSwapTest.cpp: Added.
(Bitmap::Bitmap):
(Bitmap::numBits):
(Bitmap::clearAll):
(Bitmap::concurrentTestAndSet):
(setBitThreadFunc):
(testCompareAndSwap):
- API/tests/testapi.c:
(main):
- JavaScriptCore.vcxproj/testapi/testapi.vcxproj:
- JavaScriptCore.vcxproj/testapi/testapi.vcxproj.filters:
- JavaScriptCore.xcodeproj/project.pbxproj:
Source/WTF:
Presently, Bitmap::concurrentTestAndSet() uses the 8-bit version of
weakCompareAndSwap() (which compares and swaps an uint8_t value).
Bitmap::concurrentTestAndSet() has a loop that checks if a bit in the
byte of interest has been set. If not, it will call the 8-bit CAS
function to set the bit.
Under the covers, for ARM, the 8-bit CAS function actually works with a
32-bit CAS. The 8-bit CAS will first fetch the 32-bit value in memory
that should contain the 8-bit value, and check if it contains the
expected byte. If the value in memory doesn't have the expected byte,
it will return early to its caller. The expectation is that the caller
will reload the byte from memory and call the 8-bit CAS again.
Unfortunately, this code path that returns early does not have a
compiler fence. Without a compiler fence, the C++ compiler can
optimize away the reloading of the expected byte value, leaving it
unchanged. As a result, we'll have a infinite loop here that checks a
value that will never change, and the loop will not terminate until the
value changes.
The fix is to eliminate the early return check in the 8-bit CAS, and
have it always call down to the 32-bit CAS. The 32-bit CAS has a
compiler fence which will prevent this issue.
- wtf/Atomics.h:
(WTF::weakCompareAndSwap):
- 6:35 AM Changeset in webkit [182412] by
-
- 18 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore
Merge r180772 - Use NeverDestroyed for JS wrapper owners.
<https://webkit.org/b/142090>
Reviewed by Chris Dumez.
Using NeverDestroyed puts these objects in BSS which is preferable
since that prevents them from pinning down entire malloc pages forever.
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader): Use NeverDestroyed instead of DEPRECATED_DEFINE_STATIC_LOCAL.
- bindings/scripts/test/JS/*: Rebaseline bindings tests for this change.
- 6:13 AM Changeset in webkit [182411] by
-
- 3 edits2 adds in releases/WebKitGTK/webkit-2.6
Merge r180767 - Use after free in WebCore::RenderNamedFlowFragment::restoreRegionObjectsOriginalStyle
https://bugs.webkit.org/show_bug.cgi?id=138366
Reviewed by Dave Hyatt.
This patch ensures that we clean up RenderNamedFlowFragment::m_renderObjectRegionStyle when embedded flow content is getting destroyed.
In m_renderObjectRegionStyle hash map, we store style information about the named flow's descendant children.
When a child is being detached from the tree, it removes itself from this hashmap.
We do it by traversing up on the ancestor chain and call removeFlowChildInfo() on the parent flow.
However in case of embedded flows (for example multicolumn content inside a region), we need to check whether the parent flow
is inside a flow too and continue the cleanup accordingly.
Source/WebCore:
Test: fast/regions/region-with-multicolumn-embedded-crash.html
- rendering/RenderObject.cpp:
(WebCore::RenderObject::removeFromRenderFlowThreadIncludingDescendants):
LayoutTests:
- fast/regions/region-with-multicolumn-embedded-crash-expected.txt: Added.
- fast/regions/region-with-multicolumn-embedded-crash.html: Added.
- 5:54 AM Changeset in webkit [182410] by
-
- 2 edits1 add in releases/WebKitGTK/webkit-2.6/Source/JavaScriptCore
Merge r180505 - Crash in DFGFrozenValue
https://bugs.webkit.org/show_bug.cgi?id=141883
Reviewed by Benjamin Poulain.
If a value might be a cell, then we have to have Graph freeze it rather than trying to
create the FrozenValue directly. Creating it directly is just an optimization for when you
know for sure that it cannot be a cell.
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
- tests/stress/regress-141883.js: Added. Hacked the original test to be faster while still crashing before this fix.
- 5:47 AM Changeset in webkit [182409] by
-
- 2 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore
Merge r180503 - [GStreamer] Redundant track language notifications
https://bugs.webkit.org/show_bug.cgi?id=141908
Reviewed by Žan Doberšek.
Invoke languageChanged only if the language code actually
changed.
- platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
(WebCore::TrackPrivateBaseGStreamer::notifyTrackOfTagsChanged):
- 5:45 AM Changeset in webkit [182408] by
-
- 2 edits in releases/WebKitGTK/webkit-2.6
Merge r180502 - [GTK] Fails to compile with cmake 3.2.x
https://bugs.webkit.org/show_bug.cgi?id=141796
With cmake 3.2.x we have to explicitly ask for X11 otherwise the
X11_X11_LIB variable won't be set thus the X11 linker flags won't be
added and the build will fail.
Patch by Tomas Popela <tpopela@redhat.com> on 2015-02-23
Reviewed by Martin Robinson.
- Source/cmake/OptionsGTK.cmake:
- 5:42 AM Changeset in webkit [182407] by
-
- 2 edits in releases/WebKitGTK/webkit-2.6/Source/WTF
Merge r180434 - RunLoop::dispatch() should drop the mutex before calling wakeUp().
https://bugs.webkit.org/show_bug.cgi?id=141820
Reviewed by Alexey Proskuryakov.
RunLoop::wakeUp() calls into CoreFoundation which could take time,
so scope the mutex just to protect m_functionQueue.
- wtf/RunLoop.cpp:
(WTF::RunLoop::dispatch):
- 5:40 AM Changeset in webkit [182406] by
-
- 28 edits in trunk/Source
Return Optional<uint32_t> from PropertyName::asIndex
https://bugs.webkit.org/show_bug.cgi?id=143422
Reviewed by Darin Adler.
Source/JavaScriptCore:
PropertyName::asIndex returns uint32_t and use UINT_MAX as NotAnIndex.
But it's not obvious to callers.
This patch changes
- PropertyName::asIndex() to return Optional<uint32_t> and
- function name
asIndex()toparseIndex().
It forces callers to check the value is index or not explicitly.
- bytecode/GetByIdStatus.cpp:
(JSC::GetByIdStatus::computeFor):
- bytecode/PutByIdStatus.cpp:
(JSC::PutByIdStatus::computeFor):
- bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitDirectPutById):
- jit/Repatch.cpp:
(JSC::emitPutTransitionStubAndGetOldStructure):
- jsc.cpp:
- runtime/ArrayPrototype.cpp:
(JSC::arrayProtoFuncSort):
- runtime/GenericArgumentsInlines.h:
(JSC::GenericArguments<Type>::getOwnPropertySlot):
(JSC::GenericArguments<Type>::put):
(JSC::GenericArguments<Type>::deleteProperty):
(JSC::GenericArguments<Type>::defineOwnProperty):
- runtime/Identifier.h:
(JSC::parseIndex):
(JSC::Identifier::isSymbol):
- runtime/JSArray.cpp:
(JSC::JSArray::defineOwnProperty):
- runtime/JSCJSValue.cpp:
(JSC::JSValue::putToPrimitive):
- runtime/JSGenericTypedArrayViewInlines.h:
(JSC::JSGenericTypedArrayView<Adaptor>::getOwnPropertySlot):
(JSC::JSGenericTypedArrayView<Adaptor>::put):
(JSC::JSGenericTypedArrayView<Adaptor>::defineOwnProperty):
(JSC::JSGenericTypedArrayView<Adaptor>::deleteProperty):
- runtime/JSObject.cpp:
(JSC::JSObject::put):
(JSC::JSObject::putDirectAccessor):
(JSC::JSObject::putDirectCustomAccessor):
(JSC::JSObject::deleteProperty):
(JSC::JSObject::putDirectMayBeIndex):
(JSC::JSObject::defineOwnProperty):
- runtime/JSObject.h:
(JSC::JSObject::getOwnPropertySlot):
(JSC::JSObject::getPropertySlot):
(JSC::JSObject::putDirectInternal):
- runtime/JSString.cpp:
(JSC::JSString::getStringPropertyDescriptor):
- runtime/JSString.h:
(JSC::JSString::getStringPropertySlot):
- runtime/LiteralParser.cpp:
(JSC::LiteralParser<CharType>::parse):
- runtime/PropertyName.h:
(JSC::parseIndex):
(JSC::toUInt32FromCharacters): Deleted.
(JSC::toUInt32FromStringImpl): Deleted.
(JSC::PropertyName::asIndex): Deleted.
- runtime/PropertyNameArray.cpp:
(JSC::PropertyNameArray::add):
- runtime/StringObject.cpp:
(JSC::StringObject::deleteProperty):
- runtime/Structure.cpp:
(JSC::Structure::prototypeChainMayInterceptStoreTo):
Source/WebCore:
- bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::getOwnPropertySlotByIndex):
- bindings/js/JSHTMLAllCollectionCustom.cpp:
(WebCore::callHTMLAllCollection):
(WebCore::JSHTMLAllCollection::item):
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateGetOwnPropertySlotBody):
(GenerateImplementation):
- bindings/scripts/test/JS/JSFloat64Array.cpp:
(WebCore::JSFloat64Array::getOwnPropertySlot):
(WebCore::JSFloat64Array::getOwnPropertyDescriptor):
(WebCore::JSFloat64Array::put):
- bindings/scripts/test/JS/JSTestEventTarget.cpp:
(WebCore::JSTestEventTarget::getOwnPropertySlot):
- bridge/runtime_array.cpp:
(JSC::RuntimeArray::getOwnPropertySlot):
(JSC::RuntimeArray::put):
- 5:38 AM Changeset in webkit [182405] by
-
- 4 edits2 adds in releases/WebKitGTK/webkit-2.6
Merge r180328 - REGRESSION(r174761) Dangling spanner pointer in RenderMultiColumnSpannerPlaceholder.
https://bugs.webkit.org/show_bug.cgi?id=138224
Reviewed by Dave Hyatt.
It's wrong to call flowThreadRelativeWillBeRemoved(child).
RenderMultiColumnFlowThread::removeFlowChildInfo() does not mean that the child is actually about to be removed.
Should this introduce any regressions, we need to deal with those separately.
Source/WebCore:
Test: fast/multicol/crash-when-spanner-gets-moved-around.html
- rendering/RenderMultiColumnFlowThread.cpp:
(WebCore::RenderMultiColumnFlowThread::removeFlowChildInfo): Deleted.
- rendering/RenderMultiColumnFlowThread.h:
LayoutTests:
- fast/multicol/crash-when-spanner-gets-moved-around-expected.txt: Added.
- fast/multicol/crash-when-spanner-gets-moved-around.html: Added.
- 5:33 AM WebKitGTK/2.6.x edited by
- (diff)
- 5:33 AM Changeset in webkit [182404] by
-
- 3 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore
Merge r180928 - [SOUP] Use SoupMessage::starting instead of SoupSession::request-started
https://bugs.webkit.org/show_bug.cgi?id=142164
Reviewed by Sergio Villar Senin.
SoupSession::request-started is deprecated in libsoup 2.50. Both
signals are equivalent, but SoupMessage::starting is also emitted
for resources loaded from the disk cache. This fixes web timing
calculations for cached resources, since we were not initializing
m_requestStart.
- platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::startingCallback):
(WebCore::createSoupMessageForHandleAndRequest):
- platform/network/soup/SoupNetworkSession.cpp:
(WebCore::SoupNetworkSession::SoupNetworkSession):
- 5:30 AM Changeset in webkit [182403] by
-
- 2 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore
Merge r180997 - [GStreamer] the GST_SCHEDULING_FLAG_BANDWIDTH_LIMITED should be wrapped by a ifdef
https://bugs.webkit.org/show_bug.cgi?id=142274
Patch by Philippe Normand <pnormand@igalia.com> on 2015-03-04
Reviewed by Carlos Garcia Campos.
Don't handle scheduling queries if building against versions of
GStreamer older than 1.2.0.
- platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(webKitWebSrcQueryWithParent):
- 5:29 AM Changeset in webkit [182402] by
-
- 2 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore
Merge r180141 - [GTK] Loading page into WebView shows g_closure_unref warning
https://bugs.webkit.org/show_bug.cgi?id=127474
Patch by Milan Crha <mcrha@redhat.com> on 2015-02-16
Reviewed by Carlos Garcia Campos.
- bindings/gobject/GObjectEventListener.cpp:
(WebCore::GObjectEventListener::gobjectDestroyed):
- 5:27 AM WebKitGTK/2.6.x edited by
- (diff)
- 5:20 AM Changeset in webkit [182401] by
-
- 2 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore
Merge r181074 - [SOUP] Check TLS errors as soon as they are set in the SoupMessage
https://bugs.webkit.org/show_bug.cgi?id=142244
Reviewed by Sergio Villar Senin.
Source/WebCore:
Connect to the notify::tls-errors signal of SoupMessage to cancel
the load earlier in case of TLS failure, preventing any private
data from being sent to the server before the TLS errors are checked.
- platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::tlsErrorsChangedCallback):
(WebCore::gotHeadersCallback):
(WebCore::createSoupMessageForHandleAndRequest):
- 5:15 AM Changeset in webkit [182400] by
-
- 2 edits in releases/WebKitGTK/webkit-2.6/Tools
Merge r181159 - [GTK] Test /webkit2/WebKitWebView/sync-request-on-max-conns might fail after finished
https://bugs.webkit.org/show_bug.cgi?id=142385
Reviewed by Sergio Villar Senin.
Use stack allocated GMainLoopSources to make sure they are
cancelled automatically if the test finishes before they have
been processed.
- TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp:
(testWebViewSyncRequestOnMaxConns):
- 5:14 AM Changeset in webkit [182399] by
-
- 5 edits in releases/WebKitGTK/webkit-2.6
Merge r180927 - [SOUP] Synchronous XMLHttpRequests can time out when we reach the max connections limit
https://bugs.webkit.org/show_bug.cgi?id=141508
Reviewed by Sergio Villar Senin.
Source/WebCore:
Use SOUP_MESSAGE_IGNORE_CONNECTION_LIMITS flag when loading a
synchronous message instead of increasing the maximum number of
connections allowed if the soup version is recent enough.
The current solution of increasing/decreasing the limits doesn't
always work, because connections are not marked as IDLE in libsoup
until the message is unqueued, but we don't wait for the message
to be unqueued to finish our loads in WebKit, we finish them as
soon as we have finished reading the stream. This causes that
synchronous loads keep blocked in the nested main loop until the
timeout of 10 seconds is fired and the load fails.
Also marked WebCoreSynchronousLoader class as final, the virtual
methods as override and removed the unsused method isSynchronousClient.
- platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::createSoupMessageForHandleAndRequest):
(WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
(WebCore::WebCoreSynchronousLoader::isSynchronousClient): Deleted.
(WebCore::WebCoreSynchronousLoader::didReceiveResponse):
(WebCore::WebCoreSynchronousLoader::didReceiveData):
(WebCore::WebCoreSynchronousLoader::didReceiveBuffer):
(WebCore::WebCoreSynchronousLoader::didFinishLoading):
(WebCore::WebCoreSynchronousLoader::didFail):
(WebCore::WebCoreSynchronousLoader::didReceiveAuthenticationChallenge):
(WebCore::WebCoreSynchronousLoader::shouldUseCredentialStorage):
Tools:
Add a unit test to check that synchronous XHRs load even if the
maximum connection limits are reached.
- TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp:
(testWebViewSyncRequestOnMaxConns):
(serverCallback):
(beforeAll):
- gtk/jhbuild.modules: Bump libsoup version to 2.49.91.
- 5:11 AM Changeset in webkit [182398] by
-
- 5 edits in releases/WebKitGTK/webkit-2.6
Merge r180565 - Crash loading local file with WebPageProxy::loadAlternateHTMLString
https://bugs.webkit.org/show_bug.cgi?id=141867
Patch by Michael Catanzaro <Michael Catanzaro> on 2015-02-24
Reviewed by Anders Carlsson.
Source/WebKit2:
WebPageProxy::loadAlternateHTMLString needs to assume read access to unreachableURL as well
as baseURL, because unreachableURL will get added to the back/forward list, causing us to
crash later on when we notice the unexpected URL received in checkURLReceivedFromWebProcess.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadAlternateHTMLString):
Tools:
- TestWebKitAPI/Tests/WebKit2/LoadAlternateHTMLStringWithNonDirectoryURL.cpp:
(TestWebKitAPI::loadAlternateHTMLString): Split most of this test into a function so it can
be shared with the new test.
(TestWebKitAPI::TEST): Add a cross-platform test for this crash.
- TestWebKitAPI/Tests/WebKit2Gtk/TestLoaderClient.cpp: Add a GTK+ test for this crash.
(testLoadAlternateHTMLForLocalPage):
(beforeAll):
- 5:08 AM Changeset in webkit [182397] by
-
- 2 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore
Merge r181643 - [GTK] Wrong transfer annotations used in GObject DOM bindings
https://bugs.webkit.org/show_bug.cgi?id=142780
Reviewed by Gustavo Noronha Silva.
We are using transfer none for all methods returning a GObject DOM
Object. That's not true. Only objects derived from Node are
automatically released by the DOM object cache and can be transfer
none. All other objects are added to the cache only to avoid
creating the same wrapper twice for the same core object, but
caller should release the returned reference.
- bindings/scripts/CodeGeneratorGObject.pm:
(GetTransferTypeForReturnType):
(GenerateFunction):
- 5:03 AM Changeset in webkit [182396] by
-
- 5 edits in releases/WebKitGTK/webkit-2.6
Merge r181631 - [GTK] WebKitDOM objects leaking
https://bugs.webkit.org/show_bug.cgi?id=118788
Reviewed by Darin Adler and Sergio Villar Senin.
Source/WebCore:
Use a DOMwindowObserver class, derived from DOMWindowProperty to
be notified when the window object is detached from the frame to
clear the DOM objects associated to that frame in that case too.
- bindings/gobject/DOMObjectCache.cpp:
Tools:
Update DOMObjectCache unit test to check that DOM objects are also
released when new contents are loaded in the web view, and the old
document is detached from the frame.
- TestWebKitAPI/Tests/WebKit2Gtk/TestDOMNode.cpp:
(testWebKitDOMObjectCache):
- TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.cpp:
(runTest):
- 5:00 AM Changeset in webkit [182395] by
-
- 2 edits in releases/WebKitGTK/webkit-2.6/Tools
Merge r180215 - Unreviewed. Fix /webkit2/WebKitDOMNode/dom-cache after r180214.
I forgot to add the return of a bool function.
- TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeTest.cpp:
(WebKitDOMNodeTest::testDOMCache):
- 4:59 AM Changeset in webkit [182394] by
-
- 8 edits in releases/WebKitGTK/webkit-2.6
Merge r180214 - [GTK] GObject DOM bindings object are cached forever
https://bugs.webkit.org/show_bug.cgi?id=141558
Reviewed by Sergio Villar Senin.
Source/WebCore:
Rework the DOMObjectCache to avoid having to manually clear the
objects when the frame is destroyed, using a FrameDestructionObserver
instead. When a new object associated to a Frame is added to the
cache, a FrameDestructionObserver is created for the frame if
needed, and the DOM object is tracked by the observer too. When
the frame is detached from the page all its objects are cleared,
and if the aren't additional references, the object is finalized
and removed from the cache normally.
This patch also simplifies and modernizes the code to make it
easier to read an maintain.
- bindings/gobject/DOMObjectCache.cpp:
(WebKit::DOMObjectCacheData::DOMObjectCacheData): Add constructor
to initialize its members and simplify the callers.
(WebKit::DOMObjectCacheData::clearObject): Remove the references
added by the cache, ensuring the GObject is not finalized until
the method returns.
(WebKit::DOMObjectCacheData::refObject): Adds a reference owned by
the cache.
(WebKit::domObjectCacheFrameObservers): Map a frame to a FrameDestructionObserver.
(WebKit::getOrCreateDOMObjectCacheFrameObserver): Create a new
FrameDestructionObserver for the given Frame or return the
existing one.
(WebKit::domObjects): Map wrapped object to wrapper object.
(WebKit::DOMObjectCache::forget): Remove the wrapped object from
the cache.
(WebKit::DOMObjectCache::get): Return the wrapped object if it is
in the cache, increasing the cache references.
(WebKit::DOMObjectCache::put): Add the wrapper object to the cache
for the given wrapped object. If it's a Node and has a frame add
the node to the FrameDestructionObserver corresponding to the frame.
(WebKit::getFrameFromHandle): Deleted.
(WebKit::weakRefNotify): Deleted.
(WebKit::DOMObjectCache::clearByFrame): Deleted.
(WebKit::DOMObjectCache::~DOMObjectCache): Deleted.
- bindings/gobject/DOMObjectCache.h:
Tools:
Add checks for all DOM objects to ensure they are not leaked. Also
add a dedicated test for the DOM Object Cache.
- TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeFilterTest.cpp:
(WebKitDOMNodeFilterTest::testTreeWalker):
(WebKitDOMNodeFilterTest::testNodeIterator):
- TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeTest.cpp:
(WebKitDOMNodeTest::testHierarchyNavigation):
(WebKitDOMNodeTest::testInsertion):
(WebKitDOMNodeTest::testTagNames):
(WebKitDOMNodeTest::testDOMCache):
(registerTests):
- TestWebKitAPI/Tests/WebKit2Gtk/DOMXPathNSResolverTest.cpp:
(WebKitDOMXPathNSResolverTest::evaluateFooChildTextAndCheckResult):
(WebKitDOMXPathNSResolverTest::testXPathNSResolverNative):
(WebKitDOMXPathNSResolverTest::testXPathNSResolverCustom):
- TestWebKitAPI/Tests/WebKit2Gtk/TestDOMNode.cpp:
(testWebKitDOMObjectCache):
(beforeAll):
- TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
(documentLoadedCallback):
- 4:06 AM Changeset in webkit [182393] by
-
- 8 edits in releases/WebKitGTK/webkit-2.6
Merge r180211 - [GTK] WebKitFrame objects are never released
https://bugs.webkit.org/show_bug.cgi?id=141641
Reviewed by Martin Robinson.
Source/WebKit2:
Use a FrameDestructionObserver derived class to wrap our
WebKitFrame objects and delete them when the frame is destroyed,
instead of using willDestroyFrame callback of WKBundlePageLoaderClient
that has never worked.
- WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp:
(webkitFrameGetWebFrame):
- WebProcess/InjectedBundle/API/gtk/WebKitFramePrivate.h:
- WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
(webkitFrameGetOrCreate):
(webkitFrameDestroy):
(webkitWebPageCreate):
(willDestroyFrame): Deleted.
Tools:
Add a way to check GObjects leaks for WebProcess tests and check
WebKitFrame objects are not leaked.
- TestWebKitAPI/Tests/WebKit2Gtk/FrameTest.cpp:
(WebKitFrameTest::testMainFrame):
(WebKitFrameTest::testURI):
(WebKitFrameTest::testJavaScriptContext):
- TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.cpp:
(WebProcessTest::assertObjectIsDeletedWhenTestFinishes):
(runTest):
- TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.h:
- 4:03 AM Changeset in webkit [182392] by
-
- 14 edits2 deletes in releases/WebKitGTK/webkit-2.6/Tools
Merge r176563 - [GTK] Use custom JavaScript instead of DBus to implement WebProcess tests
https://bugs.webkit.org/show_bug.cgi?id=138834
Reviewed by Sergio Villar Senin.
It makes everyting simpler and the tests run faster too, since we
don't need to spawn the private bus and wait until the DBus name
is registered. The web extension registers a new JavaSCript class
with a status method to run the tests, similar to the DBus
method. In the UI process side, tests use webkit_web_view_run_java_script()
instead of sending a DBus message.
- TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
- TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeFilterTest.cpp:
(WebKitDOMNodeFilterTest::create):
(WebKitDOMNodeFilterTest::testTreeWalker):
(WebKitDOMNodeFilterTest::testNodeIterator):
(WebKitDOMNodeFilterTest::webPageFromArgs): Deleted.
(WebKitDOMNodeFilterTest::runTest): Deleted.
- TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeTest.cpp:
(WebKitDOMNodeTest::create):
(WebKitDOMNodeTest::testHierarchyNavigation):
(WebKitDOMNodeTest::testInsertion):
(WebKitDOMNodeTest::testTagNames):
(WebKitDOMNodeTest::webPageFromArgs): Deleted.
(WebKitDOMNodeTest::runTest): Deleted.
- TestWebKitAPI/Tests/WebKit2Gtk/DOMXPathNSResolverTest.cpp:
(WebKitDOMXPathNSResolverTest::create):
(WebKitDOMXPathNSResolverTest::testXPathNSResolverNative):
(WebKitDOMXPathNSResolverTest::testXPathNSResolverCustom):
(WebKitDOMXPathNSResolverTest::webPageFromArgs): Deleted.
(WebKitDOMXPathNSResolverTest::runTest): Deleted.
- TestWebKitAPI/Tests/WebKit2Gtk/FrameTest.cpp:
(WebKitFrameTest::create):
(WebKitFrameTest::testMainFrame):
(WebKitFrameTest::testURI):
(WebKitFrameTest::testJavaScriptContext):
(WebKitFrameTest::webPageFromArgs): Deleted.
(WebKitFrameTest::runTest): Deleted.
- TestWebKitAPI/Tests/WebKit2Gtk/TestDOMNode.cpp:
(testWebKitDOMNodeHierarchyNavigation):
(testWebKitDOMNodeInsertion):
(testWebKitDOMNodeTagNames):
(beforeAll):
(afterAll):
- TestWebKitAPI/Tests/WebKit2Gtk/TestDOMNodeFilter.cpp:
(runTest):
(beforeAll):
(afterAll):
- TestWebKitAPI/Tests/WebKit2Gtk/TestDOMXPathNSResolver.cpp:
(testWebKitDOMXPathNSResolverNative):
(testWebKitDOMXPathNSResolverCustom):
(beforeAll):
(afterAll):
(runTest): Deleted.
- TestWebKitAPI/Tests/WebKit2Gtk/TestFrame.cpp:
(webkitFrameTestRun):
(beforeAll):
(afterAll):
- TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.cpp:
(testsMap):
(WebProcessTest::add):
(WebProcessTest::create):
(runTest):
(windowObjectClearedCallback):
(webkit_web_extension_initialize):
(methodCallCallback): Deleted.
(webkit_web_extension_initialize_with_user_data): Deleted.
- TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.h:
- TestWebKitAPI/gtk/WebKit2Gtk/WebProcessTestRunner.cpp: Removed.
- TestWebKitAPI/gtk/WebKit2Gtk/WebProcessTestRunner.h: Removed.
- TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp:
(WebViewTest::runWebProcessTest):
- TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.h:
- 3:06 AM Changeset in webkit [182391] by
-
- 3 edits in releases/WebKitGTK/webkit-2.6/Tools
Merge r179248 - [GTK] Unit test /webkit2/WebKitWebView/page-visibility from WebKit2Gtk/TestWebKitWebView fails
https://bugs.webkit.org/show_bug.cgi?id=131731
Reviewed by Žan Doberšek.
A web page loaded offscreen is in prerender state not hidden.
- Scripts/run-gtk-tests:
(TestRunner): Unskip /webkit2/WebKitWebView/page-visibility.
- TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
(testWebViewPageVisibility):
- 3:02 AM Changeset in webkit [182390] by
-
- 5 edits in releases/WebKitGTK/webkit-2.6/Tools
Merge r178644 - [GTK] [WK2] TestWebKitWebView snapshot fails
https://bugs.webkit.org/show_bug.cgi?id=120404
Reviewed by Žan Doberšek.
Rework the test to make sure the snapshot is always created at the
desired size.
- Scripts/run-gtk-tests:
(TestRunner): Unskip /webkit2/WebKitWebView/snapshot.
- TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
(testWebViewSnapshot): Use a fixed size for the document, and
disable scrollbars to make sure the visible area is always the
WebView size.
- TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp:
(WebViewTest::showInWindowAndWaitUntilMapped): Add optional width
and height parameters to create the window with a given size.
- TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.h:
- 2:56 AM Changeset in webkit [182389] by
-
- 5 edits in releases/WebKitGTK/webkit-2.6/Source
Merge r179397 - [GTK] Resize the redirected XComposite again after leaving accelerated compositing mode
https://bugs.webkit.org/show_bug.cgi?id=140935
Reviewed by Sergio Villar Senin.
Since r178414 we don't resize the redirected XComposite window
until we enter accelerated compositing mode, but after leaving it
the redirected window keeps its size. We should resize it to 1x1
again and free the XPixmap and cairo surface to save that memory
while not in accelerated compositing mode.
- UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::enterAcceleratedCompositingMode): Notify
the WebKitWebViewBase.
(WebKit::PageClientImpl::exitAcceleratedCompositingMode): Ditto.
- UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseEnterAcceleratedCompositingMode): Resize the
XComposite window to the current drawing area size.
(webkitWebViewBaseExitAcceleratedCompositingMode): Resize the
XComposite window to and empty size.
- UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
- UIProcess/gtk/RedirectedXCompositeWindow.cpp:
(WebKit::RedirectedXCompositeWindow::RedirectedXCompositeWindow):
Do not initialize m_size since we now handle the empty size as a
especial case. Make sure we always create the X window with at
least 1x1 size.
(WebKit::RedirectedXCompositeWindow::resize): Resize the window to
at least 1x1, but when en empty size is given, call
cleanupPixmapAndPixmapSurface() to release those resources.
(WebKit::RedirectedXCompositeWindow::surface): Create the cairo
surface with at least 1x1 size.
- 2:55 AM Changeset in webkit [182388] by
-
- 3 edits in trunk/Source/WebKit2
[WK2] API::Array::copy() should move the resulting Vector<> of copies into the Array::create() call
https://bugs.webkit.org/show_bug.cgi?id=143413
Reviewed by Darin Adler.
Move the Vector<> object containing the copied elements into the Array::create()
call, avoiding copying all the elements again.
While here, change the Vector<> parameters for Array::create() and the Array
constructor to rvalue references. This will ensure that the passed-in object
is moved into the Array::create() call if possible, or explicitly copied
otherwise. The constructor is moved into the header for inlining opportunities
and the unnecessary parameter in the create(Vector<>&&) method declaration
removed.
- Shared/API/APIArray.cpp:
(API::Array::create):
(API::Array::copy):
(API::Array::Array): Deleted.
- Shared/API/APIArray.h:
- 2:39 AM Changeset in webkit [182387] by
-
- 5 edits in releases/WebKitGTK/webkit-2.6/Source/WebKit2
Merge r179744 - ASSERTION FAILED: !m_adoptionIsRequired in WTF::RefCountedBase::ref
https://bugs.webkit.org/show_bug.cgi?id=141035
Reviewed by Sergio Villar Senin.
Rename PrinterListGtk::singleton() as PrinterListGtk::getOrCreate(), and
make it return nullptr when the shared PrinterListGtk object is
still being created. This can happen if the nested loop used by
gtk_enumerate_printers dispatches a GSource that starts a new
synchronous print operation. In that case we just ignore the
second print operation, since there's already one ongoing.
- WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::print): Return early if
PrinterListGtk::getOrCreate() return nullptr.
- WebProcess/WebPage/gtk/PrinterListGtk.cpp:
(WebKit::PrinterListGtk::getOrCreate): Return nullptr if the
PrinterListGtk is still enumerating the printers.
(WebKit::PrinterListGtk::PrinterListGtk): Initialize
m_enumeratingPrinters to true before calling
gtk_enumerate_printers, and to false once it finishes.
(WebKit::PrinterListGtk::singleton): Deleted.
(WebKit::PrinterListGtk::enumeratePrintersFunction): Deleted.
- WebProcess/WebPage/gtk/PrinterListGtk.h:
- WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp: Add an
assertion here since PrinterListGtk::getOrCreate() should never
return nullptr at this point.
- 2:06 AM Changeset in webkit [182386] by
-
- 7 edits1 add1 delete in trunk
W3C test importer should generate the modules installed dynamically to run wpt tests
https://bugs.webkit.org/show_bug.cgi?id=142738
Reviewed by Ryosuke Niwa.
LayoutTests/imported/w3c:
Renamed WPTModules to web-platform-test-modules.json
Updated TestRepositories to ask the importer to generate web-platform-test-modules.json at import time.
- resources/TestRepositories:
- resources/WPTModules: Removed.
- resources/web-platform-tests-modules.json: Added.
Tools:
The test importer can now generate the submodules description file based on information extracted from the corresponding git repository.
The implementation is done within TestDownloader and it is activated for the WPT repository.
LayoutTests/imported/w3c/resources/WPTModules is renamed as LayoutTests/imported/w3c/resources/web-platform-tests-modules.json for that reason.
- Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
(WebPlatformTestServer._install_modules): Updated to cope with path as array.
- Scripts/webkitpy/w3c/test_downloader.py:
(TestDownloader._git_submodules_status): Added so that it can be overriden for unit tests.
(TestDownloader):
(TestDownloader._git_submodules_description): Computes submodule description.
(TestDownloader.generate_git_submodules_description): Write submodule description in a file.
- Scripts/webkitpy/w3c/test_importer.py:
(TestImporter.do_import): Added the possibility to post process the tests.
(TestImporter):
(TestImporter.generate_git_submodules_description_for_all_repositories): Enable generating module description file.
(TestImporter.should_convert_test_harness_links): Updated according new options format.
- Scripts/webkitpy/w3c/test_importer_unittest.py:
(TestImporterTest.import_downloaded_tests): Making use of TestDownloaderMock.
(TestImporterTest.import_downloaded_tests.TestDownloaderMock): Added to override submodule status gathering.
(TestImporterTest.import_downloaded_tests.TestDownloaderMock.init):
(TestImporterTest.import_downloaded_tests.TestDownloaderMock._git_submodules_status):
(TestImporterTest.test_submodules_generation): Added to check that modules description files works.
- 2:01 AM Changeset in webkit [182385] by
-
- 2 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore
Merge r181744 - [GTK] Scrollbars look bad with GTK+ 3.16
https://bugs.webkit.org/show_bug.cgi?id=140800
Reviewed by Sergio Villar Senin.
Take margin into account when rendering scrollbars. This fixes the
huge scrollbars rendered with GTK+ 3.16. We don't need to check
the GTK+ version because in previous versions the marging were 0,
so the same code just works.
- platform/gtk/ScrollbarThemeGtk.cpp:
(WebCore::adjustRectAccordingToMargin):
(WebCore::ScrollbarThemeGtk::paintTrackBackground):
(WebCore::ScrollbarThemeGtk::paintThumb):
- 1:43 AM Changeset in webkit [182384] by
-
- 6 edits2 deletes in releases/WebKitGTK/webkit-2.6/Source
Merge r182175 - [GTK] DnD icon/widget has odd background
https://bugs.webkit.org/show_bug.cgi?id=143217
Reviewed by Martin Robinson.
Source/WebCore:
Remove DragIcon class since it's no longer needed with GTK+3 and
the GTK+2 code there is unused. GTK+ knows what to do with a cairo
surface, I guess we migrated the GTK+2 code to GTK+3 without
realizing that using the surface was enough.
- PlatformGTK.cmake:
- platform/gtk/DragIcon.cpp: Removed.
- platform/gtk/DragIcon.h: Removed.
Source/WebKit2:
Use gtk_drag_set_icon_surface() to set the drag icon image,
instead of DragIcon class.
- UIProcess/API/gtk/WebKitWebView.cpp:
- UIProcess/gtk/DragAndDropHandler.cpp:
(WebKit::DragAndDropHandler::startDrag):
- UIProcess/gtk/DragAndDropHandler.h:
- 1:37 AM Changeset in webkit [182383] by
-
- 2 edits in releases/WebKitGTK/webkit-2.6/Source/WebKit2
Unreviewed. Fix typo in API doc comment.
- UIProcess/API/gtk/WebKitUserContent.cpp:
- 1:34 AM Changeset in webkit [182382] by
-
- 6 edits in releases/WebKitGTK/webkit-2.6/Source
Merge r179866 - [GTK] GMutexLocker build issue
https://bugs.webkit.org/show_bug.cgi?id=141381
Reviewed by Žan Doberšek.
Source/WebCore:
Use always WTF::GMutexLocker because newer glib versions have a
GMutexLocker in the public API.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::naturalSize):
(WebCore::MediaPlayerPrivateGStreamerBase::updateTexture):
(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):
(WebCore::MediaPlayerPrivateGStreamerBase::paint):
- platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
(webkitVideoSinkTimeoutCallback):
(webkitVideoSinkRender):
(unlockSampleMutex):
(webkitVideoSinkUnlockStop):
(webkitVideoSinkStart):
- platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(webKitWebSrcGetProperty):
(webKitWebSrcStop):
(webKitWebSrcStart):
(webKitWebSrcChangeState):
(webKitWebSrcQueryWithParent):
(webKitWebSrcGetUri):
(webKitWebSrcSetUri):
(webKitWebSrcNeedDataMainCb):
(webKitWebSrcNeedDataCb):
(webKitWebSrcEnoughDataMainCb):
(webKitWebSrcEnoughDataCb):
(webKitWebSrcSeekDataCb):
(webKitWebSrcSetMediaPlayer):
(StreamingClient::createReadBuffer):
(StreamingClient::handleResponseReceived):
(StreamingClient::handleDataReceived):
(StreamingClient::handleNotifyFinished):
(ResourceHandleStreamingClient::wasBlocked):
(ResourceHandleStreamingClient::cannotShowURL):
Source/WTF:
Remove using WTF::GMutexLocker from the header, since newer glib
versions have a GMutexLocker in the public API.
- wtf/gobject/GMutexLocker.h:
- 12:51 AM Changeset in webkit [182381] by
-
- 10 edits2 moves in releases/WebKitGTK/webkit-2.6
Merge r179111 - [GTK] gtkdoc does not appear in DevHelp
https://bugs.webkit.org/show_bug.cgi?id=139369
.:
Patch by Michael Catanzaro <Michael Catanzaro> on 2015-01-26
Reviewed by Philippe Normand.
Expect the gtkdoc to be generated in folders named with the API version.
- Source/PlatformGTK.cmake:
Source/WebCore:
Patch by Michael Catanzaro <Michael Catanzaro> on 2015-01-26
Reviewed by Philippe Normand.
- PlatformGTK.cmake: Include the API version in the gtkdoc filenames.
Source/WebKit2:
Patch by Michael Catanzaro <Michael Catanzaro> on 2015-01-26
Reviewed by Philippe Normand.
- PlatformGTK.cmake: Include the API version in the gtkdoc filenames.
- UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: Renamed from Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-sections.txt.
- UIProcess/API/gtk/docs/webkit2gtk-4.0.types: Renamed from Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk.types.
Tools:
Patch by Michael Catanzaro <Michael Catanzaro> and Carlos Garcia Campos <cgarcia@igalia.com> on 2015-01-26
Reviewed by Philippe Normand.
- gtk/generate-gtkdoc: Create the generators in the main function
and use them to get the local cross renference dependencies. Also
pass the generator module name to webkitdom.write_doc_files().
(get_gtkdoc_module_paths): Receive a list of local cross reference
dependencies.
(get_generator_for_config): Set the main_sgml_file property of the
GtkDoc object from the configuration file.
(generate_documentation): Generate the documentation for the given
generator.
(generate_documentation_for_config): Deleted.
- gtk/manifest.txt.in: Expect the API version in the gtkdoc filenames.
- gtk/webkitdom.py:
(write_doc_files): Receive the module name used to build the
-sections.txt filename.
- 12:46 AM Changeset in webkit [182380] by
-
- 4 edits1 move in releases/WebKitGTK/webkit-2.6
Merge r178672 - [GTK] Generate the make dist manifest from a CMake template file
https://bugs.webkit.org/show_bug.cgi?id=139387
Patch by Michael Catanzaro <Michael Catanzaro> on 2015-01-19
Reviewed by Martin Robinson.
.:
Generate manifest.txt from manifest.txt.in. Only expose the dist and
distcheck targets for developer builds, as they won't work when
building from a tarball because the manifest is not distributed.
- Source/PlatformGTK.cmake:
Tools:
Remove the code that performs variable substitution on manifest.txt.
Replace the custom variables used in that file with CMake variables.
- gtk/make-dist.py:
(Manifest.add_directory):
(Manifest.get_full_source_path):
(Manifest.process_line):
(Manifest.resolve_variables): Deleted.
(Manifest.get_full_tarball_path): Deleted.
- gtk/manifest.txt.in: Renamed from Tools/gtk/manifest.txt.
- 12:39 AM WebKitGTK/2.6.x edited by
- (diff)
- 12:22 AM Changeset in webkit [182379] by
-
- 2 edits in trunk/Source/WebCore
FileList constructor should move the passed-in Vector<> rvalue reference into the member variable
https://bugs.webkit.org/show_bug.cgi?id=143412
Reviewed by Darin Adler.
- fileapi/FileList.h:
(WebCore::FileList::FileList): An explicit move of the passed-in rvalue
reference into the member variable is required, otherwise a copy is
performed since an rvalue reference is just an lvalue.
- 12:21 AM Changeset in webkit [182378] by
-
- 5 edits in trunk/Source
Source/WebCore:
UserScript, UserStyleSheet constructors should take in Vector<String> rvalue references
https://bugs.webkit.org/show_bug.cgi?id=143411
Reviewed by Darin Adler.
Have the UserScript and UserStyleSheet constructors take in Vector<String>
rvalue references for the whitelist and blacklist parameters. Both classes
store these Vector<String> objects, so the referenced objects can simply be
moved into the member variable.
Because the constructor is now demanding an rvalue, it's up to the caller
to move in the desired object if possible, or create an explicit copy
otherwise.
- page/UserScript.h:
(WebCore::UserScript::UserScript):
- page/UserStyleSheet.h:
(WebCore::UserStyleSheet::UserStyleSheet):
Source/WebKit2:
UserScript, UserStyleSheet constructors should take in Vector<String> rvalues
https://bugs.webkit.org/show_bug.cgi?id=143411
Reviewed by Darin Adler.
Move the whitelist and blacklist Vector<String> objects into the
UserScript and UserStyleSheet constructors in ArgumentCoder<T>::decode
functions.
- Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<UserStyleSheet>::decode):
(IPC::ArgumentCoder<UserScript>::decode):