[webkit-changes] [216902] trunk/Source

2017-05-15 Thread antti
Title: [216902] trunk/Source








Revision 216902
Author an...@apple.com
Date 2017-05-15 22:35:04 -0700 (Mon, 15 May 2017)


Log Message
RenderTheme does not need to be per-page
https://bugs.webkit.org/show_bug.cgi?id=172116


Reviewed by Zalan Bujtas.

There are no implementations of RenderTheme::themeForPage that actually care about the page.
It can be replaced with a singleton, simplifying a bunch of code.

* Modules/mediacontrols/MediaControlsHost.cpp:
(WebCore::MediaControlsHost::shadowRootCSSText):
(WebCore::MediaControlsHost::base64StringForIconNameAndType):
* css/CSSDefaultStyleSheets.cpp:
(WebCore::CSSDefaultStyleSheets::loadFullDefaultStyle):
(WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):

Fix a potential crash if we get here when page is null (though it doesn't appear to repro on trunk).

* css/StyleColor.cpp:
(WebCore::StyleColor::colorFromKeyword):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::adjustRenderStyle):
* css/parser/CSSParser.cpp:
(WebCore::CSSParser::parseSystemColor):
* css/parser/CSSParser.h:
* css/parser/CSSPropertyParser.cpp:
(WebCore::CSSPropertyParser::consumeSystemFont):
* editing/FrameSelection.cpp:
(WebCore::FrameSelection::updateAppearance):
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::ensureMediaControlsInjectedScript):
* html/HTMLMeterElement.cpp:
(WebCore::HTMLMeterElement::createElementRenderer):
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::usesMenuList):
(WebCore::HTMLSelectElement::platformHandleKeydownEvent):
(WebCore::HTMLSelectElement::menuListDefaultEventHandler):
* html/HTMLTextFormControlElement.cpp:
(WebCore::HTMLTextFormControlElement::adjustInnerTextStyle):
* html/InputType.cpp:
(WebCore::InputType::themeSupportsDataListUI):
* html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::shouldHaveSpinButton):
(WebCore::TextFieldInputType::shouldHaveCapsLockIndicator):
* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::setStrokeColor):
(WebCore::CanvasRenderingContext2D::setFillColor):
* html/canvas/CanvasStyle.cpp:
(WebCore::parseColor):
(WebCore::parseColorOrCurrentColor):
(WebCore::CanvasStyle::createFromString):
* html/canvas/CanvasStyle.h:
* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlPanelElement::startTimer):
(WebCore::MediaControlPanelElement::makeOpaque):
(WebCore::MediaControlPanelElement::makeTransparent):
* html/shadow/MediaControls.cpp:
(WebCore::MediaControls::reset):
(WebCore::MediaControls::reportedError):
(WebCore::MediaControls::updateCurrentTimeDisplay):
* html/shadow/mac/ImageControlsButtonElementMac.cpp:
(WebCore::ImageControlsButtonElementMac::tryCreate):
* page/MemoryRelease.cpp:
(WebCore::releaseNoncriticalMemory):
* page/Page.cpp:
(WebCore::Page::Page):
* page/Page.h:
(WebCore::Page::theme): Deleted.
* platform/wpe/RenderThemeWPE.cpp:
(WebCore::RenderTheme::singleton):
(WebCore::RenderTheme::themeForPage): Deleted.
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::theme):
* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::focusRingColor):
* rendering/RenderTheme.h:
(WebCore::RenderTheme::defaultTheme): Deleted.
* rendering/RenderThemeGtk.cpp:
(WebCore::RenderTheme::singleton):
(WebCore::RenderTheme::themeForPage): Deleted.
* rendering/RenderThemeIOS.mm:
(WebCore::RenderTheme::singleton):
(WebCore::RenderTheme::themeForPage): Deleted.
* rendering/RenderThemeMac.mm:
(WebCore::RenderTheme::singleton):
(WebCore::RenderTheme::themeForPage): Deleted.
* rendering/RenderThemeWin.cpp:
(WebCore::RenderTheme::singleton):
(WebCore::RenderTheme::themeForPage): Deleted.
* rendering/TextPaintStyle.cpp:
(WebCore::computeTextPaintStyle):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/mediacontrols/MediaControlsHost.cpp
trunk/Source/WebCore/css/CSSDefaultStyleSheets.cpp
trunk/Source/WebCore/css/StyleColor.cpp
trunk/Source/WebCore/css/StyleResolver.cpp
trunk/Source/WebCore/css/parser/CSSParser.cpp
trunk/Source/WebCore/css/parser/CSSParser.h
trunk/Source/WebCore/css/parser/CSSPropertyParser.cpp
trunk/Source/WebCore/editing/FrameSelection.cpp
trunk/Source/WebCore/html/HTMLMediaElement.cpp
trunk/Source/WebCore/html/HTMLMeterElement.cpp
trunk/Source/WebCore/html/HTMLSelectElement.cpp
trunk/Source/WebCore/html/HTMLTextFormControlElement.cpp
trunk/Source/WebCore/html/InputType.cpp
trunk/Source/WebCore/html/TextFieldInputType.cpp
trunk/Source/WebCore/html/canvas/CanvasRenderingContext2D.cpp
trunk/Source/WebCore/html/canvas/CanvasStyle.cpp
trunk/Source/WebCore/html/canvas/CanvasStyle.h
trunk/Source/WebCore/html/shadow/MediaControlElements.cpp
trunk/Source/WebCore/html/shadow/MediaControls.cpp
trunk/Source/WebCore/html/shadow/mac/ImageControlsButtonElementMac.cpp
trunk/Source/WebCore/page/MemoryRelease.cpp
trunk/Source/WebCore/page/Page.cpp
trunk/Source/WebCore/page/Page.h

[webkit-changes] [216901] trunk

2017-05-15 Thread commit-queue
Title: [216901] trunk








Revision 216901
Author commit-qu...@webkit.org
Date 2017-05-15 22:14:50 -0700 (Mon, 15 May 2017)


Log Message
Do not delete asynchronously decoded frames for large images if their clients are in the viewport
https://bugs.webkit.org/show_bug.cgi?id=170640

Patch by Said Abou-Hallawa  on 2017-05-15
Reviewed by Simon Fraser.

Source/WebCore:

The image flickering problem happens when a large image is visible in the
view port and for some reason, the decoded frame gets destroyed. When this
image is repainted, BitmapImage::draw() does not find a valid decoded frame
for that image. It then requests an async decoding for the image and just
draws nothing in the image rectangle. Drawing no content between two drawing
phases in which the image is drawn causes the unwanted flickering.

To fix this issue we need to protect the decoded frames of all the images
in the view port from being destroyed. When BitmapImage::destroyDecodedData()
is called, it is going to check, through the ImageObserver, whether any
of its clients is visible. And if so, the current decoded frame won't be
destroyed.

Tests: Modifying existing tests.

* loader/cache/CachedImage.cpp:
(WebCore::CachedImage::CachedImageObserver::decodedSizeChanged):
(WebCore::CachedImage::CachedImageObserver::didDraw):
(WebCore::CachedImage::CachedImageObserver::canDestroyDecodedData):
(WebCore::CachedImage::CachedImageObserver::imageFrameAvailable):
(WebCore::CachedImage::CachedImageObserver::changedInRect):
(WebCore::CachedImage::decodedSizeChanged):
(WebCore::CachedImage::didDraw):
(WebCore::CachedImage::canDestroyDecodedData): Finds out whether it's okay
to discard the image decoded data or not.
(WebCore::CachedImage::imageFrameAvailable):
(WebCore::CachedImage::changedInRect):
* loader/cache/CachedImage.h:
* loader/cache/CachedImageClient.h:
(WebCore::CachedImageClient::canDestroyDecodedData):
* loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::destroyDecodedDataForAllImages): This function is
currently not used. Use in the internal destroyDecodedDataForAllImages()
but unlike what CachedImage::destroyDecodedData() does, make it destroy
the decoded frames without deleting the image itself.
* loader/cache/MemoryCache.h:
* platform/graphics/BitmapImage.cpp:
(WebCore::BitmapImage::destroyDecodedData):
(WebCore::BitmapImage::draw):
(WebCore::BitmapImage::canDestroyCurrentFrameDecodedData):
(WebCore::BitmapImage::advanceAnimation):
(WebCore::BitmapImage::internalAdvanceAnimation):
(WebCore::BitmapImage::imageFrameAvailableAtIndex):
* platform/graphics/BitmapImage.h:
* platform/graphics/GraphicsContext3D.cpp:
(WebCore::GraphicsContext3D::packImageData):
* platform/graphics/ImageFrameCache.cpp:
(WebCore::ImageFrameCache::decodedSizeChanged):
(ImageFrameCache::cacheAsyncFrameNativeImageAtIndex): The assertion in this
function is wrong. frameIsCompleteAtIndex() can be false when the an image
decoding is requested but can be true when the decoding finishes.
* platform/graphics/ImageObserver.h:
* platform/graphics/cairo/ImageCairo.cpp:
(WebCore::Image::drawPattern):
* platform/graphics/cg/ImageCG.cpp:
(WebCore::Image::drawPattern):
* platform/graphics/cg/ImageDecoderCG.cpp:
(WebCore::ImageDecoder::frameIsCompleteAtIndex):
* platform/graphics/cg/PDFDocumentImage.cpp:
(WebCore::PDFDocumentImage::decodedSizeChanged):
(WebCore::PDFDocumentImage::draw):
* platform/graphics/texmap/TextureMapperTiledBackingStore.cpp:
(WebCore::TextureMapperTiledBackingStore::updateContentsFromImageIfNeeded):
* platform/graphics/win/ImageDirect2D.cpp:
(WebCore::Image::drawPattern):
* rendering/RenderElement.cpp:
(WebCore::RenderElement::isVisibleInDocumentRect):
(WebCore::RenderElement::isVisibleInViewport):
(WebCore::RenderElement::imageFrameAvailable):
(WebCore::RenderElement::repaintForPausedImageAnimationsIfNeeded):
(WebCore::RenderElement::shouldRepaintInVisibleRect): Deleted. Function
is renamed to isVisibleInViewport() for better readability.
* rendering/RenderElement.h:
* svg/graphics/SVGImage.cpp:
(WebCore::SVGImage::draw):
* svg/graphics/SVGImageClients.h:
* testing/Internals.cpp:
(WebCore::Internals::destroyDecodedDataForAllImages):
* testing/Internals.h:
* testing/Internals.idl:

Source/WebKit/mac:

Enable the async decoding for large images.

* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):

Source/WebKit2:

Enable the async decoding for large images.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):

LayoutTests:

* fast/images/async-image-background-image-repeated.html:
* fast/images/async-image-background-image.html:
* fast/images/sprite-sheet-image-draw.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/fast/images/async-image-background-image-repeated.html
trunk/LayoutTests/fast/images/async-image-background-image.html
trunk/LayoutTests/fast/images/sprite-sheet-image-draw.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/loader/cache/CachedImage.cpp

[webkit-changes] [216900] trunk/Tools

2017-05-15 Thread commit-queue
Title: [216900] trunk/Tools








Revision 216900
Author commit-qu...@webkit.org
Date 2017-05-15 20:41:24 -0700 (Mon, 15 May 2017)


Log Message
WPT test importer should not account for slow manual tests
https://bugs.webkit.org/show_bug.cgi?id=172127

Patch by Youenn Fablet  on 2017-05-15
Reviewed by Ryosuke Niwa.

Making sure manual tests are not triggering updating tests-options.json file.

* Scripts/webkitpy/w3c/test_importer.py:
(TestImporter.find_importable_tests):
(TestImporter._already_identified_as_resource_file):
(TestImporter.update_tests_options):
* Scripts/webkitpy/w3c/test_importer_unittest.py:
(test_manual_slow_test):

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/Scripts/webkitpy/w3c/test_importer.py
trunk/Tools/Scripts/webkitpy/w3c/test_importer_unittest.py




Diff

Modified: trunk/Tools/ChangeLog (216899 => 216900)

--- trunk/Tools/ChangeLog	2017-05-16 03:19:19 UTC (rev 216899)
+++ trunk/Tools/ChangeLog	2017-05-16 03:41:24 UTC (rev 216900)
@@ -1,3 +1,19 @@
+2017-05-15  Youenn Fablet  
+
+WPT test importer should not account for slow manual tests
+https://bugs.webkit.org/show_bug.cgi?id=172127
+
+Reviewed by Ryosuke Niwa.
+
+Making sure manual tests are not triggering updating tests-options.json file.
+
+* Scripts/webkitpy/w3c/test_importer.py:
+(TestImporter.find_importable_tests):
+(TestImporter._already_identified_as_resource_file):
+(TestImporter.update_tests_options):
+* Scripts/webkitpy/w3c/test_importer_unittest.py:
+(test_manual_slow_test):
+
 2017-05-15  Jonathan Bedard  
 
 webkitpy: Some versions of simctl do not place parenthesis around runtime identifiers


Modified: trunk/Tools/Scripts/webkitpy/w3c/test_importer.py (216899 => 216900)

--- trunk/Tools/Scripts/webkitpy/w3c/test_importer.py	2017-05-16 03:19:19 UTC (rev 216899)
+++ trunk/Tools/Scripts/webkitpy/w3c/test_importer.py	2017-05-16 03:41:24 UTC (rev 216900)
@@ -312,12 +312,12 @@
 elif self._is_in_resources_directory(fullpath):
 _log.warning('%s is a test located in a "resources" folder. This test will be skipped by WebKit test runners.', fullpath)
 
+if 'manualtest' in test_info.keys():
+continue
+
 if 'slow' in test_info:
 self._slow_tests.append(fullpath)
 
-if 'manualtest' in test_info.keys():
-continue
-
 if 'referencefile' in test_info.keys():
 # Skip it since, the corresponding reference test should have a link to this file
 continue
@@ -506,6 +506,8 @@
 self.update_tests_options()
 
 def _already_identified_as_resource_file(self, path):
+if not self._test_resource_files:
+return False
 if path in self._test_resource_files["files"]:
 return True
 return any([path.find(directory) != -1 for directory in self._test_resource_files["directories"]])
@@ -517,6 +519,7 @@
 should_update = self.options.clean_destination_directory
 for full_path in self._slow_tests:
 w3c_test_path = self.filesystem.relpath(full_path, self.source_directory)
+print w3c_test_path
 # No need to mark tests as slow if they are in skipped directories
 if self._already_identified_as_resource_file(w3c_test_path):
 continue


Modified: trunk/Tools/Scripts/webkitpy/w3c/test_importer_unittest.py (216899 => 216900)

--- trunk/Tools/Scripts/webkitpy/w3c/test_importer_unittest.py	2017-05-16 03:19:19 UTC (rev 216899)
+++ trunk/Tools/Scripts/webkitpy/w3c/test_importer_unittest.py	2017-05-16 03:41:24 UTC (rev 216900)
@@ -288,4 +288,18 @@
 self.assertFalse(fs.exists('/mock-checkout/LayoutTests/w3c/web-platform-tests/t/obsolete-expected.txt'))
 self.assertTrue(fs.exists('/mock-checkout/LayoutTests/w3c/web-platform-tests/t/new.html'))
 
-# FIXME: Needs more tests.
+def test_manual_slow_test(self):
+tests_options = '{"a": ["slow"]}'
+FAKE_FILES = {
+'/mock-checkout/WebKitBuild/w3c-tests/csswg-tests/temp': '',
+'/mock-checkout/WebKitBuild/w3c-tests/web-platform-tests/t/new-manual.html': 

[webkit-changes] [216899] trunk/Tools

2017-05-15 Thread jbedard
Title: [216899] trunk/Tools








Revision 216899
Author jbed...@apple.com
Date 2017-05-15 20:19:19 -0700 (Mon, 15 May 2017)


Log Message
webkitpy: Some versions of simctl do not place parenthesis around runtime identifiers
https://bugs.webkit.org/show_bug.cgi?id=172142

Reviewed by Tim Horton.

* Scripts/webkitpy/xcode/simulator.py:
(Simulator._parse_runtimes): Newer versions of simctl output do not put parenthesis
around runtime identifiers.
* Scripts/webkitpy/xcode/simulator_unittest.py: Add tests for new simctl output.

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/Scripts/webkitpy/xcode/simulator.py
trunk/Tools/Scripts/webkitpy/xcode/simulator_unittest.py




Diff

Modified: trunk/Tools/ChangeLog (216898 => 216899)

--- trunk/Tools/ChangeLog	2017-05-16 02:45:28 UTC (rev 216898)
+++ trunk/Tools/ChangeLog	2017-05-16 03:19:19 UTC (rev 216899)
@@ -1,3 +1,15 @@
+2017-05-15  Jonathan Bedard  
+
+webkitpy: Some versions of simctl do not place parenthesis around runtime identifiers
+https://bugs.webkit.org/show_bug.cgi?id=172142
+
+Reviewed by Tim Horton.
+
+* Scripts/webkitpy/xcode/simulator.py:
+(Simulator._parse_runtimes): Newer versions of simctl output do not put parenthesis
+around runtime identifiers.
+* Scripts/webkitpy/xcode/simulator_unittest.py: Add tests for new simctl output.
+
 2017-05-15  Ryosuke Niwa  
 
 Update ARES-6 plan file to use the latest version


Modified: trunk/Tools/Scripts/webkitpy/xcode/simulator.py (216898 => 216899)

--- trunk/Tools/Scripts/webkitpy/xcode/simulator.py	2017-05-16 02:45:28 UTC (rev 216898)
+++ trunk/Tools/Scripts/webkitpy/xcode/simulator.py	2017-05-16 03:19:19 UTC (rev 216899)
@@ -174,8 +174,8 @@
 device_type_re = re.compile('(?P.+)\((?P[^)]+)\)')
 # FIXME: runtime_re parses the version from the runtime name, but that does not contain the full version number
 # (it can omit the revision). We should instead parse the version from the number contained in parentheses.
-runtime_re = re.compile(
-'(i|watch|tv)OS (?P\d+\.\d)(?P Internal)? \(\d+\.\d+(\.\d+)? - (?P[^)]+)\) \((?P[^)]+)\)( \((?P[^)]+)\))?')
+runtime_re = re.compile('(i|watch|tv)OS (?P\d+\.\d)(?P Internal)? \(\d+\.\d+(\.\d+)? - (?P[^)]+)\) \((?P[^)]+)\)( \((?P[^)]+)\))?')
+new_runtime_re = re.compile('(i|watch|tv)OS (?P\d+\.\d)(?P Internal)? \(\d+\.\d+(\.\d+)? - (?P[^)]+)\) - (?P[^)]+)( \((?P[^)]+)\))?')
 unavailable_version_re = re.compile('-- Unavailable: (?P[^ ]+) --')
 version_re = re.compile('-- (i|watch|tv)OS (?P\d+\.\d+)(?P Internal)? --')
 devices_re = re.compile(
@@ -329,7 +329,7 @@
 :return: None
 """
 for line in lines:
-runtime_match = self.runtime_re.match(line)
+runtime_match = self.runtime_re.match(line) or self.new_runtime_re.match(line)
 if not runtime_match:
 if line != '== Devices ==':
 raise RuntimeError('Expected == Devices == header but got: "{}"'.format(line))


Modified: trunk/Tools/Scripts/webkitpy/xcode/simulator_unittest.py (216898 => 216899)

--- trunk/Tools/Scripts/webkitpy/xcode/simulator_unittest.py	2017-05-16 02:45:28 UTC (rev 216898)
+++ trunk/Tools/Scripts/webkitpy/xcode/simulator_unittest.py	2017-05-16 03:19:19 UTC (rev 216899)
@@ -56,6 +56,7 @@
 iOS 8.4 (8.4.1 - 12H321) (com.apple.CoreSimulator.SimRuntime.iOS-8-4)
 tvOS 9.0 (9.0 - 13T5347l) (com.apple.CoreSimulator.SimRuntime.tvOS-9-0)
 watchOS 2.0 (2.0 - 13S343) (com.apple.CoreSimulator.SimRuntime.watchOS-2-0)
+iOS 10.0 (10.0 - 14280) - com.apple.CoreSimulator.SimRuntime.iOS-10-0
 == Devices ==
 -- iOS 8.0 --
 iPhone 4s (68D9A792-E3A9-462B-B211-762C6A5D3779) (Shutdown)
@@ -127,7 +128,7 @@
 self.assertEqual('Apple Watch - 42mm', device_type_apple_watch_42mm.name)
 self.assertEqual('com.apple.CoreSimulator.SimDeviceType.Apple-Watch-42mm', device_type_apple_watch_42mm.identifier)
 
-self.assertEqual(5, len(simulator.runtimes))
+self.assertEqual(6, len(simulator.runtimes))
 
 runtime_ios_8 = simulator.runtimes[0]
 self.assertEqual('com.apple.CoreSimulator.SimRuntime.iOS-8-0', runtime_ios_8.identifier)
@@ -236,6 +237,13 @@
 self.assertEqual(tuple([2, 0]), runtime_watchos_2.version)
 self.assertEqual(2, len(runtime_watchos_2.devices))
 
+runtime_ios_10 = simulator.runtimes[5]
+self.assertEqual('com.apple.CoreSimulator.SimRuntime.iOS-10-0', runtime_ios_10.identifier)
+self.assertEqual(True, runtime_ios_10.available)
+self.assertEqual(False, runtime_ios_10.is_internal_runtime)
+self.assertEqual(tuple([10, 0]), runtime_ios_10.version)
+self.assertEqual(0, len(runtime_ios_10.devices))
+
 device_apple_watch_38mm = runtime_watchos_2.devices[0]
 self.assertEqual('Apple Watch - 38mm', device_apple_watch_38mm.name)
 

[webkit-changes] [216898] trunk/Source

2017-05-15 Thread commit-queue
Title: [216898] trunk/Source








Revision 216898
Author commit-qu...@webkit.org
Date 2017-05-15 19:45:28 -0700 (Mon, 15 May 2017)


Log Message
Simplify RealtimeMediaSource data production and state
https://bugs.webkit.org/show_bug.cgi?id=171999

Patch by Youenn Fablet  on 2017-05-15
Reviewed by Eric Carlson.

Source/WebCore:

RealtimeMediaSource takes 3 booleans:
- m_isProducingData tells whether data is produced or not. In the case of capturing, it tells whether capture
  happens.
- m_muted/m_enabled allows JS or WebKit level to start/stop the source.

Changed MediaStream capture state computation so that capture is reported as follows:
- m_isProducing is true, capture is happenning and is active
- m_muted is true, capture is happening but is inactive.

Except in the case of WebRTC incoming sources, for which sources may be created as muted as per the spec,
all sources are unmuted, enabled and not producing data when created.

RealtimeMediaSource is now activable either by calling start/stop or by calling setMuted/setEnabled.
This in turns will set the boolean values accordingly and will call the underlying
startProducingData/stopProducingData methods doing the actual stuff.

Removing from all RealtimeMediaSource subclasses the handling of producing data.
Making more methods non-virtual/member fields private to simplify the model.

* Modules/mediastream/CanvasCaptureMediaStreamTrack.cpp:
(WebCore::CanvasCaptureMediaStreamTrack::Source::create):
(WebCore::CanvasCaptureMediaStreamTrack::Source::startProducingData):
(WebCore::CanvasCaptureMediaStreamTrack::Source::stopProducingData):
(WebCore::CanvasCaptureMediaStreamTrack::Source::canvasDestroyed):
(WebCore::CanvasCaptureMediaStreamTrack::Source::captureCanvas):
* Modules/mediastream/CanvasCaptureMediaStreamTrack.h:
* Modules/mediastream/MediaStream.cpp:
(WebCore::MediaStream::mediaState):
* platform/mediastream/MediaStreamTrackPrivate.h:
(WebCore::MediaStreamTrackPrivate::startProducingData):
(WebCore::MediaStreamTrackPrivate::stopProducingData):
* platform/mediastream/RealtimeMediaSource.cpp:
(WebCore::RealtimeMediaSource::setMuted):
(WebCore::RealtimeMediaSource::notifyMutedChange):
(WebCore::RealtimeMediaSource::setEnabled):
(WebCore::RealtimeMediaSource::start):
(WebCore::RealtimeMediaSource::stop):
(WebCore::RealtimeMediaSource::requestStop):
(WebCore::RealtimeMediaSource::reset): Deleted.
* platform/mediastream/RealtimeMediaSource.h:
* platform/mediastream/mac/AVMediaCaptureSource.h:
* platform/mediastream/mac/AVMediaCaptureSource.mm:
(WebCore::AVMediaCaptureSource::AVMediaCaptureSource):
(WebCore::AVMediaCaptureSource::captureSessionIsRunningDidChange):
(WebCore::AVMediaCaptureSource::reset): Deleted.
(WebCore::AVMediaCaptureSource::isProducingData): Deleted.
* platform/mediastream/mac/CoreAudioCaptureSource.cpp:
(WebCore::CoreAudioCaptureSource::CoreAudioCaptureSource):
(WebCore::CoreAudioCaptureSource::startProducingData):
(WebCore::CoreAudioCaptureSource::stopProducingData):
(WebCore::CoreAudioCaptureSource::audioSourceProvider):
* platform/mediastream/mac/CoreAudioCaptureSource.h:
* platform/mediastream/mac/MockRealtimeAudioSourceMac.mm:
(WebCore::MockRealtimeAudioSourceMac::render):
(WebCore::MockRealtimeAudioSource::createMuted): Deleted.
* platform/mediastream/mac/MockRealtimeVideoSourceMac.mm:
(WebCore::MockRealtimeVideoSource::createMuted): Deleted.
* platform/mediastream/mac/RealtimeIncomingAudioSource.cpp:
(WebCore::RealtimeIncomingAudioSource::create):
(WebCore::RealtimeIncomingAudioSource::RealtimeIncomingAudioSource):
(WebCore::RealtimeIncomingAudioSource::~RealtimeIncomingAudioSource):
(WebCore::RealtimeIncomingAudioSource::startProducingData):
(WebCore::RealtimeIncomingAudioSource::stopProducingData):
(WebCore::RealtimeIncomingAudioSource::setSourceTrack):
* platform/mediastream/mac/RealtimeIncomingAudioSource.h:
* platform/mediastream/mac/RealtimeIncomingVideoSource.cpp:
(WebCore::RealtimeIncomingVideoSource::create):
(WebCore::RealtimeIncomingVideoSource::RealtimeIncomingVideoSource):
(WebCore::RealtimeIncomingVideoSource::startProducingData):
(WebCore::RealtimeIncomingVideoSource::setSourceTrack):
(WebCore::RealtimeIncomingVideoSource::stopProducingData):
(WebCore::RealtimeIncomingVideoSource::OnFrame):
* platform/mediastream/mac/RealtimeIncomingVideoSource.h:
* platform/mediastream/mac/WebAudioSourceProviderAVFObjC.mm:
(WebCore::WebAudioSourceProviderAVFObjC::setClient):
* platform/mock/MockMediaEndpoint.cpp:
(WebCore::MockMediaEndpoint::createMutedRemoteSource):
(WebCore::MockMediaEndpoint::unmuteTimerFired):
* platform/mock/MockRealtimeAudioSource.cpp:
(WebCore::MockRealtimeAudioSource::createMuted):
(WebCore::MockRealtimeAudioSource::startProducingData):
(WebCore::MockRealtimeAudioSource::stopProducingData):
* platform/mock/MockRealtimeAudioSource.h:
* platform/mock/MockRealtimeMediaSource.cpp:
(WebCore::MockRealtimeMediaSource::startProducingData): Deleted.

[webkit-changes] [216897] trunk/Websites/browserbench.org

2017-05-15 Thread rniwa
Title: [216897] trunk/Websites/browserbench.org








Revision 216897
Author rn...@webkit.org
Date 2017-05-15 18:59:10 -0700 (Mon, 15 May 2017)


Log Message
browserbench.org/Speedometer/ should show the benchmark not an index of files
https://bugs.webkit.org/show_bug.cgi?id=172141

Reviewed by Alexey Proskuryakov.

Renamed Speedometer/Full.html to Speedometer/index.html.
We used to have a .htaccess but it's better to use the same file name convention as other benchmarks.

* Speedometer/index.html: Renamed from Websites/browserbench.org/Speedometer/Full.html.

Modified Paths

trunk/Websites/browserbench.org/ChangeLog


Added Paths

trunk/Websites/browserbench.org/Speedometer/index.html


Removed Paths

trunk/Websites/browserbench.org/Speedometer/Full.html




Diff

Modified: trunk/Websites/browserbench.org/ChangeLog (216896 => 216897)

--- trunk/Websites/browserbench.org/ChangeLog	2017-05-16 01:37:43 UTC (rev 216896)
+++ trunk/Websites/browserbench.org/ChangeLog	2017-05-16 01:59:10 UTC (rev 216897)
@@ -1,3 +1,15 @@
+2017-05-15  Ryosuke Niwa  
+
+browserbench.org/Speedometer/ should show the benchmark not an index of files
+https://bugs.webkit.org/show_bug.cgi?id=172141
+
+Reviewed by Alexey Proskuryakov.
+
+Renamed Speedometer/Full.html to Speedometer/index.html.
+We used to have a .htaccess but it's better to use the same file name convention as other benchmarks.
+
+* Speedometer/index.html: Renamed from Websites/browserbench.org/Speedometer/Full.html.
+
 2017-05-12  Ryosuke Niwa  
 
 Add Websites/browserbench.org


Deleted: trunk/Websites/browserbench.org/Speedometer/Full.html (216896 => 216897)

--- trunk/Websites/browserbench.org/Speedometer/Full.html	2017-05-16 01:37:43 UTC (rev 216896)
+++ trunk/Websites/browserbench.org/Speedometer/Full.html	2017-05-16 01:59:10 UTC (rev 216897)
@@ -1,100 +0,0 @@
-
-
-
-
-Speedometer 1.0
-
-
-
-
-
-
-
-
-
-
-Speedometer is a browser benchmark that measures the responsiveness of Web applications.
-It uses demo web applications to simulate user actions such as adding to-do items.
-
-
-Your browser window is too small. For most accurate results, please make the view port size at least 850px by 650px.
-It's currently .
-
-
-Start Test
-
-
-
-
-
-
-
-
-
-
-
-Runs / Minute
-
-
-
-
-
-Test Again
-Details
-
-
-
-
-Detailed Results
-
-
-Arithmetic Mean:
-
-Test Again
-Summary
-
-
-
-
-
-About Speedometer
-
-Speedometer measures simulated user interactions in web applications.
-
-
-The current benchmark uses TodoMVC to simulate user actions for adding, completing, and removing to-do items.
-Speedometer repeats the same actions using DOM APIs 
-a core set of web platform APIs used extensively in web applications 
-as well as six popular _javascript_ frameworks: Ember.js, Backbone.js, jQuery, AngularJS, React, and Flight.
-Many of these frameworks are used on the most popular websites in the world, such as Facebook and Twitter.
-The performance of these types of operations depends on the speed of the DOM APIs, the _javascript_ engine,
-CSS style resolution, layout, and other technologies.
-
-
-
-Although user-driven actions like mouse movements and keyboard input cannot be accurately emulated in _javascript_,
-Speedometer does its best to faithfully replay a typical workload within the demo applications.
-To make the run time long enough to measure with the limited precision,
-we synchronously execute a large number of the operations, such as adding one hundred to-do items.
-
-
-
-Some browser engines use an optimization strategy of doing some work asynchronously to reduce the run time of synchronous operations.
-While returning control back to _javascript_ execution as soon as possible is worth pursuing,
-a holistic, accurate measurement of web application performance involves measuring
-when these related, asynchronous computations actually complete.
-Thus, Speedometer measures the time browser spends executing those asynchronous tasks in Speedometer,
-estimated as the time between when a zero-second delay timer is scheduled and when it is fired.
-
-
-Note: Speedometer is not meant to compare the performance of different _javascript_ frameworks.
-The mechanism we use to simulate user actions is different for each framework,
-and 

[webkit-changes] [216896] trunk/Source/WebCore

2017-05-15 Thread mmaxfield
Title: [216896] trunk/Source/WebCore








Revision 216896
Author mmaxfi...@apple.com
Date 2017-05-15 18:37:43 -0700 (Mon, 15 May 2017)


Log Message
Migrate Font constructor from bools to enums
https://bugs.webkit.org/show_bug.cgi?id=172140

Reviewed by Tim Horton.

In https://bugs.webkit.org/show_bug.cgi?id=168487, I'm adding a new flag to Font. We can't
keep having just a pile of bools in this class. Instead, we should be using enums.

No new tests because there is no behavior change.

* css/CSSFontFace.cpp:
(WebCore::CSSFontFace::font):
* css/CSSFontFaceSource.cpp:
(WebCore::CSSFontFaceSource::font):
* css/CSSSegmentedFontFace.cpp:
* loader/cache/CachedFont.cpp:
(WebCore::CachedFont::createFont):
* platform/graphics/Font.cpp:
(WebCore::Font::Font):
(WebCore::Font::verticalRightOrientationFont):
(WebCore::Font::uprightOrientationFont):
(WebCore::Font::brokenIdeographFont):
(WebCore::Font::description):
(WebCore::Font::mathData):
* platform/graphics/Font.h:
(WebCore::Font::create):
(WebCore::Font::origin):
(WebCore::Font::isInterstitial):
(WebCore::Font::widthForGlyph):
(WebCore::Font::isCustomFont): Deleted.
(WebCore::Font::isLoading): Deleted.
* platform/graphics/FontRanges.cpp:
* platform/graphics/cocoa/FontCocoa.mm:
(WebCore::Font::platformInit):
* platform/graphics/freetype/SimpleFontDataFreeType.cpp:
(WebCore::Font::platformCreateScaledFont):
* platform/graphics/win/SimpleFontDataCGWin.cpp:
(WebCore::Font::platformInit):
* platform/graphics/win/SimpleFontDataDirect2D.cpp:
(WebCore::Font::platformInit):
* platform/graphics/win/SimpleFontDataWin.cpp:
(WebCore::Font::platformCreateScaledFont):
(WebCore::Font::determinePitch):
* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::canUseForFontAndText):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/CSSFontFace.cpp
trunk/Source/WebCore/css/CSSFontFaceSource.cpp
trunk/Source/WebCore/css/CSSSegmentedFontFace.cpp
trunk/Source/WebCore/loader/cache/CachedFont.cpp
trunk/Source/WebCore/platform/graphics/Font.cpp
trunk/Source/WebCore/platform/graphics/Font.h
trunk/Source/WebCore/platform/graphics/FontRanges.cpp
trunk/Source/WebCore/platform/graphics/cocoa/FontCocoa.mm
trunk/Source/WebCore/platform/graphics/freetype/SimpleFontDataFreeType.cpp
trunk/Source/WebCore/platform/graphics/win/SimpleFontDataCGWin.cpp
trunk/Source/WebCore/platform/graphics/win/SimpleFontDataDirect2D.cpp
trunk/Source/WebCore/platform/graphics/win/SimpleFontDataWin.cpp
trunk/Source/WebCore/rendering/SimpleLineLayout.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (216895 => 216896)

--- trunk/Source/WebCore/ChangeLog	2017-05-16 01:29:39 UTC (rev 216895)
+++ trunk/Source/WebCore/ChangeLog	2017-05-16 01:37:43 UTC (rev 216896)
@@ -1,3 +1,51 @@
+2017-05-15  Myles C. Maxfield  
+
+Migrate Font constructor from bools to enums
+https://bugs.webkit.org/show_bug.cgi?id=172140
+
+Reviewed by Tim Horton.
+
+In https://bugs.webkit.org/show_bug.cgi?id=168487, I'm adding a new flag to Font. We can't
+keep having just a pile of bools in this class. Instead, we should be using enums.
+
+No new tests because there is no behavior change.
+
+* css/CSSFontFace.cpp:
+(WebCore::CSSFontFace::font):
+* css/CSSFontFaceSource.cpp:
+(WebCore::CSSFontFaceSource::font):
+* css/CSSSegmentedFontFace.cpp:
+* loader/cache/CachedFont.cpp:
+(WebCore::CachedFont::createFont):
+* platform/graphics/Font.cpp:
+(WebCore::Font::Font):
+(WebCore::Font::verticalRightOrientationFont):
+(WebCore::Font::uprightOrientationFont):
+(WebCore::Font::brokenIdeographFont):
+(WebCore::Font::description):
+(WebCore::Font::mathData):
+* platform/graphics/Font.h:
+(WebCore::Font::create):
+(WebCore::Font::origin):
+(WebCore::Font::isInterstitial):
+(WebCore::Font::widthForGlyph):
+(WebCore::Font::isCustomFont): Deleted.
+(WebCore::Font::isLoading): Deleted.
+* platform/graphics/FontRanges.cpp:
+* platform/graphics/cocoa/FontCocoa.mm:
+(WebCore::Font::platformInit):
+* platform/graphics/freetype/SimpleFontDataFreeType.cpp:
+(WebCore::Font::platformCreateScaledFont):
+* platform/graphics/win/SimpleFontDataCGWin.cpp:
+(WebCore::Font::platformInit):
+* platform/graphics/win/SimpleFontDataDirect2D.cpp:
+(WebCore::Font::platformInit):
+* platform/graphics/win/SimpleFontDataWin.cpp:
+(WebCore::Font::platformCreateScaledFont):
+(WebCore::Font::determinePitch):
+* rendering/SimpleLineLayout.cpp:
+(WebCore::SimpleLineLayout::canUseForFontAndText):
+
 2017-05-15  Youenn Fablet  
 
 WebRTC outgoing muted video sources should send black frames


Modified: trunk/Source/WebCore/css/CSSFontFace.cpp (216895 => 216896)

--- 

[webkit-changes] [216895] trunk/Source/bmalloc

2017-05-15 Thread ggaren
Title: [216895] trunk/Source/bmalloc








Revision 216895
Author gga...@apple.com
Date 2017-05-15 18:29:39 -0700 (Mon, 15 May 2017)


Log Message
bmalloc: Bump the size of the deallocator log to 512
https://bugs.webkit.org/show_bug.cgi?id=172143

Reviewed by Michael Saboff.

This is a speedup on parallel workloads for machines with lots of CPUs.

* bmalloc/Sizes.h:

Modified Paths

trunk/Source/bmalloc/ChangeLog
trunk/Source/bmalloc/bmalloc/Sizes.h




Diff

Modified: trunk/Source/bmalloc/ChangeLog (216894 => 216895)

--- trunk/Source/bmalloc/ChangeLog	2017-05-16 00:58:32 UTC (rev 216894)
+++ trunk/Source/bmalloc/ChangeLog	2017-05-16 01:29:39 UTC (rev 216895)
@@ -1,3 +1,14 @@
+2017-05-15  Geoffrey Garen  
+
+bmalloc: Bump the size of the deallocator log to 512
+https://bugs.webkit.org/show_bug.cgi?id=172143
+
+Reviewed by Michael Saboff.
+
+This is a speedup on parallel workloads for machines with lots of CPUs.
+
+* bmalloc/Sizes.h:
+
 2017-05-12  Michael Saboff  
 
 [iOS] Use memory footprint to dynamically adjust behavior of allocators


Modified: trunk/Source/bmalloc/bmalloc/Sizes.h (216894 => 216895)

--- trunk/Source/bmalloc/bmalloc/Sizes.h	2017-05-16 00:58:32 UTC (rev 216894)
+++ trunk/Source/bmalloc/bmalloc/Sizes.h	2017-05-16 01:29:39 UTC (rev 216895)
@@ -65,7 +65,7 @@
 static const size_t largeAlignment = smallMax / pageSizeWasteFactor;
 static const size_t largeAlignmentMask = largeAlignment - 1;
 
-static const size_t deallocatorLogCapacity = 256;
+static const size_t deallocatorLogCapacity = 512;
 static const size_t bumpRangeCacheCapacity = 3;
 
 static const std::chrono::milliseconds maxScavengeSleepDuration = std::chrono::milliseconds(250);






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [216893] trunk/Source/WebKit2

2017-05-15 Thread bfulgham
Title: [216893] trunk/Source/WebKit2








Revision 216893
Author bfulg...@apple.com
Date 2017-05-15 17:50:19 -0700 (Mon, 15 May 2017)


Log Message
Correct typo (part of r216790).

* PluginProcess/mac/com.apple.WebKit.plugin-common.sb.in: The check-in missed part of a
regular _expression_ needed to fix the audio playback.

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/PluginProcess/mac/com.apple.WebKit.plugin-common.sb.in




Diff

Modified: trunk/Source/WebKit2/ChangeLog (216892 => 216893)

--- trunk/Source/WebKit2/ChangeLog	2017-05-16 00:41:50 UTC (rev 216892)
+++ trunk/Source/WebKit2/ChangeLog	2017-05-16 00:50:19 UTC (rev 216893)
@@ -1,3 +1,10 @@
+2017-05-15  Brent Fulgham  
+
+Correct typo (part of r216790).
+
+* PluginProcess/mac/com.apple.WebKit.plugin-common.sb.in: The check-in missed part of a
+regular _expression_ needed to fix the audio playback.
+
 2017-05-15  Jer Noble  
 
 Add experimental setting to allow document gesture interaction to fulfill media playback gesture requirement


Modified: trunk/Source/WebKit2/PluginProcess/mac/com.apple.WebKit.plugin-common.sb.in (216892 => 216893)

--- trunk/Source/WebKit2/PluginProcess/mac/com.apple.WebKit.plugin-common.sb.in	2017-05-16 00:41:50 UTC (rev 216892)
+++ trunk/Source/WebKit2/PluginProcess/mac/com.apple.WebKit.plugin-common.sb.in	2017-05-16 00:50:19 UTC (rev 216893)
@@ -49,7 +49,7 @@
 (iokit-property "DeviceEqID")
 (iokit-property-regex #"^IOAudioControl(ChannelID|ID|SubType|Usage)")
 (iokit-property-regex #"^IOAudioDevice(CanBeDefaults|TransportType)")
-(iokit-property-regex #"^IOAudioEngine(ChannelNames|ClientDescription|CoreAudioPlugIn|(Device)Description|Flavor|GlobalUniqueID|OutputChannelLayout|SampleOffset|State)")
+(iokit-property-regex #"^IOAudioEngine(ChannelNames|ClientDescription|CoreAudioPlugIn|(|Device)Description|Flavor|GlobalUniqueID|OutputChannelLayout|SampleOffset|State)")
 (iokit-property-regex #"^IOAudioEngineClock(Domain|IsStable)")
 (iokit-property "IOAudioEngineDisableClockBoundsCheck")
 (iokit-property-regex #"^IOAudioEngine(Input|Output)Sample(Latency|Offset)")






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [216892] trunk

2017-05-15 Thread commit-queue
Title: [216892] trunk








Revision 216892
Author commit-qu...@webkit.org
Date 2017-05-15 17:41:50 -0700 (Mon, 15 May 2017)


Log Message
WebRTC outgoing muted video sources should send black frames
https://bugs.webkit.org/show_bug.cgi?id=170627


Patch by Youenn Fablet  on 2017-05-15
Reviewed by Eric Carlson.

Source/WebCore:

Covered by updated test.

Instead of sending one black frame and then another one asynchronously,
we use the timer to send a black frame every second when outgoing source is muted.

* platform/mediastream/mac/RealtimeOutgoingVideoSource.cpp:
(WebCore::RealtimeOutgoingVideoSource::sourceMutedChanged):
(WebCore::RealtimeOutgoingVideoSource::sourceEnabledChanged):
(WebCore::RealtimeOutgoingVideoSource::sendBlackFrames):
(WebCore::RealtimeOutgoingVideoSource::sendBlackFrame): Deleted.
* platform/mediastream/mac/RealtimeOutgoingVideoSource.h:
* testing/Internals.cpp:
(WebCore::Internals::videoSampleAvailable):

LayoutTests:

* webrtc/video-mute-expected.txt:
* webrtc/video-mute.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/webrtc/video-mute-expected.txt
trunk/LayoutTests/webrtc/video-mute.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/mediastream/mac/RealtimeOutgoingVideoSource.cpp
trunk/Source/WebCore/platform/mediastream/mac/RealtimeOutgoingVideoSource.h
trunk/Source/WebCore/testing/Internals.cpp




Diff

Modified: trunk/LayoutTests/ChangeLog (216891 => 216892)

--- trunk/LayoutTests/ChangeLog	2017-05-16 00:21:59 UTC (rev 216891)
+++ trunk/LayoutTests/ChangeLog	2017-05-16 00:41:50 UTC (rev 216892)
@@ -1,3 +1,14 @@
+2017-05-15  Youenn Fablet  
+
+WebRTC outgoing muted video sources should send black frames
+https://bugs.webkit.org/show_bug.cgi?id=170627
+
+
+Reviewed by Eric Carlson.
+
+* webrtc/video-mute-expected.txt:
+* webrtc/video-mute.html:
+
 2017-05-15  Mark Lam  
 
 Rolling out r214038 and r213697: Crashes when using computed properties with rest destructuring and object spread.


Modified: trunk/LayoutTests/webrtc/video-mute-expected.txt (216891 => 216892)

--- trunk/LayoutTests/webrtc/video-mute-expected.txt	2017-05-16 00:21:59 UTC (rev 216891)
+++ trunk/LayoutTests/webrtc/video-mute-expected.txt	2017-05-16 00:41:50 UTC (rev 216892)
@@ -5,5 +5,6 @@
 PASS Setting video exchange 
 PASS Track is enabled, video should not be black 
 PASS Track is disabled, video should be black 
+PASS If disabled, black frames should still be coming 
 PASS Track is enabled, video should not be black 
 


Modified: trunk/LayoutTests/webrtc/video-mute.html (216891 => 216892)

--- trunk/LayoutTests/webrtc/video-mute.html	2017-05-16 00:21:59 UTC (rev 216891)
+++ trunk/LayoutTests/webrtc/video-mute.html	2017-05-16 00:41:50 UTC (rev 216892)
@@ -46,11 +46,12 @@
 {
 return new Promise((resolve, reject) => {
pollVideoBlackCheck(expected, id, resolve);
-setTimeout(reject, 5000);
+setTimeout(() => reject("checkVideoBlack timed out for " + id + " expected " + expected), 5000);
 });
 }
 
 var track;
+var remoteTrack;
 promise_test((test) => {
 if (window.testRunner)
 testRunner.setUserMediaPermission(true);
@@ -62,7 +63,10 @@
 createConnections((firstConnection) => {
 firstConnection.addTrack(track, localStream);
 }, (secondConnection) => {
-secondConnection._ontrack_ = (trackEvent) => { resolve(trackEvent.streams[0]); };
+secondConnection._ontrack_ = (trackEvent) => {
+remoteTrack = trackEvent.track;
+resolve(trackEvent.streams[0]); 
+};
 });
 setTimeout(() => reject("Test timed out"), 5000);
 });
@@ -82,9 +86,25 @@
 }, "Track is disabled, video should be black");
 
 promise_test((test) => {
+if (!window.internals)
+return Promise.reject("This test requires internals API");
+internals.observeMediaStreamTrack(remoteTrack);
+let counter = internals.trackVideoSampleCount;
+return new Promise((resolve, reject) => {
+setInterval(() => {
+// Should get 1 frame per second.
+if (internals.trackVideoSampleCount - counter >= 2)
+resolve();
+}, 300);
+setTimeout(() => reject("did not get frames"), 5000);
+});
+}, "If disabled, black frames should still be coming");
+
+promise_test((test) => {
 track.enabled = true;
 return checkVideoBlack(true, "canvas2");
 }, "Track is enabled, video should not be black");
+
 
 
 


Modified: trunk/Source/WebCore/ChangeLog (216891 => 216892)

--- trunk/Source/WebCore/ChangeLog	2017-05-16 00:21:59 UTC (rev 216891)
+++ trunk/Source/WebCore/ChangeLog	2017-05-16 00:41:50 UTC (rev 216892)
@@ -1,3 +1,25 @@
+2017-05-15  Youenn Fablet  
+
+WebRTC outgoing muted video sources should send black frames
+ 

[webkit-changes] [216891] trunk

2017-05-15 Thread mark . lam
Title: [216891] trunk








Revision 216891
Author mark@apple.com
Date 2017-05-15 17:21:59 -0700 (Mon, 15 May 2017)


Log Message
Rolling out r214038 and r213697: Crashes when using computed properties with rest destructuring and object spread.
https://bugs.webkit.org/show_bug.cgi?id=172147

Rubber-stamped by Saam Barati.

JSTests:

* stress/object-rest-deconstruct.js: Removed.
* stress/object-spread.js: Removed.

Source/_javascript_Core:

I rolled out every thing in those 2 patches except for the change to make
CodeBlock::finishCreation() return a bool plus its clients that depend on this.
I made this exception because r214931 relies on this change, and this part of
the change looks correct.

* builtins/BuiltinNames.h:
* builtins/GlobalOperations.js:
(globalPrivate.speciesConstructor):
(globalPrivate.copyDataProperties): Deleted.
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::finishCreation):
(JSC::CodeBlock::setConstantIdentifierSetRegisters): Deleted.
* bytecode/CodeBlock.h:
* bytecode/UnlinkedCodeBlock.h:
(JSC::UnlinkedCodeBlock::addBitVector):
(JSC::UnlinkedCodeBlock::constantRegisters):
(JSC::UnlinkedCodeBlock::addSetConstant): Deleted.
(JSC::UnlinkedCodeBlock::constantIdentifierSets): Deleted.
* bytecompiler/BytecodeGenerator.cpp:
* bytecompiler/BytecodeGenerator.h:
* bytecompiler/NodesCodegen.cpp:
(JSC::PropertyListNode::emitBytecode):
(JSC::ObjectPatternNode::bindValue):
(JSC::ObjectSpreadExpressionNode::emitBytecode): Deleted.
* parser/ASTBuilder.h:
(JSC::ASTBuilder::createProperty):
(JSC::ASTBuilder::appendObjectPatternEntry):
(JSC::ASTBuilder::createObjectSpreadExpression): Deleted.
(JSC::ASTBuilder::appendObjectPatternRestEntry): Deleted.
(JSC::ASTBuilder::setContainsObjectRestElement): Deleted.
* parser/NodeConstructors.h:
(JSC::PropertyNode::PropertyNode):
(JSC::SpreadExpressionNode::SpreadExpressionNode):
(JSC::ObjectSpreadExpressionNode::ObjectSpreadExpressionNode): Deleted.
* parser/Nodes.h:
(JSC::ObjectPatternNode::appendEntry):
(JSC::ObjectSpreadExpressionNode::_expression_): Deleted.
(JSC::ObjectPatternNode::setContainsRestElement): Deleted.
* parser/Parser.cpp:
(JSC::Parser::parseDestructuringPattern):
(JSC::Parser::parseProperty):
* parser/SyntaxChecker.h:
(JSC::SyntaxChecker::createSpreadExpression):
(JSC::SyntaxChecker::createProperty):
(JSC::SyntaxChecker::operatorStackPop):
(JSC::SyntaxChecker::createObjectSpreadExpression): Deleted.
* runtime/ObjectConstructor.cpp:
(JSC::ObjectConstructor::finishCreation):
* runtime/SetPrototype.cpp:
(JSC::SetPrototype::finishCreation):

Source/WTF:

* wtf/HashSet.h:
(WTF::=):

LayoutTests:

* js/parser-syntax-check-expected.txt:
* js/script-tests/parser-syntax-check.js:

Modified Paths

trunk/JSTests/ChangeLog
trunk/LayoutTests/ChangeLog
trunk/LayoutTests/js/parser-syntax-check-expected.txt
trunk/LayoutTests/js/script-tests/parser-syntax-check.js
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/builtins/BuiltinNames.h
trunk/Source/_javascript_Core/builtins/GlobalOperations.js
trunk/Source/_javascript_Core/bytecode/CodeBlock.cpp
trunk/Source/_javascript_Core/bytecode/CodeBlock.h
trunk/Source/_javascript_Core/bytecode/UnlinkedCodeBlock.h
trunk/Source/_javascript_Core/bytecompiler/BytecodeGenerator.cpp
trunk/Source/_javascript_Core/bytecompiler/BytecodeGenerator.h
trunk/Source/_javascript_Core/bytecompiler/NodesCodegen.cpp
trunk/Source/_javascript_Core/parser/ASTBuilder.h
trunk/Source/_javascript_Core/parser/NodeConstructors.h
trunk/Source/_javascript_Core/parser/Nodes.h
trunk/Source/_javascript_Core/parser/Parser.cpp
trunk/Source/_javascript_Core/parser/SyntaxChecker.h
trunk/Source/_javascript_Core/runtime/ObjectConstructor.cpp
trunk/Source/_javascript_Core/runtime/SetPrototype.cpp
trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/HashSet.h


Removed Paths

trunk/JSTests/stress/object-rest-deconstruct.js
trunk/JSTests/stress/object-spread.js




Diff

Modified: trunk/JSTests/ChangeLog (216890 => 216891)

--- trunk/JSTests/ChangeLog	2017-05-16 00:07:45 UTC (rev 216890)
+++ trunk/JSTests/ChangeLog	2017-05-16 00:21:59 UTC (rev 216891)
@@ -1,3 +1,13 @@
+2017-05-15  Mark Lam  
+
+Rolling out r214038 and r213697: Crashes when using computed properties with rest destructuring and object spread.
+https://bugs.webkit.org/show_bug.cgi?id=172147
+
+Rubber-stamped by Saam Barati.
+
+* stress/object-rest-deconstruct.js: Removed.
+* stress/object-spread.js: Removed.
+
 2017-05-11  JF Bastien  
 
 WebAssembly: stop supporting 0xD


Deleted: trunk/JSTests/stress/object-rest-deconstruct.js (216890 => 216891)

--- trunk/JSTests/stress/object-rest-deconstruct.js	2017-05-16 00:07:45 UTC (rev 216890)
+++ trunk/JSTests/stress/object-rest-deconstruct.js	2017-05-16 00:21:59 UTC (rev 216891)
@@ -1,246 +0,0 @@
-let assert = (e) => {
-if (!e)
-throw Error("Bad assertion!");
-}
-
-let assertPropDescriptor = (restObj, prop) => {
-let desc = 

[webkit-changes] [216890] branches/safari-604.1.21-branch

2017-05-15 Thread matthew_hanson
Title: [216890] branches/safari-604.1.21-branch








Revision 216890
Author matthew_han...@apple.com
Date 2017-05-15 17:07:45 -0700 (Mon, 15 May 2017)


Log Message
Cherry-pick r216249. rdar://problem/31764764

Modified Paths

branches/safari-604.1.21-branch/Source/WebKit2/ChangeLog
branches/safari-604.1.21-branch/Source/WebKit2/UIProcess/API/APINavigationClient.h
branches/safari-604.1.21-branch/Source/WebKit2/UIProcess/API/C/WKAPICast.h
branches/safari-604.1.21-branch/Source/WebKit2/UIProcess/API/C/WKPage.cpp
branches/safari-604.1.21-branch/Source/WebKit2/UIProcess/API/C/WKPageNavigationClient.h
branches/safari-604.1.21-branch/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm
branches/safari-604.1.21-branch/Source/WebKit2/UIProcess/Cocoa/NavigationState.h
branches/safari-604.1.21-branch/Source/WebKit2/UIProcess/Cocoa/NavigationState.mm
branches/safari-604.1.21-branch/Source/WebKit2/UIProcess/WebPageProxy.cpp
branches/safari-604.1.21-branch/Source/WebKit2/UIProcess/WebPageProxy.h
branches/safari-604.1.21-branch/Source/WebKit2/UIProcess/WebProcessProxy.cpp
branches/safari-604.1.21-branch/Source/WebKit2/UIProcess/WebProcessProxy.h
branches/safari-604.1.21-branch/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj
branches/safari-604.1.21-branch/Tools/ChangeLog
branches/safari-604.1.21-branch/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj


Added Paths

branches/safari-604.1.21-branch/Source/WebKit2/Shared/ProcessTerminationReason.h
branches/safari-604.1.21-branch/Source/WebKit2/UIProcess/API/C/WKProcessTerminationReason.h
branches/safari-604.1.21-branch/Tools/TestWebKitAPI/Tests/WebKit2/ProcessDidTerminate.cpp


Removed Paths

branches/safari-604.1.21-branch/Source/WebKit2/Shared/ProcessCrashReason.h
branches/safari-604.1.21-branch/Source/WebKit2/UIProcess/API/C/WKProcessCrashReason.h
branches/safari-604.1.21-branch/Tools/TestWebKitAPI/Tests/WebKit2/ProcessDidCrashWithReason.cpp




Diff

Modified: branches/safari-604.1.21-branch/Source/WebKit2/ChangeLog (216889 => 216890)

--- branches/safari-604.1.21-branch/Source/WebKit2/ChangeLog	2017-05-15 23:54:34 UTC (rev 216889)
+++ branches/safari-604.1.21-branch/Source/WebKit2/ChangeLog	2017-05-16 00:07:45 UTC (rev 216890)
@@ -1,3 +1,54 @@
+2017-05-15  Matthew Hanson  
+
+Cherry-pick r216249. rdar://problem/31764764
+
+2017-05-05  Chris Dumez  
+
+Rename webProcessDidCrashWithReason callback to webProcessDidTerminate and stop calling webProcessDidCrash for client terminations
+https://bugs.webkit.org/show_bug.cgi?id=171624
+
+Reviewed by Dan Bernstein.
+
+Follow-up fixes after r216129 based on feedback I have received:
+- Rename webProcessDidCrashWithReason callback function to webProcessDidTerminate given that this is called
+  for non-crashes (e.g. terminations requested by the client).
+- Rename WKProcessCrashReason / ProcessCrashReason to WKProcessTerminationReason / ProcessTerminationReason
+  for consistency with the new naming.
+- Stop calling processDidCrash / webProcessDidCrash for terminations requested by the client, to maintain
+  pre-r216129 behavior. Those are not crashes (The client used an API such as WKPageTerminateProcess()).
+  webProcessDidTerminate will still be called though.
+- Fix a bug where - for terminations due to resource limits - WebPageProxy::processDidCrash() was getting
+  called twice: First by WebProcessProxy::requestTermination() with reason "RequestedByClient" then a
+  second time by WebProcessProxy::terminateProcessDueToResourceLimits() with the proper reason.
+
+* Shared/ProcessTerminationReason.h: Renamed from Source/WebKit2/Shared/ProcessCrashReason.h.
+* UIProcess/API/APINavigationClient.h:
+(API::NavigationClient::processDidTerminate):
+* UIProcess/API/C/WKAPICast.h:
+(WebKit::toAPI):
+* UIProcess/API/C/WKPage.cpp:
+(WKPageTerminate):
+(WKPageSetPageNavigationClient):
+* UIProcess/API/C/WKPageNavigationClient.h:
+* UIProcess/API/C/WKProcessTerminationReason.h: Renamed from Source/WebKit2/UIProcess/API/C/WKProcessCrashReason.h.
+* UIProcess/API/Cocoa/WKWebView.mm:
+(-[WKWebView _killWebContentProcessAndResetState]):
+* UIProcess/Cocoa/NavigationState.h:
+* UIProcess/Cocoa/NavigationState.mm:
+(WebKit::NavigationState::NavigationClient::processDidTerminate):
+* UIProcess/WebPageProxy.cpp:
+(WebKit::WebPageProxy::processDidTerminate):
+* UIProcess/WebPageProxy.h:
+* UIProcess/WebProcessProxy.cpp:
+(WebKit::WebProcessProxy::didClose):
+(WebKit::WebProcessProxy::requestTermination):
+

[webkit-changes] [216889] trunk/Source/WebCore

2017-05-15 Thread ddkilzer
Title: [216889] trunk/Source/WebCore








Revision 216889
Author ddkil...@apple.com
Date 2017-05-15 16:54:34 -0700 (Mon, 15 May 2017)


Log Message
Crash in libxml2.2.dylib: xmlDictReference



Reviewed by Daniel Bates.

Speculative fix and code clean-up based on source code
inspection.  The fix for the crash is in two parts that change
XSLStyleSheet::parseString():
1. Always set m_stylesheetDoc to nullptr after freeing it via
   XSLStyleSheet::clearXSLStylesheetDocument().
2. Add nullptr check before using m_stylesheetDoc from parent.

Broadly speaking, the changes are:
- Extract code to reset m_stylesheetDoc into new private
  XSLStyleSheet::clearXSLStylesheetDocument() method.  There is
  a special contract between m_stylesheetDoc and
  m_stylesheetDocTaken that wasn't being followed every time.
  See comment in XSLStyleSheet::compileStyleSheet().
- XSLStyleSheet::clearDocuments() now calls new
  clearXSLStylesheetDocument() method.  Previously, it was not
  checking or resetting m_stylesheetDocTaken, and it might have
  leaked an xmlDocPtr if m_stylesheetDoc was set and
  m_stylesheetDocTaken was false.
- XSLStyleSheet::parseString() now calls new
  clearXSLStylesheetDocument() method.  Previously, it did not
  clear m_stylesheetDoc after freeing it, and it could return
  early due to a failure in xmlCreateMemoryParserCtxt().
- In XSLStyleSheet::parseString() use checked arithmetic when
  calculating 'size' for xmlCreateMemoryParserCtxt() and
  xmlCtxtReadMemory().  This code used to do an implicit
  unsigned -> signed integer conversion that could overflow.
- Always iterate m_children using an 'auto& import' variable.

* xml/XSLStyleSheet.h:
(WebCore::XSLStyleSheet::clearXSLStylesheetDocument): Add declaration.
(WebCore::XSLStyleSheet::m_disabled): Add default initializer.
(WebCore::XSLStyleSheet::m_stylesheetDoc): Ditto.
(WebCore::XSLStyleSheet::m_stylesheetDocTaken): Ditto.
(WebCore::XSLStyleSheet::m_parentStyleSheet): Ditto.

* xml/XSLStyleSheetLibxslt.cpp:
(WebCore::XSLStyleSheet::XSLStyleSheet): Get rid of redundant
initializers.  Set m_parentStyleSheet if needed.
(WebCore::XSLStyleSheet::~XSLStyleSheet): Call
clearXSLStylesheetDocument() instead of custom code.  Switch
m_children fast iteration to use 'auto& import' variable.
(WebCore::XSLStyleSheet::isLoading): Switch m_children fast
iteration to use 'auto& import' variable.
(WebCore::XSLStyleSheet::clearDocuments): Call
clearXSLStylesheetDocument() instead of setting m_stylesheetDoc
to nullptr.  This might fix an occasional xmlDocPtr leak.
(WebCore::XSLStyleSheet::clearXSLStylesheetDocument): Add.  This
method always sets m_stylesheetDoc to nullptr (after freeing it
if necessary) and sets m_stylesheetDocTaken to false.
(WebCore::XSLStyleSheet::parseString): Call
clearXSLStylesheetDocument().  Prior to this, m_stylesheetDoc
might be left pointing to a freed value, and this method could
return early if xmlCreateMemoryParserCtxt() failed.  Switch to
using Checked<> to compute required buffer size to parse XSL
stylesheet, and return early on overflow.  Clean up existing
return statements to use boolean expressions.  Add nullptr check
for m_parentStyleSheet->m_stylesheetDoc before using it.
(WebCore::XSLStyleSheet::loadChildSheet): Get rid of local
variable by calling loadSheet() from last array element.
(WebCore::XSLStyleSheet::compileStyleSheet): Add debug assert
that m_stylesheetDoc is not nullptr.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/xml/XSLStyleSheet.h
trunk/Source/WebCore/xml/XSLStyleSheetLibxslt.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (216888 => 216889)

--- trunk/Source/WebCore/ChangeLog	2017-05-15 23:36:20 UTC (rev 216888)
+++ trunk/Source/WebCore/ChangeLog	2017-05-15 23:54:34 UTC (rev 216889)
@@ -1,3 +1,73 @@
+2017-05-15  David Kilzer  
+
+Crash in libxml2.2.dylib: xmlDictReference
+
+
+
+Reviewed by Daniel Bates.
+
+Speculative fix and code clean-up based on source code
+inspection.  The fix for the crash is in two parts that change
+XSLStyleSheet::parseString():
+1. Always set m_stylesheetDoc to nullptr after freeing it via
+   XSLStyleSheet::clearXSLStylesheetDocument().
+2. Add nullptr check before using m_stylesheetDoc from parent.
+
+Broadly speaking, the changes are:
+- Extract code to reset m_stylesheetDoc into new private
+  XSLStyleSheet::clearXSLStylesheetDocument() method.  There is
+  a special contract between m_stylesheetDoc and
+  m_stylesheetDocTaken that wasn't being followed every time.
+  See comment in XSLStyleSheet::compileStyleSheet().
+- XSLStyleSheet::clearDocuments() now calls new
+  clearXSLStylesheetDocument() method.  Previously, it was not
+  checking or resetting m_stylesheetDocTaken, and it might have
+  leaked an xmlDocPtr if m_stylesheetDoc was set and
+  

[webkit-changes] [216888] trunk/LayoutTests

2017-05-15 Thread cdumez
Title: [216888] trunk/LayoutTests








Revision 216888
Author cdu...@apple.com
Date 2017-05-15 16:36:20 -0700 (Mon, 15 May 2017)


Log Message
Unreviewed, rebaseline platform/ios/ios/css/construct-WebKitCSSMatrix.html after r216881.

* platform/ios/ios/css/construct-WebKitCSSMatrix-expected.txt:
* platform/ios/ios/css/resources/construct-WebKitCSSMatrix.js:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/ios/ios/css/construct-WebKitCSSMatrix-expected.txt
trunk/LayoutTests/platform/ios/ios/css/resources/construct-WebKitCSSMatrix.js




Diff

Modified: trunk/LayoutTests/ChangeLog (216887 => 216888)

--- trunk/LayoutTests/ChangeLog	2017-05-15 23:24:43 UTC (rev 216887)
+++ trunk/LayoutTests/ChangeLog	2017-05-15 23:36:20 UTC (rev 216888)
@@ -1,3 +1,10 @@
+2017-05-15  Chris Dumez  
+
+Unreviewed, rebaseline platform/ios/ios/css/construct-WebKitCSSMatrix.html after r216881.
+
+* platform/ios/ios/css/construct-WebKitCSSMatrix-expected.txt:
+* platform/ios/ios/css/resources/construct-WebKitCSSMatrix.js:
+
 2017-05-15  Jer Noble  
 
 Add experimental setting to allow document gesture interaction to fulfill media playback gesture requirement


Modified: trunk/LayoutTests/platform/ios/ios/css/construct-WebKitCSSMatrix-expected.txt (216887 => 216888)

--- trunk/LayoutTests/platform/ios/ios/css/construct-WebKitCSSMatrix-expected.txt	2017-05-15 23:24:43 UTC (rev 216887)
+++ trunk/LayoutTests/platform/ios/ios/css/construct-WebKitCSSMatrix-expected.txt	2017-05-15 23:36:20 UTC (rev 216888)
@@ -3,9 +3,9 @@
 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
 
 
-PASS WebKitCSSMatrix.prototype.toString.call(new WebKitCSSMatrix) is 'matrix(1.00, 0.00, 0.00, 1.00, 0.00, 0.00)'
-PASS WebKitCSSMatrix.prototype.toString.call(new WebKitCSSMatrix(new WebKitCSSMatrix)) is 'matrix(1.00, 0.00, 0.00, 1.00, 0.00, 0.00)'
-PASS WebKitCSSMatrix.prototype.toString.call(new WebKitCSSMatrix('matrix3d(1.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 0.00, 1.00)')) is 'matrix(1.00, 0.00, 0.00, 1.00, 0.00, 0.00)'
+PASS WebKitCSSMatrix.prototype.toString.call(new WebKitCSSMatrix) is 'matrix(1, 0, 0, 1, 0, 0)'
+PASS WebKitCSSMatrix.prototype.toString.call(new WebKitCSSMatrix(new WebKitCSSMatrix)) is 'matrix(1, 0, 0, 1, 0, 0)'
+PASS WebKitCSSMatrix.prototype.toString.call(new WebKitCSSMatrix('matrix3d(1.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 0.00, 1.00)')) is 'matrix(1, 0, 0, 1, 0, 0)'
 PASS successfullyParsed is true
 
 TEST COMPLETE


Modified: trunk/LayoutTests/platform/ios/ios/css/resources/construct-WebKitCSSMatrix.js (216887 => 216888)

--- trunk/LayoutTests/platform/ios/ios/css/resources/construct-WebKitCSSMatrix.js	2017-05-15 23:24:43 UTC (rev 216887)
+++ trunk/LayoutTests/platform/ios/ios/css/resources/construct-WebKitCSSMatrix.js	2017-05-15 23:36:20 UTC (rev 216888)
@@ -3,12 +3,12 @@
 );
 
 shouldBe("WebKitCSSMatrix.prototype.toString.call(new WebKitCSSMatrix)",
- "'matrix(1.00, 0.00, 0.00, 1.00, 0.00, 0.00)'");
+ "'matrix(1, 0, 0, 1, 0, 0)'");
 
 shouldBe("WebKitCSSMatrix.prototype.toString.call(new WebKitCSSMatrix(new WebKitCSSMatrix))",
- "'matrix(1.00, 0.00, 0.00, 1.00, 0.00, 0.00)'");
+ "'matrix(1, 0, 0, 1, 0, 0)'");
 
 shouldBe("WebKitCSSMatrix.prototype.toString.call(new WebKitCSSMatrix('matrix3d(1.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 0.00, 1.00)'))",
- "'matrix(1.00, 0.00, 0.00, 1.00, 0.00, 0.00)'");
+ "'matrix(1, 0, 0, 1, 0, 0)'");
 
 var successfullyParsed = true;






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [216887] trunk/Tools

2017-05-15 Thread rniwa
Title: [216887] trunk/Tools








Revision 216887
Author rn...@webkit.org
Date 2017-05-15 16:24:43 -0700 (Mon, 15 May 2017)


Log Message
Update ARES-6 plan file to use the latest version
https://bugs.webkit.org/show_bug.cgi?id=172139

Reviewed by Keith Miller.

Include r216538.

* Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan:

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan




Diff

Modified: trunk/Tools/ChangeLog (216886 => 216887)

--- trunk/Tools/ChangeLog	2017-05-15 22:46:13 UTC (rev 216886)
+++ trunk/Tools/ChangeLog	2017-05-15 23:24:43 UTC (rev 216887)
@@ -1,3 +1,14 @@
+2017-05-15  Ryosuke Niwa  
+
+Update ARES-6 plan file to use the latest version
+https://bugs.webkit.org/show_bug.cgi?id=172139
+
+Reviewed by Keith Miller.
+
+Include r216538.
+
+* Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan:
+
 2017-05-15  Jeremy Jones  
 
 Disable Picture In Picture API tests on unsupported platforms.


Modified: trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan (216886 => 216887)

--- trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan	2017-05-15 22:46:13 UTC (rev 216886)
+++ trunk/Tools/Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan	2017-05-15 23:24:43 UTC (rev 216887)
@@ -1,7 +1,7 @@
 {
 "timeout": 600,
 "count": 3,
-"svn_source": "https://svn.webkit.org/repository/webkit/trunk/PerformanceTests/ARES-6/@r214828",
+"svn_source": "https://svn.webkit.org/repository/webkit/trunk/PerformanceTests/ARES-6/@r216538",
 "benchmark_patch": "data/patches/ARES-6.patch",
 "entry_point": "index.html",
 "output_file": "ares6.result"






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [216886] trunk

2017-05-15 Thread jer . noble
Title: [216886] trunk








Revision 216886
Author jer.no...@apple.com
Date 2017-05-15 15:46:13 -0700 (Mon, 15 May 2017)


Log Message
Add experimental setting to allow document gesture interaction to fulfill media playback gesture requirement
https://bugs.webkit.org/show_bug.cgi?id=172131

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/restricted-audio-playback-with-document-gesture.html

Move all calls to ScriptController::processingUserGestureForMedia() to the new Document equivalent. In Document,
if the new setting is enabled, return true from processingUserGestureForMedia() if the top-level document has had
a user gesture interaction.

* Modules/mediastream/MediaStream.cpp:
(WebCore::MediaStream::processingUserGestureForMedia):
* Modules/mediastream/MediaStream.h:
* Modules/webaudio/AudioContext.cpp:
(WebCore::AudioContext::processingUserGestureForMedia):
(WebCore::AudioContext::willBeginPlayback):
(WebCore::AudioContext::willPausePlayback):
* Modules/webaudio/AudioContext.h:
* dom/Document.cpp:
(WebCore::Document::processingUserGestureForMedia):
* dom/Document.h:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::load):
(WebCore::HTMLMediaElement::audioTrackEnabledChanged):
(WebCore::HTMLMediaElement::seekWithTolerance):
(WebCore::HTMLMediaElement::play):
(WebCore::HTMLMediaElement::playInternal):
(WebCore::HTMLMediaElement::pause):
(WebCore::HTMLMediaElement::pauseInternal):
(WebCore::HTMLMediaElement::setMuted):
(WebCore::HTMLMediaElement::webkitShowPlaybackTargetPicker):
(WebCore::HTMLMediaElement::processingUserGestureForMedia):
* html/HTMLMediaElement.h:
* html/MediaElementSession.cpp:
(WebCore::MediaElementSession::playbackPermitted):
(WebCore::MediaElementSession::dataLoadingPermitted):
(WebCore::MediaElementSession::fullscreenPermitted):
(WebCore::MediaElementSession::canShowControlsManager):
(WebCore::MediaElementSession::showPlaybackTargetPicker):
* page/Settings.in:
* platform/audio/PlatformMediaSession.h:

Source/WebKit/mac:

* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences mediaUserGestureInheritsFromDocument]):
(-[WebPreferences setMediaUserGestureInheritsFromDocument:]):
* WebView/WebPreferencesPrivate.h:

Source/WebKit2:

* Shared/WebPreferencesDefinitions.h:
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetMediaUserGestureInheritsFromDocument):
(WKPreferencesGetMediaUserGestureInheritsFromDocument):
* UIProcess/API/C/WKPreferencesRefPrivate.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):

LayoutTests:

* media/restricted-audio-playback-with-document-gesture-expected.txt: Added.
* media/restricted-audio-playback-with-document-gesture.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/mediastream/MediaStream.cpp
trunk/Source/WebCore/Modules/mediastream/MediaStream.h
trunk/Source/WebCore/Modules/webaudio/AudioContext.cpp
trunk/Source/WebCore/Modules/webaudio/AudioContext.h
trunk/Source/WebCore/dom/Document.cpp
trunk/Source/WebCore/dom/Document.h
trunk/Source/WebCore/html/HTMLMediaElement.cpp
trunk/Source/WebCore/html/HTMLMediaElement.h
trunk/Source/WebCore/html/MediaElementSession.cpp
trunk/Source/WebCore/page/Settings.in
trunk/Source/WebCore/platform/audio/PlatformMediaSession.h
trunk/Source/WebKit/mac/ChangeLog
trunk/Source/WebKit/mac/WebView/WebPreferenceKeysPrivate.h
trunk/Source/WebKit/mac/WebView/WebPreferences.mm
trunk/Source/WebKit/mac/WebView/WebPreferencesPrivate.h
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h
trunk/Source/WebKit2/UIProcess/API/C/WKPreferences.cpp
trunk/Source/WebKit2/UIProcess/API/C/WKPreferencesRefPrivate.h
trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp


Added Paths

trunk/LayoutTests/media/restricted-audio-playback-with-document-gesture-expected.txt
trunk/LayoutTests/media/restricted-audio-playback-with-document-gesture.html




Diff

Modified: trunk/LayoutTests/ChangeLog (216885 => 216886)

--- trunk/LayoutTests/ChangeLog	2017-05-15 22:40:50 UTC (rev 216885)
+++ trunk/LayoutTests/ChangeLog	2017-05-15 22:46:13 UTC (rev 216886)
@@ -1,3 +1,13 @@
+2017-05-15  Jer Noble  
+
+Add experimental setting to allow document gesture interaction to fulfill media playback gesture requirement
+https://bugs.webkit.org/show_bug.cgi?id=172131
+
+Reviewed by Eric Carlson.
+
+* media/restricted-audio-playback-with-document-gesture-expected.txt: Added.
+* media/restricted-audio-playback-with-document-gesture.html: Added.
+
 2017-05-15  Per Arne Vollan  
 
 LayoutTest http/tests/media/track-in-band-hls-metadata-crash.html is a flaky timeout


Added: trunk/LayoutTests/media/restricted-audio-playback-with-document-gesture-expected.txt (0 => 216886)

--- trunk/LayoutTests/media/restricted-audio-playback-with-document-gesture-expected.txt	(rev 

[webkit-changes] [216885] trunk/LayoutTests

2017-05-15 Thread pvollan
Title: [216885] trunk/LayoutTests








Revision 216885
Author pvol...@apple.com
Date 2017-05-15 15:40:50 -0700 (Mon, 15 May 2017)


Log Message
LayoutTest http/tests/media/track-in-band-hls-metadata-crash.html is a flaky timeout
https://bugs.webkit.org/show_bug.cgi?id=167749

Reviewed by Eric Carlson.

Start video playback when the 'canplaythrough' event is handled, and stop logging the event,
since the event sequence is not identical on all bots.

* http/tests/media/track-in-band-hls-metadata-crash-expected.txt:
* http/tests/media/track-in-band-hls-metadata-crash.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/http/tests/media/track-in-band-hls-metadata-crash-expected.txt
trunk/LayoutTests/http/tests/media/track-in-band-hls-metadata-crash.html




Diff

Modified: trunk/LayoutTests/ChangeLog (216884 => 216885)

--- trunk/LayoutTests/ChangeLog	2017-05-15 22:34:15 UTC (rev 216884)
+++ trunk/LayoutTests/ChangeLog	2017-05-15 22:40:50 UTC (rev 216885)
@@ -1,3 +1,16 @@
+2017-05-15  Per Arne Vollan  
+
+LayoutTest http/tests/media/track-in-band-hls-metadata-crash.html is a flaky timeout
+https://bugs.webkit.org/show_bug.cgi?id=167749
+
+Reviewed by Eric Carlson.
+
+Start video playback when the 'canplaythrough' event is handled, and stop logging the event,
+since the event sequence is not identical on all bots.
+
+* http/tests/media/track-in-band-hls-metadata-crash-expected.txt:
+* http/tests/media/track-in-band-hls-metadata-crash.html:
+
 2017-05-15  Joseph Pecoraro  
 
 Web Inspector: CRASH seen with DOM.setOuterHTML when there is no documentElement


Modified: trunk/LayoutTests/http/tests/media/track-in-band-hls-metadata-crash-expected.txt (216884 => 216885)

--- trunk/LayoutTests/http/tests/media/track-in-band-hls-metadata-crash-expected.txt	2017-05-15 22:34:15 UTC (rev 216884)
+++ trunk/LayoutTests/http/tests/media/track-in-band-hls-metadata-crash-expected.txt	2017-05-15 22:40:50 UTC (rev 216885)
@@ -8,7 +8,6 @@
 EVENT(addtrack)
 RUN(track = video.textTracks[0])
 RUN(track.mode = 'hidden')
-RUN(video.play())
 EVENT(cuechange)
 
 ** Seek, should not crash.


Modified: trunk/LayoutTests/http/tests/media/track-in-band-hls-metadata-crash.html (216884 => 216885)

--- trunk/LayoutTests/http/tests/media/track-in-band-hls-metadata-crash.html	2017-05-15 22:34:15 UTC (rev 216884)
+++ trunk/LayoutTests/http/tests/media/track-in-band-hls-metadata-crash.html	2017-05-15 22:40:50 UTC (rev 216885)
@@ -14,7 +14,6 @@
 tracks = event.target;
 run("track = video.textTracks[0]");
 run("track.mode = 'hidden'");
-run("video.play()");
 waitForEvent('cuechange', cuechange, false, true, track);
 }
 
@@ -48,6 +47,8 @@
 waitForEvent('error', errorCallbackVideo, false, false, video);
 waitForEvent('error', errorCallbackTextTracks, false, false, video.textTracks);
 
+video._oncanplaythrough_ = () => { video.removeAttribute('oncanplaythrough'); video.play() };
+
 run("video.src = ''");
 
 consoleWrite("");






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [216884] trunk/Source/WebCore

2017-05-15 Thread jer . noble
Title: [216884] trunk/Source/WebCore








Revision 216884
Author jer.no...@apple.com
Date 2017-05-15 15:34:15 -0700 (Mon, 15 May 2017)


Log Message
Only ever initialize LibWebRTCProvider's staticFactoryAndThreads() factories once.
https://bugs.webkit.org/show_bug.cgi?id=172047

Reviewed by Youenn Fablet.

Wrap the initilization of the factories contained in staticFactoryAndThreads() in a call_once to ensure
new factories aren't created every time it's called.

* platform/mediastream/libwebrtc/LibWebRTCProvider.cpp:
(WebCore::staticFactoryAndThreads):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProvider.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (216883 => 216884)

--- trunk/Source/WebCore/ChangeLog	2017-05-15 22:32:27 UTC (rev 216883)
+++ trunk/Source/WebCore/ChangeLog	2017-05-15 22:34:15 UTC (rev 216884)
@@ -1,3 +1,16 @@
+2017-05-15  Jer Noble  
+
+Only ever initialize LibWebRTCProvider's staticFactoryAndThreads() factories once.
+https://bugs.webkit.org/show_bug.cgi?id=172047
+
+Reviewed by Youenn Fablet.
+
+Wrap the initilization of the factories contained in staticFactoryAndThreads() in a call_once to ensure
+new factories aren't created every time it's called.
+
+* platform/mediastream/libwebrtc/LibWebRTCProvider.cpp:
+(WebCore::staticFactoryAndThreads):
+
 2017-05-15  Joseph Pecoraro  
 
 Web Inspector: CRASH seen with DOM.setOuterHTML when there is no documentElement


Modified: trunk/Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProvider.cpp (216883 => 216884)

--- trunk/Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProvider.cpp	2017-05-15 22:32:27 UTC (rev 216883)
+++ trunk/Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProvider.cpp	2017-05-15 22:34:15 UTC (rev 216884)
@@ -61,8 +61,11 @@
 {
 static NeverDestroyed factoryAndThreads;
 #if PLATFORM(COCOA)
-factoryAndThreads.get().encoderFactoryGetter = []() -> std::unique_ptr { return std::make_unique(); };
-factoryAndThreads.get().decoderFactoryGetter = []() -> std::unique_ptr { return std::make_unique(); };
+static std::once_flag once;
+std::call_once(once, [] {
+factoryAndThreads.get().encoderFactoryGetter = []() -> std::unique_ptr { return std::make_unique(); };
+factoryAndThreads.get().decoderFactoryGetter = []() -> std::unique_ptr { return std::make_unique(); };
+});
 #endif
 return factoryAndThreads.get();
 }






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [216883] trunk

2017-05-15 Thread commit-queue
Title: [216883] trunk








Revision 216883
Author commit-qu...@webkit.org
Date 2017-05-15 15:32:27 -0700 (Mon, 15 May 2017)


Log Message
Web Inspector: CRASH seen with DOM.setOuterHTML when there is no documentElement
https://bugs.webkit.org/show_bug.cgi?id=172135


Patch by Joseph Pecoraro  on 2017-05-15
Reviewed by Brian Burg.

Source/WebCore:

Test: inspector/dom/setOuterHTML-no-document-element.html

* inspector/DOMPatchSupport.cpp:
(WebCore::DOMPatchSupport::patchDocument):
Null check the document element which might not exist.

LayoutTests:

* inspector/dom/setOuterHTML-no-document-element-expected.txt: Added.
* inspector/dom/setOuterHTML-no-document-element.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/inspector/DOMPatchSupport.cpp


Added Paths

trunk/LayoutTests/inspector/dom/setOuterHTML-no-document-element-expected.txt
trunk/LayoutTests/inspector/dom/setOuterHTML-no-document-element.html




Diff

Modified: trunk/LayoutTests/ChangeLog (216882 => 216883)

--- trunk/LayoutTests/ChangeLog	2017-05-15 22:10:37 UTC (rev 216882)
+++ trunk/LayoutTests/ChangeLog	2017-05-15 22:32:27 UTC (rev 216883)
@@ -1,3 +1,14 @@
+2017-05-15  Joseph Pecoraro  
+
+Web Inspector: CRASH seen with DOM.setOuterHTML when there is no documentElement
+https://bugs.webkit.org/show_bug.cgi?id=172135
+
+
+Reviewed by Brian Burg.
+
+* inspector/dom/setOuterHTML-no-document-element-expected.txt: Added.
+* inspector/dom/setOuterHTML-no-document-element.html: Added.
+
 2017-05-15  Chris Dumez  
 
 Align WebKitCSSMatrix stringifier with spec for DOMMatrix


Added: trunk/LayoutTests/inspector/dom/setOuterHTML-no-document-element-expected.txt (0 => 216883)

--- trunk/LayoutTests/inspector/dom/setOuterHTML-no-document-element-expected.txt	(rev 0)
+++ trunk/LayoutTests/inspector/dom/setOuterHTML-no-document-element-expected.txt	2017-05-15 22:32:27 UTC (rev 216883)
@@ -0,0 +1 @@
+ALERT: PASS: Should not crash.


Added: trunk/LayoutTests/inspector/dom/setOuterHTML-no-document-element.html (0 => 216883)

--- trunk/LayoutTests/inspector/dom/setOuterHTML-no-document-element.html	(rev 0)
+++ trunk/LayoutTests/inspector/dom/setOuterHTML-no-document-element.html	2017-05-15 22:32:27 UTC (rev 216883)
@@ -0,0 +1,32 @@
+
+
+
+
+function test()
+{
+let documentNodeId;
+let suite = InspectorTest.createAsyncSuite("DOM.setOuterHTML.NoDocumentElement");
+
+suite.addTestCase({
+name: "RemoveDocumentElementAndTriggerSetOuterHTML",
+description: "Log the initial outerHTML of the target element.",
+test(resolve, reject) {
+InspectorTest.evaluateInPage(`document.documentElement.remove()`);
+DOMAgent.setOuterHTML(documentNodeId, "Test Content")
+.then(() => { InspectorTest.pass("Should not crash."); })
+.then(resolve, reject);
+}
+});
+
+WebInspector.domTreeManager.requestDocument((documentNode) => {
+documentNodeId = documentNode.id;
+suite.runTestCasesAndFinish();
+});
+}
+
+
+
+Test for DOM.setOuterHTML on a page without a documentElement.
+
+


Modified: trunk/Source/WebCore/ChangeLog (216882 => 216883)

--- trunk/Source/WebCore/ChangeLog	2017-05-15 22:10:37 UTC (rev 216882)
+++ trunk/Source/WebCore/ChangeLog	2017-05-15 22:32:27 UTC (rev 216883)
@@ -1,3 +1,17 @@
+2017-05-15  Joseph Pecoraro  
+
+Web Inspector: CRASH seen with DOM.setOuterHTML when there is no documentElement
+https://bugs.webkit.org/show_bug.cgi?id=172135
+
+
+Reviewed by Brian Burg.
+
+Test: inspector/dom/setOuterHTML-no-document-element.html
+
+* inspector/DOMPatchSupport.cpp:
+(WebCore::DOMPatchSupport::patchDocument):
+Null check the document element which might not exist.
+
 2017-05-15  Said Abou-Hallawa  
 
 REGRESSION (216471): Infinite repaint-drawing loop when asynchronously decoding incomplete image frames


Modified: trunk/Source/WebCore/inspector/DOMPatchSupport.cpp (216882 => 216883)

--- trunk/Source/WebCore/inspector/DOMPatchSupport.cpp	2017-05-15 22:10:37 UTC (rev 216882)
+++ trunk/Source/WebCore/inspector/DOMPatchSupport.cpp	2017-05-15 22:32:27 UTC (rev 216883)
@@ -90,6 +90,11 @@
 parser->finish();
 parser->detach();
 
+if (!m_document.documentElement())
+return;
+if (!newDocument->documentElement())
+return;
+
 std::unique_ptr oldInfo = createDigest(*m_document.documentElement(), nullptr);
 std::unique_ptr newInfo = createDigest(*newDocument->documentElement(), _unusedNodesMap);
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [216882] trunk/Source/WebCore

2017-05-15 Thread commit-queue
Title: [216882] trunk/Source/WebCore








Revision 216882
Author commit-qu...@webkit.org
Date 2017-05-15 15:10:37 -0700 (Mon, 15 May 2017)


Log Message
REGRESSION (216471): Infinite repaint-drawing loop when asynchronously decoding incomplete image frames
https://bugs.webkit.org/show_bug.cgi?id=171900

Patch by Said Abou-Hallawa  on 2017-05-15
Reviewed by Tim Horton.

-- Don't destroy incomplete decoded image frames for large images. This
is to avoid flickering while decoding another image frame with the new
data. The old incomplete image frame will be destroyed once the newer one
finishes decoding.

-- Extend the enum ImageFrame::DecodingStatus by adding a new value called
'Decoding'. This new value will never be cached in the ImageFrame::
m_decodingStatus. Add a member m_currentFrameDecodingStatus to BitmapImage.
The purpose of this member is to invalidate the current frame, without
deleting it, when new encoded data is received.

-- Don't wait until the native image is decoded to cache the ImageFrame
decodingStatus. There is a big chance that more data arrives between
starting the decoding and finishing it such that the decoding changes
from Partial to Complete. We need to prevent keeping incomplete ImageFrames
cached because we mistakenly assume they are complete. To fix this issue
we need to know the ImageFrame decodingStatus when the decoding is requested.

* platform/graphics/BitmapImage.cpp:
(WebCore::BitmapImage::destroyDecodedData):
(WebCore::BitmapImage::dataChanged):
(WebCore::BitmapImage::draw):
(WebCore::BitmapImage::internalStartAnimation): At the beginning of this
function we check whether the next frame is being decoded or not and we
return DecodingActive if it is. Let's handle the second check here also
before requesting the decoding of nextFrame. We need to check whether the
nextFrame has a native image with decoded with the native size or not.
(WebCore::BitmapImage::internalAdvanceAnimation):
(WebCore::BitmapImage::imageFrameAvailableAtIndex):
* platform/graphics/BitmapImage.h:
* platform/graphics/ImageFrame.cpp:
(WebCore::ImageFrame::operator=):
(WebCore::ImageFrame::setDecodingStatus):
(WebCore::ImageFrame::decodingStatus):
* platform/graphics/ImageFrame.h:
(WebCore::ImageFrame::isInvalid):
(WebCore::ImageFrame::isPartial):
(WebCore::ImageFrame::isComplete):
(WebCore::ImageFrame::setDecoding): Deleted.
(WebCore::ImageFrame::decoding): Deleted.
(WebCore::ImageFrame::isEmpty): Deleted.
* platform/graphics/ImageFrameCache.cpp:
(WebCore::ImageFrameCache::setNativeImage):
(WebCore::ImageFrameCache::cacheMetadataAtIndex):
(WebCore::ImageFrameCache::cacheNativeImageAtIndex):
(WebCore::ImageFrameCache::cacheNativeImageAtIndexAsync):
(WebCore::ImageFrameCache::startAsyncDecodingQueue):
(WebCore::ImageFrameCache::requestFrameAsyncDecodingAtIndex):
(WebCore::ImageFrameCache::stopAsyncDecodingQueue):
(WebCore::ImageFrameCache::frameAtIndexCacheIfNeeded):
(WebCore::ImageFrameCache::frameDecodingStatusAtIndex):
(WebCore::ImageFrameCache::cacheFrameMetadataAtIndex): Deleted.
(WebCore::ImageFrameCache::cacheFrameNativeImageAtIndex): Deleted.
(WebCore::ImageFrameCache::cacheAsyncFrameNativeImageAtIndex): Deleted.
(WebCore::ImageFrameCache::frameIsCompleteAtIndex): Deleted.
* platform/graphics/ImageFrameCache.h:
(WebCore::ImageFrameCache::ImageFrameRequest::operator==):
* platform/graphics/ImageSource.cpp:
(WebCore::ImageSource::dataChanged):
* platform/graphics/ImageSource.h:
(WebCore::ImageSource::destroyIncompleteDecodedData):
(WebCore::ImageSource::requestFrameAsyncDecodingAtIndex): Let the caller
decide whether another request for the same image frame is allowed or not.
(WebCore::ImageSource::frameDecodingStatusAtIndex):
(WebCore::ImageSource::frameIsCompleteAtIndex): Deleted.
* platform/image-decoders/ImageDecoder.cpp:
(WebCore::ImageDecoder::frameDurationAtIndex):
(WebCore::ImageDecoder::createFrameImageAtIndex):
* platform/image-decoders/bmp/BMPImageReader.cpp:
(WebCore::BMPImageReader::decodeBMP):
* platform/image-decoders/gif/GIFImageDecoder.cpp:
(WebCore::GIFImageDecoder::clearFrameBufferCache):
(WebCore::GIFImageDecoder::haveDecodedRow):
(WebCore::GIFImageDecoder::frameComplete):
(WebCore::GIFImageDecoder::initFrameBuffer):
* platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
(WebCore::JPEGImageDecoder::outputScanlines):
(WebCore::JPEGImageDecoder::jpegComplete):
* platform/image-decoders/png/PNGImageDecoder.cpp:
(WebCore::PNGImageDecoder::rowAvailable):
(WebCore::PNGImageDecoder::pngComplete):
(WebCore::PNGImageDecoder::clearFrameBufferCache):
(WebCore::PNGImageDecoder::frameComplete):
* platform/image-decoders/webp/WEBPImageDecoder.cpp:
(WebCore::WEBPImageDecoder::decode):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/BitmapImage.cpp
trunk/Source/WebCore/platform/graphics/BitmapImage.h
trunk/Source/WebCore/platform/graphics/ImageFrame.cpp
trunk/Source/WebCore/platform/graphics/ImageFrame.h

[webkit-changes] [216881] trunk

2017-05-15 Thread cdumez
Title: [216881] trunk








Revision 216881
Author cdu...@apple.com
Date 2017-05-15 15:07:54 -0700 (Mon, 15 May 2017)


Log Message
Align WebKitCSSMatrix stringifier with spec for DOMMatrix
https://bugs.webkit.org/show_bug.cgi?id=172114

Reviewed by Simon Fraser.

Source/WebCore:

Align WebKitCSSMatrix stringifier with spec for DOMMatrix after:
- https://github.com/w3c/fxtf-drafts/pull/148

The following changes were made:
- Use EcmaScript's ToString() to convert floating point values to string
- Throw an invalid state error if the matrix contains non-finite values
- Made WebKitCSSMatrix.toString enumerable as per [1].

[1] https://heycam.github.io/webidl/#es-stringifier

Test: fast/css/matrix-stringifier.html

* css/WebKitCSSMatrix.cpp:
(WebCore::WebKitCSSMatrix::toString):
* css/WebKitCSSMatrix.h:
* css/WebKitCSSMatrix.idl:
* platform/graphics/transforms/TransformationMatrix.cpp:
(WebCore::TransformationMatrix::containsOnlyFiniteValues):
* platform/graphics/transforms/TransformationMatrix.h:

LayoutTests:

* fast/css/matrix-stringifier-expected.txt: Added.
* fast/css/matrix-stringifier.html: Added.
Add layout test coverage.

* fast/dom/Window/custom-constructors-expected.txt:
* fast/dom/Window/custom-constructors.html:
Rebaseline existing test to reflect behavior change.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/fast/dom/Window/custom-constructors-expected.txt
trunk/LayoutTests/fast/dom/Window/custom-constructors.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/WebKitCSSMatrix.cpp
trunk/Source/WebCore/css/WebKitCSSMatrix.h
trunk/Source/WebCore/css/WebKitCSSMatrix.idl
trunk/Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp
trunk/Source/WebCore/platform/graphics/transforms/TransformationMatrix.h


Added Paths

trunk/LayoutTests/fast/css/matrix-stringifier-expected.txt
trunk/LayoutTests/fast/css/matrix-stringifier.html




Diff

Modified: trunk/LayoutTests/ChangeLog (216880 => 216881)

--- trunk/LayoutTests/ChangeLog	2017-05-15 21:51:09 UTC (rev 216880)
+++ trunk/LayoutTests/ChangeLog	2017-05-15 22:07:54 UTC (rev 216881)
@@ -1,3 +1,18 @@
+2017-05-15  Chris Dumez  
+
+Align WebKitCSSMatrix stringifier with spec for DOMMatrix
+https://bugs.webkit.org/show_bug.cgi?id=172114
+
+Reviewed by Simon Fraser.
+
+* fast/css/matrix-stringifier-expected.txt: Added.
+* fast/css/matrix-stringifier.html: Added.
+Add layout test coverage.
+
+* fast/dom/Window/custom-constructors-expected.txt:
+* fast/dom/Window/custom-constructors.html:
+Rebaseline existing test to reflect behavior change.
+
 2017-05-15  Mark Lam  
 
 WorkerRunLoop::Task::performTask() should check !scriptController->isTerminatingExecution().


Added: trunk/LayoutTests/fast/css/matrix-stringifier-expected.txt (0 => 216881)

--- trunk/LayoutTests/fast/css/matrix-stringifier-expected.txt	(rev 0)
+++ trunk/LayoutTests/fast/css/matrix-stringifier-expected.txt	2017-05-15 22:07:54 UTC (rev 216881)
@@ -0,0 +1,29 @@
+
+FAIL DOMMatrix stringifier: identity (2d) undefined is not a constructor (evaluating 'new self[constr]()')
+FAIL DOMMatrix stringifier: integer 2d undefined is not a constructor (evaluating 'new self[constr]("matrix(1, 0, 0, 1, 0, 0)")')
+FAIL DOMMatrix stringifier: integer 3d undefined is not a constructor (evaluating 'new self[constr]("matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)")')
+FAIL DOMMatrix stringifier: floating point 2d undefined is not a constructor (evaluating 'new self[constr]("matrix(0.1, 0.2, 0.3, 0.4, 0.5, 0.6)")')
+FAIL DOMMatrix stringifier: floating point 3d undefined is not a constructor (evaluating 'new self[constr]("matrix3d(0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7)")')
+FAIL DOMMatrix stringifier: NaN undefined is not a constructor (evaluating 'new self[constr]()')
+FAIL DOMMatrix stringifier: Infinity undefined is not a constructor (evaluating 'new self[constr]()')
+FAIL DOMMatrix stringifier: -Infinity undefined is not a constructor (evaluating 'new self[constr]()')
+FAIL DOMMatrix.toString should be enumerable undefined is not an object (evaluating 'self[constr].prototype')
+FAIL DOMMatrixReadOnly stringifier: identity (2d) undefined is not a constructor (evaluating 'new self[constr]()')
+FAIL DOMMatrixReadOnly stringifier: integer 2d undefined is not a constructor (evaluating 'new self[constr]("matrix(1, 0, 0, 1, 0, 0)")')
+FAIL DOMMatrixReadOnly stringifier: integer 3d undefined is not a constructor (evaluating 'new self[constr]("matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)")')
+FAIL DOMMatrixReadOnly stringifier: floating point 2d undefined is not a constructor (evaluating 'new self[constr]("matrix(0.1, 0.2, 0.3, 0.4, 0.5, 0.6)")')
+FAIL DOMMatrixReadOnly stringifier: floating point 3d undefined is not a constructor (evaluating 'new self[constr]("matrix3d(0.1, 0.2, 

[webkit-changes] [216880] trunk/Source/JavaScriptCore

2017-05-15 Thread ddkilzer
Title: [216880] trunk/Source/_javascript_Core








Revision 216880
Author ddkil...@apple.com
Date 2017-05-15 14:51:09 -0700 (Mon, 15 May 2017)


Log Message
JSEnvironmentRecord::allocationSizeForScopeSize() and offsetOfVariable(ScopeOffset) should used checked arithmetic


Reviewed by Saam Barati.

* runtime/JSEnvironmentRecord.h:
(JSC::JSEnvironmentRecord::offsetOfVariable): Change to return
size_t and use checked arithmetic.
(JSC::JSEnvironmentRecord::allocationSizeForScopeSize): Change
to use checked arithmetic.

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/runtime/JSEnvironmentRecord.h




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (216879 => 216880)

--- trunk/Source/_javascript_Core/ChangeLog	2017-05-15 21:36:32 UTC (rev 216879)
+++ trunk/Source/_javascript_Core/ChangeLog	2017-05-15 21:51:09 UTC (rev 216880)
@@ -1,3 +1,16 @@
+2017-05-15  David Kilzer  
+
+JSEnvironmentRecord::allocationSizeForScopeSize() and offsetOfVariable(ScopeOffset) should used checked arithmetic
+
+
+Reviewed by Saam Barati.
+
+* runtime/JSEnvironmentRecord.h:
+(JSC::JSEnvironmentRecord::offsetOfVariable): Change to return
+size_t and use checked arithmetic.
+(JSC::JSEnvironmentRecord::allocationSizeForScopeSize): Change
+to use checked arithmetic.
+
 2017-05-15  Mark Lam  
 
 WorkerRunLoop::Task::performTask() should check !scriptController->isTerminatingExecution().


Modified: trunk/Source/_javascript_Core/runtime/JSEnvironmentRecord.h (216879 => 216880)

--- trunk/Source/_javascript_Core/runtime/JSEnvironmentRecord.h	2017-05-15 21:36:32 UTC (rev 216879)
+++ trunk/Source/_javascript_Core/runtime/JSEnvironmentRecord.h	2017-05-15 21:51:09 UTC (rev 216880)
@@ -65,16 +65,17 @@
 return WTF::roundUpToMultipleOf(sizeof(JSEnvironmentRecord));
 }
 
-static ptrdiff_t offsetOfVariable(ScopeOffset offset)
+static size_t offsetOfVariable(ScopeOffset offset)
 {
-return offsetOfVariables() + offset.offset() * sizeof(WriteBarrier);
+Checked scopeOffset = offset.offset();
+return (offsetOfVariables() + scopeOffset * sizeof(WriteBarrier)).unsafeGet();
 }
 
 DECLARE_INFO;
 
-static size_t allocationSizeForScopeSize(unsigned scopeSize)
+static size_t allocationSizeForScopeSize(Checked scopeSize)
 {
-return offsetOfVariables() + scopeSize * sizeof(WriteBarrier);
+return (offsetOfVariables() + scopeSize * sizeof(WriteBarrier)).unsafeGet();
 }
 
 static size_t allocationSize(SymbolTable* symbolTable)






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [216879] trunk/Websites/webkit.org

2017-05-15 Thread jcraig
Title: [216879] trunk/Websites/webkit.org








Revision 216879
Author jcr...@apple.com
Date 2017-05-15 14:36:32 -0700 (Mon, 15 May 2017)


Log Message
AX: Inaccessible content on webkit.org main page
https://bugs.webkit.org/show_bug.cgi?id=172106

Reviewed by Joseph Pecoraro.

* wp-content/themes/webkit/widgets/icon.php: Resolved link title.
* wp-content/themes/webkit/widgets/post.php: Resolved link title.
* wp-content/themes/webkit/widgets/twitter.php: Resolved link titles. Suppressed unlabeled images with alt="".

Modified Paths

trunk/Websites/webkit.org/ChangeLog
trunk/Websites/webkit.org/wp-content/themes/webkit/widgets/icon.php
trunk/Websites/webkit.org/wp-content/themes/webkit/widgets/post.php
trunk/Websites/webkit.org/wp-content/themes/webkit/widgets/twitter.php




Diff

Modified: trunk/Websites/webkit.org/ChangeLog (216878 => 216879)

--- trunk/Websites/webkit.org/ChangeLog	2017-05-15 21:23:23 UTC (rev 216878)
+++ trunk/Websites/webkit.org/ChangeLog	2017-05-15 21:36:32 UTC (rev 216879)
@@ -1,3 +1,14 @@
+2017-05-15  James Craig  
+
+AX: Inaccessible content on webkit.org main page
+https://bugs.webkit.org/show_bug.cgi?id=172106
+
+Reviewed by Joseph Pecoraro.
+
+* wp-content/themes/webkit/widgets/icon.php: Resolved link title.
+* wp-content/themes/webkit/widgets/post.php: Resolved link title.
+* wp-content/themes/webkit/widgets/twitter.php: Resolved link titles. Suppressed unlabeled images with alt="".
+
 2017-05-14  James Craig  
 
 Upload poster images and working captioned video


Modified: trunk/Websites/webkit.org/wp-content/themes/webkit/widgets/icon.php (216878 => 216879)

--- trunk/Websites/webkit.org/wp-content/themes/webkit/widgets/icon.php	2017-05-15 21:23:23 UTC (rev 216878)
+++ trunk/Websites/webkit.org/wp-content/themes/webkit/widgets/icon.php	2017-05-15 21:36:32 UTC (rev 216879)
@@ -30,7 +30,7 @@
 
 ?>
 
-">Clickable link
+">
 
 
 


Modified: trunk/Websites/webkit.org/wp-content/themes/webkit/widgets/post.php (216878 => 216879)

--- trunk/Websites/webkit.org/wp-content/themes/webkit/widgets/post.php	2017-05-15 21:23:23 UTC (rev 216878)
+++ trunk/Websites/webkit.org/wp-content/themes/webkit/widgets/post.php	2017-05-15 21:36:32 UTC (rev 216879)
@@ -59,7 +59,7 @@
 
 ?>
 >
-">Clickable link
+">
 
 >
 


Modified: trunk/Websites/webkit.org/wp-content/themes/webkit/widgets/twitter.php (216878 => 216879)

--- trunk/Websites/webkit.org/wp-content/themes/webkit/widgets/twitter.php	2017-05-15 21:23:23 UTC (rev 216878)
+++ trunk/Websites/webkit.org/wp-content/themes/webkit/widgets/twitter.php	2017-05-15 21:36:32 UTC (rev 216879)
@@ -68,10 +68,10 @@
 
 ?>
 
-" class="tile-link">Clickable link to tweet
+" class="tile-link">Tweet: 
 
 
-media_url_https); ?>">
+media_url_https); ?>" alt="">
 
 
 
@@ -94,7 +94,7 @@
 
 ?>
 
-">Clickable link
+">
 
 
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [216877] trunk/Source/WebKit2

2017-05-15 Thread bfulgham
Title: [216877] trunk/Source/WebKit2








Revision 216877
Author bfulg...@apple.com
Date 2017-05-15 14:21:58 -0700 (Mon, 15 May 2017)


Log Message
[WK2][macOS][iOS] Allow Network process to access nsurlstoraged's top level domain data cache
https://bugs.webkit.org/show_bug.cgi?id=172128


Reviewed by Alex Christensen.

* NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
* Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb:

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in
trunk/Source/WebKit2/Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb




Diff

Modified: trunk/Source/WebKit2/ChangeLog (216876 => 216877)

--- trunk/Source/WebKit2/ChangeLog	2017-05-15 20:34:13 UTC (rev 216876)
+++ trunk/Source/WebKit2/ChangeLog	2017-05-15 21:21:58 UTC (rev 216877)
@@ -1,3 +1,14 @@
+2017-05-15  Brent Fulgham  
+
+[WK2][macOS][iOS] Allow Network process to access nsurlstoraged's top level domain data cache 
+https://bugs.webkit.org/show_bug.cgi?id=172128
+
+
+Reviewed by Alex Christensen.
+
+* NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
+* Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb:
+
 2017-05-15  David Kilzer  
 
 Update json.hpp to v2.1.1


Modified: trunk/Source/WebKit2/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in (216876 => 216877)

--- trunk/Source/WebKit2/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in	2017-05-15 20:34:13 UTC (rev 216876)
+++ trunk/Source/WebKit2/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in	2017-05-15 21:21:58 UTC (rev 216877)
@@ -55,6 +55,11 @@
 (define (home-literal home-relative-literal)
 (literal (string-append (param "HOME_DIR") home-relative-literal)))
 
+#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
+;; CFNetwork
+(allow file-read-data (path "/private/var/db/nsurlstoraged/dafsaData.bin"))
+#endif
+
 ;; Remove when  is fixed.
 (define (HEX-pattern-match-generator pattern-descriptor)
 (letrec ((pattern-string ""))


Modified: trunk/Source/WebKit2/Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb (216876 => 216877)

--- trunk/Source/WebKit2/Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb	2017-05-15 20:34:13 UTC (rev 216876)
+++ trunk/Source/WebKit2/Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb	2017-05-15 21:21:58 UTC (rev 216877)
@@ -61,6 +61,10 @@
 
 (network-client (remote tcp) (remote udp))
 
+;; allow 3rd party applications to access nsurlstoraged's top level domain data cache
+(allow-well-known-system-group-container-subpath-read
+"/systemgroup.com.apple.nsurlstoragedresources/Library/dafsaData.bin")
+
 ;; Security framework
 (allow mach-lookup
 (global-name "com.apple.ocspd")






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [216876] trunk

2017-05-15 Thread mark . lam
Title: [216876] trunk








Revision 216876
Author mark@apple.com
Date 2017-05-15 13:34:13 -0700 (Mon, 15 May 2017)


Log Message
WorkerRunLoop::Task::performTask() should check !scriptController->isTerminatingExecution().
https://bugs.webkit.org/show_bug.cgi?id=171775


Reviewed by Filip Pizlo.

Source/_javascript_Core:

Increased the number of frames captured in VM::nativeStackTraceOfLastThrow()
from 25 to 100.  From experience, I found that 25 is sometimes not sufficient
for our debugging needs.

Also added VM::throwingThread() to track which thread an exception was thrown in.
This may be useful if the client is entering the VM from different threads.

* runtime/ExceptionScope.cpp:
(JSC::ExceptionScope::unexpectedExceptionMessage):
* runtime/ExceptionScope.h:
(JSC::ExceptionScope::exception):
(JSC::ExceptionScope::unexpectedExceptionMessage):
* runtime/Options.h:
- Added the unexpectedExceptionStackTraceLimit option.
* runtime/VM.cpp:
(JSC::VM::throwException):
* runtime/VM.h:
(JSC::VM::throwingThread):
(JSC::VM::clearException):

Source/WebCore:

Currently, WorkerThread::stop() calls scheduleExecutionTermination() to terminate
JS execution first, followed by posting a cleanup task to the worker, and lastly,
it invokes terminate() on the WorkerRunLoop.

As a result, before the run loop is terminated, the worker thread may observe the
TerminatedExecutionException in JS code, bail out, see another JS task to run,
re-enters the VM to run said JS code, and fails with an assertion due to the
TerminatedExecutionException still being pending on VM entry.

WorkerRunLoop::Task::performTask() already has a check to only allow a task to
run if and only if !runLoop.terminated() and the task is not a clean up task.
We'll fix the above race by changing WorkerRunLoop::Task::performTask() to check
!context->script()->isTerminatingExecution() instead of !runLoop.terminated().
Since WorkerThread::stop() always scheduleExecutionTermination() before it
terminates the run loop, !context->script()->isTerminatingExecution() implies
!runLoop.terminated().

The only time that runLoop is terminated without scheduleExecutionTermination()
being called is when WorkerThread::stop() is called before the WorkerThread has
finished creating its WorkerGlobalScope.  In this scenario, WorkerThread::stop()
will still terminate the run loop.  Hence, after the WorkerGlobalScope is created
(in WorkerThread::workerThread()), we will check if the run loop has been
terminated (i.e. stop() was called).  If so, we'll scheduleExecutionTermination()
there, and guarantee that if runloop.terminated() is true, then
context->script()->isTerminatingExecution() is also true.

Solutions that were considered but did not work (recorded for future reference):

1. In WorkerThread::stop(), call scheduleExecutionTermination() only after it
   posts the cleanup task and terminate the run loop.

   This did not work because this creates a race where the worker thread may run
   the cleanup task before WorkerThread::stop() finishes.  As a result, the
   scriptController may be deleted before we get to invoke scheduleExecutionTermination()
   on it, thereby resulting in a use after free.

   To make this work, we would have to change the life cycle management strategy
   of the WorkerScriptController.  This is a more risky change that we would
   want to take on at this time, and may also not be worth the gain.

2. Break scheduleExecutionTermination() up into 2 parts i.e. WorkerThread::stop()
   will:
   1. set the scriptControllers m_isTerminatingExecution flag before
  posting the cleanup task and terminating the run loop, and
   2. invoke VM::notifyNeedsTermination() after posting the cleanup task and
  terminating the run loop.

   This requires that we protect the liveness of the VM until we can invoke
   notifyNeedsTermination() on it.

   This did not work because:
   1. We may end up destructing the VM in WorkerThread::stop() i.e. in the main
  web frame, but only the worker thread holds the JS lock for the VM.

  We can make the WorkerThread::stop() acquire the JS lock just before it
  releases the protected VM's RefPtr, but that would mean the main thread
  may be stuck waiting a bit for the worker thread to release its JSLock.
  This is not desirable.

   2. In practice, changing the liveness period of the Worker VM relative to its
  WorkerScriptController and WorkerGlobalScope also has unexpected
  ramifications.  We observed many worker tests failing with assertion
  failures and crashes due to this change.

   Hence, this approach is also a more risky change than it appears on the
   surface, and is not worth exploring at this time.

In the end, changing WorkerRunLoop::Task::performTask() to check for
!scriptController->isTerminatingExecution() is the most straight forward solution
that is easy to prove correct.

Also fixed a race in WorkerThread::workerThread() where it can delete the
WorkerGlobalScope 

[webkit-changes] [216874] trunk

2017-05-15 Thread mmaxfield
Title: [216874] trunk








Revision 216874
Author mmaxfi...@apple.com
Date 2017-05-15 13:16:51 -0700 (Mon, 15 May 2017)


Log Message
Unicode characters which can't be rendered in any font are invisible
https://bugs.webkit.org/show_bug.cgi?id=171942


Reviewed by Tim Horton.

Source/WebCore:

There are some Unicode characters which don't have any font on the system which can render them.
These characters should be drawn as the .notdef "tofu." This is for security and usability, as
well as what Firefox and Chrome do. However, we still shouldn't draw characters with the
Default_Ignorable_Code_Point property, because this is what CoreText does.

This behavior is also what the Unicode spec recommends: In UTR #36 Unicode Security Considerations:
http://www.unicode.org/reports/tr36/#Recommendations_General
"If there is no available glyph for a character, never show a simple "?" or omit the character."

Also relevant is the Unicode Standard section 5.3 Unknown and MIssing Characters, starting at page
marked 203 in the following: http://www.unicode.org/versions/Unicode9.0.0/ch05.pdf

Tests: fast/text/default-ignorable.html
   fast/text/unknown-char-notdef.html

* platform/graphics/WidthIterator.cpp:
(WebCore::characterMustDrawSomething):

LayoutTests:

* fast/text/default-ignorable-expected.html: Added.
* fast/text/default-ignorable.html: Added.
* fast/text/unknown-char-notdef-expected-mismatch.html: Added.
* fast/text/unknown-char-notdef.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/mac/fast/text/softbank-emoji-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/WidthIterator.cpp


Added Paths

trunk/LayoutTests/fast/text/default-ignorable-expected.html
trunk/LayoutTests/fast/text/default-ignorable.html
trunk/LayoutTests/fast/text/unknown-char-notdef-expected-mismatch.html
trunk/LayoutTests/fast/text/unknown-char-notdef.html




Diff

Modified: trunk/LayoutTests/ChangeLog (216873 => 216874)

--- trunk/LayoutTests/ChangeLog	2017-05-15 19:54:27 UTC (rev 216873)
+++ trunk/LayoutTests/ChangeLog	2017-05-15 20:16:51 UTC (rev 216874)
@@ -1,3 +1,16 @@
+2017-05-15  Myles C. Maxfield  
+
+Unicode characters which can't be rendered in any font are invisible
+https://bugs.webkit.org/show_bug.cgi?id=171942
+
+
+Reviewed by Tim Horton.
+
+* fast/text/default-ignorable-expected.html: Added.
+* fast/text/default-ignorable.html: Added.
+* fast/text/unknown-char-notdef-expected-mismatch.html: Added.
+* fast/text/unknown-char-notdef.html: Added.
+
 2017-05-15  Zalan Bujtas  
 
 Simple line layout: Leading whitespace followed by a  produces an extra linebreak.


Added: trunk/LayoutTests/fast/text/default-ignorable-expected.html (0 => 216874)

--- trunk/LayoutTests/fast/text/default-ignorable-expected.html	(rev 0)
+++ trunk/LayoutTests/fast/text/default-ignorable-expected.html	2017-05-15 20:16:51 UTC (rev 216874)
@@ -0,0 +1,8 @@
+
+
+
+
+
+This test makes sure that code points which have the Default_Ignorable_Code_Point property are not rendered. The test passes if you don't see anything below.
+
+


Added: trunk/LayoutTests/fast/text/default-ignorable.html (0 => 216874)

--- trunk/LayoutTests/fast/text/default-ignorable.html	(rev 0)
+++ trunk/LayoutTests/fast/text/default-ignorable.html	2017-05-15 20:16:51 UTC (rev 216874)
@@ -0,0 +1,9 @@
+
+
+
+
+
+This test makes sure that code points which have the Default_Ignorable_Code_Point property are not rendered. The test passes if you don't see anything below.
+
+
+


Added: trunk/LayoutTests/fast/text/unknown-char-notdef-expected-mismatch.html (0 => 216874)

--- trunk/LayoutTests/fast/text/unknown-char-notdef-expected-mismatch.html	(rev 0)
+++ trunk/LayoutTests/fast/text/unknown-char-notdef-expected-mismatch.html	2017-05-15 20:16:51 UTC (rev 216874)
@@ -0,0 +1,8 @@
+
+
+
+
+
+This test makes sure that code points which have no fonts to render them are drawn visibly. The test passes if you see something below.
+
+


Added: trunk/LayoutTests/fast/text/unknown-char-notdef.html (0 => 216874)

--- trunk/LayoutTests/fast/text/unknown-char-notdef.html	(rev 0)
+++ trunk/LayoutTests/fast/text/unknown-char-notdef.html	2017-05-15 20:16:51 UTC (rev 216874)
@@ -0,0 +1,9 @@
+
+
+
+
+
+This test makes sure that code points which have no fonts to render them are drawn visibly. The test passes if you see something below.
+
+
+


Modified: trunk/LayoutTests/platform/mac/fast/text/softbank-emoji-expected.txt (216873 => 216874)

--- trunk/LayoutTests/platform/mac/fast/text/softbank-emoji-expected.txt	2017-05-15 19:54:27 UTC (rev 216873)
+++ trunk/LayoutTests/platform/mac/fast/text/softbank-emoji-expected.txt	2017-05-15 20:16:51 UTC (rev 216874)
@@ -5,8 +5,8 @@
 RenderBody {BODY} at (8,8) size 784x230
   RenderBlock {DIV} 

[webkit-changes] [216873] tags/Safari-603.3.1.0.1/Source

2017-05-15 Thread jmarcell
Title: [216873] tags/Safari-603.3.1.0.1/Source








Revision 216873
Author jmarc...@apple.com
Date 2017-05-15 12:54:27 -0700 (Mon, 15 May 2017)


Log Message
Versioning.

Modified Paths

tags/Safari-603.3.1.0.1/Source/_javascript_Core/Configurations/Version.xcconfig
tags/Safari-603.3.1.0.1/Source/WebCore/Configurations/Version.xcconfig
tags/Safari-603.3.1.0.1/Source/WebInspectorUI/Configurations/Version.xcconfig
tags/Safari-603.3.1.0.1/Source/WebKit/mac/Configurations/Version.xcconfig
tags/Safari-603.3.1.0.1/Source/WebKit2/Configurations/Version.xcconfig




Diff

Modified: tags/Safari-603.3.1.0.1/Source/_javascript_Core/Configurations/Version.xcconfig (216872 => 216873)

--- tags/Safari-603.3.1.0.1/Source/_javascript_Core/Configurations/Version.xcconfig	2017-05-15 19:50:17 UTC (rev 216872)
+++ tags/Safari-603.3.1.0.1/Source/_javascript_Core/Configurations/Version.xcconfig	2017-05-15 19:54:27 UTC (rev 216873)
@@ -25,8 +25,8 @@
 MINOR_VERSION = 3;
 TINY_VERSION = 1;
 MICRO_VERSION = 0;
-NANO_VERSION = 0;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);
+NANO_VERSION = 1;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.
 BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));


Modified: tags/Safari-603.3.1.0.1/Source/WebCore/Configurations/Version.xcconfig (216872 => 216873)

--- tags/Safari-603.3.1.0.1/Source/WebCore/Configurations/Version.xcconfig	2017-05-15 19:50:17 UTC (rev 216872)
+++ tags/Safari-603.3.1.0.1/Source/WebCore/Configurations/Version.xcconfig	2017-05-15 19:54:27 UTC (rev 216873)
@@ -25,8 +25,8 @@
 MINOR_VERSION = 3;
 TINY_VERSION = 1;
 MICRO_VERSION = 0;
-NANO_VERSION = 0;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);
+NANO_VERSION = 1;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.
 BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));


Modified: tags/Safari-603.3.1.0.1/Source/WebInspectorUI/Configurations/Version.xcconfig (216872 => 216873)

--- tags/Safari-603.3.1.0.1/Source/WebInspectorUI/Configurations/Version.xcconfig	2017-05-15 19:50:17 UTC (rev 216872)
+++ tags/Safari-603.3.1.0.1/Source/WebInspectorUI/Configurations/Version.xcconfig	2017-05-15 19:54:27 UTC (rev 216873)
@@ -2,8 +2,8 @@
 MINOR_VERSION = 3;
 TINY_VERSION = 1;
 MICRO_VERSION = 0;
-NANO_VERSION = 0;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);
+NANO_VERSION = 1;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The system version prefix is based on the current system version.
 SYSTEM_VERSION_PREFIX[sdk=iphone*] = 8;


Modified: tags/Safari-603.3.1.0.1/Source/WebKit/mac/Configurations/Version.xcconfig (216872 => 216873)

--- tags/Safari-603.3.1.0.1/Source/WebKit/mac/Configurations/Version.xcconfig	2017-05-15 19:50:17 UTC (rev 216872)
+++ tags/Safari-603.3.1.0.1/Source/WebKit/mac/Configurations/Version.xcconfig	2017-05-15 19:54:27 UTC (rev 216873)
@@ -25,8 +25,8 @@
 MINOR_VERSION = 3;
 TINY_VERSION = 1;
 MICRO_VERSION = 0;
-NANO_VERSION = 0;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);
+NANO_VERSION = 1;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.
 BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));


Modified: tags/Safari-603.3.1.0.1/Source/WebKit2/Configurations/Version.xcconfig (216872 => 216873)

--- tags/Safari-603.3.1.0.1/Source/WebKit2/Configurations/Version.xcconfig	2017-05-15 19:50:17 UTC (rev 216872)
+++ tags/Safari-603.3.1.0.1/Source/WebKit2/Configurations/Version.xcconfig	2017-05-15 19:54:27 UTC (rev 216873)
@@ -25,8 +25,8 @@
 MINOR_VERSION = 3;
 TINY_VERSION = 1;
 MICRO_VERSION = 0;
-NANO_VERSION = 0;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);
+NANO_VERSION = 1;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.
 BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [216872] branches/safari-603-branch/Source

2017-05-15 Thread matthew_hanson
Title: [216872] branches/safari-603-branch/Source








Revision 216872
Author matthew_han...@apple.com
Date 2017-05-15 12:50:17 -0700 (Mon, 15 May 2017)


Log Message
Versioning.

Modified Paths

branches/safari-603-branch/Source/_javascript_Core/Configurations/Version.xcconfig
branches/safari-603-branch/Source/WebCore/Configurations/Version.xcconfig
branches/safari-603-branch/Source/WebInspectorUI/Configurations/Version.xcconfig
branches/safari-603-branch/Source/WebKit/mac/Configurations/Version.xcconfig
branches/safari-603-branch/Source/WebKit2/Configurations/Version.xcconfig




Diff

Modified: branches/safari-603-branch/Source/_javascript_Core/Configurations/Version.xcconfig (216871 => 216872)

--- branches/safari-603-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2017-05-15 19:44:54 UTC (rev 216871)
+++ branches/safari-603-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2017-05-15 19:50:17 UTC (rev 216872)
@@ -23,7 +23,7 @@
 
 MAJOR_VERSION = 603;
 MINOR_VERSION = 3;
-TINY_VERSION = 1;
+TINY_VERSION = 2;
 MICRO_VERSION = 0;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);


Modified: branches/safari-603-branch/Source/WebCore/Configurations/Version.xcconfig (216871 => 216872)

--- branches/safari-603-branch/Source/WebCore/Configurations/Version.xcconfig	2017-05-15 19:44:54 UTC (rev 216871)
+++ branches/safari-603-branch/Source/WebCore/Configurations/Version.xcconfig	2017-05-15 19:50:17 UTC (rev 216872)
@@ -23,7 +23,7 @@
 
 MAJOR_VERSION = 603;
 MINOR_VERSION = 3;
-TINY_VERSION = 1;
+TINY_VERSION = 2;
 MICRO_VERSION = 0;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);


Modified: branches/safari-603-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (216871 => 216872)

--- branches/safari-603-branch/Source/WebInspectorUI/Configurations/Version.xcconfig	2017-05-15 19:44:54 UTC (rev 216871)
+++ branches/safari-603-branch/Source/WebInspectorUI/Configurations/Version.xcconfig	2017-05-15 19:50:17 UTC (rev 216872)
@@ -1,6 +1,6 @@
 MAJOR_VERSION = 603;
 MINOR_VERSION = 3;
-TINY_VERSION = 1;
+TINY_VERSION = 2;
 MICRO_VERSION = 0;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);


Modified: branches/safari-603-branch/Source/WebKit/mac/Configurations/Version.xcconfig (216871 => 216872)

--- branches/safari-603-branch/Source/WebKit/mac/Configurations/Version.xcconfig	2017-05-15 19:44:54 UTC (rev 216871)
+++ branches/safari-603-branch/Source/WebKit/mac/Configurations/Version.xcconfig	2017-05-15 19:50:17 UTC (rev 216872)
@@ -23,7 +23,7 @@
 
 MAJOR_VERSION = 603;
 MINOR_VERSION = 3;
-TINY_VERSION = 1;
+TINY_VERSION = 2;
 MICRO_VERSION = 0;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);


Modified: branches/safari-603-branch/Source/WebKit2/Configurations/Version.xcconfig (216871 => 216872)

--- branches/safari-603-branch/Source/WebKit2/Configurations/Version.xcconfig	2017-05-15 19:44:54 UTC (rev 216871)
+++ branches/safari-603-branch/Source/WebKit2/Configurations/Version.xcconfig	2017-05-15 19:50:17 UTC (rev 216872)
@@ -23,7 +23,7 @@
 
 MAJOR_VERSION = 603;
 MINOR_VERSION = 3;
-TINY_VERSION = 1;
+TINY_VERSION = 2;
 MICRO_VERSION = 0;
 NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [216871] trunk/Tools

2017-05-15 Thread commit-queue
Title: [216871] trunk/Tools








Revision 216871
Author commit-qu...@webkit.org
Date 2017-05-15 12:44:54 -0700 (Mon, 15 May 2017)


Log Message
Disable Picture In Picture API tests on unsupported platforms.
https://bugs.webkit.org/show_bug.cgi?id=172125
rdar://problem/32199477

Patch by Jeremy Jones  on 2017-05-15
Reviewed by Simon Fraser.

The callbacks and allowing picture-in-picture require new SPI.

* TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm:

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm




Diff

Modified: trunk/Tools/ChangeLog (216870 => 216871)

--- trunk/Tools/ChangeLog	2017-05-15 19:38:24 UTC (rev 216870)
+++ trunk/Tools/ChangeLog	2017-05-15 19:44:54 UTC (rev 216871)
@@ -1,3 +1,15 @@
+2017-05-15  Jeremy Jones  
+
+Disable Picture In Picture API tests on unsupported platforms.
+https://bugs.webkit.org/show_bug.cgi?id=172125
+rdar://problem/32199477
+
+Reviewed by Simon Fraser.
+
+The callbacks and allowing picture-in-picture require new SPI.
+
+* TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm:
+
 2017-05-15  Brady Eidson  
 
 [ios-simulator] API test WKWebView.ClearAppCache is failing.


Modified: trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm (216870 => 216871)

--- trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm	2017-05-15 19:38:24 UTC (rev 216870)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm	2017-05-15 19:44:54 UTC (rev 216871)
@@ -25,7 +25,7 @@
 
 #include "config.h"
 
-#if WK_API_ENABLED && PLATFORM(MAC)
+#if WK_API_ENABLED && PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
 
 #import "PlatformUtilities.h"
 #import "PlatformWebView.h"






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [216870] tags/Safari-603.3.1.0.1/

2017-05-15 Thread jmarcell
Title: [216870] tags/Safari-603.3.1.0.1/








Revision 216870
Author jmarc...@apple.com
Date 2017-05-15 12:38:24 -0700 (Mon, 15 May 2017)


Log Message
New tag.

Added Paths

tags/Safari-603.3.1.0.1/




Diff




___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [216869] trunk/Tools

2017-05-15 Thread beidson
Title: [216869] trunk/Tools








Revision 216869
Author beid...@apple.com
Date 2017-05-15 12:34:28 -0700 (Mon, 15 May 2017)


Log Message
[ios-simulator] API test WKWebView.ClearAppCache is failing.
https://bugs.webkit.org/show_bug.cgi?id=172120

Unreviewed test gardening.


* TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
(TEST): ios-sim needs explicit deleting of the app cache paths that I'd removed in 216805.
  Restoring that code fixes this.

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm




Diff

Modified: trunk/Tools/ChangeLog (216868 => 216869)

--- trunk/Tools/ChangeLog	2017-05-15 19:21:36 UTC (rev 216868)
+++ trunk/Tools/ChangeLog	2017-05-15 19:34:28 UTC (rev 216869)
@@ -1,3 +1,14 @@
+2017-05-15  Brady Eidson  
+
+[ios-simulator] API test WKWebView.ClearAppCache is failing.
+https://bugs.webkit.org/show_bug.cgi?id=172120
+
+Unreviewed test gardening.
+
+* TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
+(TEST): ios-sim needs explicit deleting of the app cache paths that I'd removed in 216805.
+  Restoring that code fixes this.
+
 2017-05-15  Timothy Horton  
 
 Null deref under WebContentReader::readURL when interacting with a file URL


Modified: trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm (216868 => 216869)

--- trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm	2017-05-15 19:21:36 UTC (rev 216868)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm	2017-05-15 19:34:28 UTC (rev 216869)
@@ -135,8 +135,7 @@
 
 // Start with a clean slate of WebsiteData.
 readyToContinue = false;
-[[WKWebsiteDataStore defaultDataStore] removeDataOfTypes:[WKWebsiteDataStore allWebsiteDataTypes] modifiedSince:[NSDate distantPast] completionHandler:^()
-{
+[[WKWebsiteDataStore defaultDataStore] removeDataOfTypes:[WKWebsiteDataStore allWebsiteDataTypes] modifiedSince:[NSDate distantPast] completionHandler:^() {
 readyToContinue = true;
 }];
 TestWebKitAPI::Util::run();
@@ -147,6 +146,11 @@
 [[NSFileManager defaultManager] removeItemAtURL:websiteCacheURL error:nil];
 }
 
+if (auto *appCacheDirectory = defaultApplicationCacheDirectory()) {
+NSURL *appCacheURL = [NSURL fileURLWithPath:[appCacheDirectory stringByExpandingTildeInPath]];
+[[NSFileManager defaultManager] removeItemAtURL:appCacheURL error:nil];
+}
+
 NSURL *dbResourceURL = [[NSBundle mainBundle] URLForResource:@"ApplicationCache" withExtension:@"db" subdirectory:@"TestWebKitAPI.resources"];
 NSURL *shmResourceURL = [[NSBundle mainBundle] URLForResource:@"ApplicationCache" withExtension:@"db-shm" subdirectory:@"TestWebKitAPI.resources"];
 NSURL *walResourceURL = [[NSBundle mainBundle] URLForResource:@"ApplicationCache" withExtension:@"db-wal" subdirectory:@"TestWebKitAPI.resources"];






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [216868] trunk

2017-05-15 Thread timothy_horton
Title: [216868] trunk








Revision 216868
Author timothy_hor...@apple.com
Date 2017-05-15 12:21:36 -0700 (Mon, 15 May 2017)


Log Message
Null deref under WebContentReader::readURL when interacting with a file URL
https://bugs.webkit.org/show_bug.cgi?id=172045


Reviewed by Wenson Hsieh.

* editing/ios/EditorIOS.mm:
(WebCore::Editor::WebContentReader::readURL):
The AppSupport soft link was wrong, as there is no such framework in /System/Library/Frameworks.
Thus, any time we hit this codepath, the soft linked function would be null, and calling it would crash.
Instead of just fixing the soft link, remove the code, because it does not seem necessary to
special-case fileURLs to images in the media directory.

* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
The text of the file URL is pasted because a textual version of it gets
onto the pasteboard. However, this test would have crashed before. Also
tests that we don't make an .

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/editing/ios/EditorIOS.mm
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/ios/DataInteractionTests.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (216867 => 216868)

--- trunk/Source/WebCore/ChangeLog	2017-05-15 18:31:11 UTC (rev 216867)
+++ trunk/Source/WebCore/ChangeLog	2017-05-15 19:21:36 UTC (rev 216868)
@@ -1,3 +1,18 @@
+2017-05-15  Timothy Horton  
+
+Null deref under WebContentReader::readURL when interacting with a file URL
+https://bugs.webkit.org/show_bug.cgi?id=172045
+
+
+Reviewed by Wenson Hsieh.
+
+* editing/ios/EditorIOS.mm:
+(WebCore::Editor::WebContentReader::readURL):
+The AppSupport soft link was wrong, as there is no such framework in /System/Library/Frameworks.
+Thus, any time we hit this codepath, the soft linked function would be null, and calling it would crash.
+Instead of just fixing the soft link, remove the code, because it does not seem necessary to
+special-case fileURLs to images in the media directory.
+
 2017-05-15  Eric Carlson  
 
 ASSERTION FAILED: wasRemoved in WebCore::RealtimeMediaSourceCenter::removeDevicesChangedObserver(DevicesChangedObserverToken)


Modified: trunk/Source/WebCore/editing/ios/EditorIOS.mm (216867 => 216868)

--- trunk/Source/WebCore/editing/ios/EditorIOS.mm	2017-05-15 18:31:11 UTC (rev 216867)
+++ trunk/Source/WebCore/editing/ios/EditorIOS.mm	2017-05-15 19:21:36 UTC (rev 216868)
@@ -64,9 +64,6 @@
 #import 
 #import 
 
-SOFT_LINK_FRAMEWORK(AppSupport)
-SOFT_LINK(AppSupport, CPSharedResourcesDirectory, CFStringRef, (void), ())
-
 namespace WebCore {
 
 using namespace HTMLNames;
@@ -330,34 +327,19 @@
 return true;
 }
 
-if ([(NSURL *)url isFileURL]) {
-NSString *localPath = [(NSURL *)url relativePath];
-// Only allow url attachments from ~/Media for now.
-if (![localPath hasPrefix:[(NSString *)CPSharedResourcesDirectory() stringByAppendingString:@"/Media/DCIM/"]])
-return false;
+if ([(NSURL *)url isFileURL])
+return false;
 
-RetainPtr fileType = adoptNS((NSString *)UTTypeCreatePreferredIdentifierForTag(kUTTagClassFilenameExtension, (CFStringRef)[localPath pathExtension], NULL));
-NSData *data = "" dataWithContentsOfFile:localPath];
-if (UTTypeConformsTo((CFStringRef)fileType.get(), kUTTypePNG)) {
-addFragment(frame.editor().createFragmentForImageResourceAndAddResource(ArchiveResource::create(SharedBuffer::create([[data copy] autorelease]), URL::fakeURLWithRelativePart("image.png"), @"image/png", emptyString(), emptyString(;
-return fragment;
-} else if (UTTypeConformsTo((CFStringRef)fileType.get(), kUTTypeJPEG)) {
-addFragment(frame.editor().createFragmentForImageResourceAndAddResource(ArchiveResource::create(SharedBuffer::create([[data copy] autorelease]), URL::fakeURLWithRelativePart("image.jpg"), @"image/jpg", emptyString(), emptyString(;
-return fragment;
-}
-} else {
-auto anchor = HTMLAnchorElement::create(*frame.document());
-anchor->setAttributeWithoutSynchronization(HTMLNames::hrefAttr, url.string());
+auto anchor = HTMLAnchorElement::create(*frame.document());
+anchor->setAttributeWithoutSynchronization(HTMLNames::hrefAttr, url.string());
 
-String linkText = title.length() ? title : String([[(NSURL *)url absoluteString] precomposedStringWithCanonicalMapping]);
-anchor->appendChild(frame.document()->createTextNode(linkText));
+String linkText = title.length() ? title : String([[(NSURL *)url absoluteString] precomposedStringWithCanonicalMapping]);
+anchor->appendChild(frame.document()->createTextNode(linkText));
 
-auto newFragment = frame.document()->createDocumentFragment();
-newFragment->appendChild(anchor);
-

[webkit-changes] [216867] trunk/Source/WebKit2

2017-05-15 Thread bfulgham
Title: [216867] trunk/Source/WebKit2








Revision 216867
Author bfulg...@apple.com
Date 2017-05-15 11:31:11 -0700 (Mon, 15 May 2017)


Log Message
Unreviewed build fix.

Debugging code was accidentally left in the Plugin sandbox profile.

* PluginProcess/mac/com.apple.WebKit.plugin-common.sb.in:

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/PluginProcess/mac/com.apple.WebKit.plugin-common.sb.in




Diff

Modified: trunk/Source/WebKit2/ChangeLog (216866 => 216867)

--- trunk/Source/WebKit2/ChangeLog	2017-05-15 18:26:08 UTC (rev 216866)
+++ trunk/Source/WebKit2/ChangeLog	2017-05-15 18:31:11 UTC (rev 216867)
@@ -1,3 +1,11 @@
+2017-05-15  Brent Fulgham  
+
+Unreviewed build fix.
+
+Debugging code was accidentally left in the Plugin sandbox profile.
+
+* PluginProcess/mac/com.apple.WebKit.plugin-common.sb.in:
+
 2017-05-15  Gwang Yoon Hwang  
 
 [WPE] Unreviewed debug build fix


Modified: trunk/Source/WebKit2/PluginProcess/mac/com.apple.WebKit.plugin-common.sb.in (216866 => 216867)

--- trunk/Source/WebKit2/PluginProcess/mac/com.apple.WebKit.plugin-common.sb.in	2017-05-15 18:26:08 UTC (rev 216866)
+++ trunk/Source/WebKit2/PluginProcess/mac/com.apple.WebKit.plugin-common.sb.in	2017-05-15 18:31:11 UTC (rev 216867)
@@ -22,8 +22,7 @@
 ; THE POSSIBILITY OF SUCH DAMAGE.
 
 (version 1)
-;(deny default)
-(allow default (with report))
+(deny default)
 (allow system-audit file-read-metadata)
 
 (import "system.sb")






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [216866] trunk/Source/WebCore

2017-05-15 Thread eric . carlson
Title: [216866] trunk/Source/WebCore








Revision 216866
Author eric.carl...@apple.com
Date 2017-05-15 11:26:08 -0700 (Mon, 15 May 2017)


Log Message
ASSERTION FAILED: wasRemoved in WebCore::RealtimeMediaSourceCenter::removeDevicesChangedObserver(DevicesChangedObserverToken)
https://bugs.webkit.org/show_bug.cgi?id=171529


Reviewed by Jer Noble.

No new tests, fixes a crash in existing tests.

* Modules/mediastream/MediaDevices.cpp:
(WebCore::MediaDevices::MediaDevices): Use a weak ptr.

* platform/mediastream/RealtimeMediaSourceCenter.cpp:
* platform/mediastream/RealtimeMediaSourceCenter.cpp:
(WebCore::observerMap):  Use a static hash map for observers because the
source center can change at runtime.
(WebCore::RealtimeMediaSourceCenter::addDevicesChangedObserver):
(WebCore::RealtimeMediaSourceCenter::removeDevicesChangedObserver):
(WebCore::RealtimeMediaSourceCenter::captureDevicesChanged):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/mediastream/MediaDevices.cpp
trunk/Source/WebCore/Modules/mediastream/MediaDevices.h
trunk/Source/WebCore/platform/mediastream/RealtimeMediaSourceCenter.cpp
trunk/Source/WebCore/platform/mediastream/RealtimeMediaSourceCenter.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (216865 => 216866)

--- trunk/Source/WebCore/ChangeLog	2017-05-15 18:14:36 UTC (rev 216865)
+++ trunk/Source/WebCore/ChangeLog	2017-05-15 18:26:08 UTC (rev 216866)
@@ -1,3 +1,24 @@
+2017-05-15  Eric Carlson  
+
+ASSERTION FAILED: wasRemoved in WebCore::RealtimeMediaSourceCenter::removeDevicesChangedObserver(DevicesChangedObserverToken)
+https://bugs.webkit.org/show_bug.cgi?id=171529
+
+
+Reviewed by Jer Noble.
+
+No new tests, fixes a crash in existing tests.
+
+* Modules/mediastream/MediaDevices.cpp:
+(WebCore::MediaDevices::MediaDevices): Use a weak ptr.
+
+* platform/mediastream/RealtimeMediaSourceCenter.cpp:
+* platform/mediastream/RealtimeMediaSourceCenter.cpp:
+(WebCore::observerMap):  Use a static hash map for observers because the
+source center can change at runtime.
+(WebCore::RealtimeMediaSourceCenter::addDevicesChangedObserver):
+(WebCore::RealtimeMediaSourceCenter::removeDevicesChangedObserver):
+(WebCore::RealtimeMediaSourceCenter::captureDevicesChanged):
+
 2017-05-15  Brent Fulgham  
 
 [iOS WK1] Do not try to dispatch messages to subframes if their documents have not been constructed yet.


Modified: trunk/Source/WebCore/Modules/mediastream/MediaDevices.cpp (216865 => 216866)

--- trunk/Source/WebCore/Modules/mediastream/MediaDevices.cpp	2017-05-15 18:14:36 UTC (rev 216865)
+++ trunk/Source/WebCore/Modules/mediastream/MediaDevices.cpp	2017-05-15 18:26:08 UTC (rev 216866)
@@ -48,9 +48,13 @@
 inline MediaDevices::MediaDevices(Document& document)
 : ContextDestructionObserver()
 , m_scheduledEventTimer(*this, ::scheduledEventTimerFired)
+, m_weakPtrFactory(this)
 {
-m_deviceChangedToken = RealtimeMediaSourceCenter::singleton().addDevicesChangedObserver([this]() {
+m_deviceChangedToken = RealtimeMediaSourceCenter::singleton().addDevicesChangedObserver([weakThis = createWeakPtr(), this]() {
 
+if (!weakThis)
+return;
+
 // FIXME: We should only dispatch an event if the user has been granted access to the type of
 // device that was added or removed.
 if (!m_scheduledEventTimer.isActive())


Modified: trunk/Source/WebCore/Modules/mediastream/MediaDevices.h (216865 => 216866)

--- trunk/Source/WebCore/Modules/mediastream/MediaDevices.h	2017-05-15 18:14:36 UTC (rev 216865)
+++ trunk/Source/WebCore/Modules/mediastream/MediaDevices.h	2017-05-15 18:26:08 UTC (rev 216866)
@@ -39,6 +39,7 @@
 #include "MediaTrackConstraints.h"
 #include "RealtimeMediaSourceCenter.h"
 #include "Timer.h"
+#include 
 
 namespace WebCore {
 
@@ -81,8 +82,11 @@
 void refEventTarget() override { ref(); }
 void derefEventTarget() override { deref(); }
 
+WeakPtr createWeakPtr() { return m_weakPtrFactory.createWeakPtr(); }
+
 Timer m_scheduledEventTimer;
 std::optional m_deviceChangedToken;
+WeakPtrFactory m_weakPtrFactory;
 };
 
 } // namespace WebCore


Modified: trunk/Source/WebCore/platform/mediastream/RealtimeMediaSourceCenter.cpp (216865 => 216866)

--- trunk/Source/WebCore/platform/mediastream/RealtimeMediaSourceCenter.cpp	2017-05-15 18:14:36 UTC (rev 216865)
+++ trunk/Source/WebCore/platform/mediastream/RealtimeMediaSourceCenter.cpp	2017-05-15 18:26:08 UTC (rev 216866)
@@ -1,6 +1,7 @@
 /*
  * Copyright (C) 2011 Ericsson AB. All rights reserved.
  * Copyright (C) 2012 Google Inc. All rights reserved.
+ * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -45,6 +46,12 @@
 return 

[webkit-changes] [216865] trunk/Source/WebInspectorUI

2017-05-15 Thread commit-queue
Title: [216865] trunk/Source/WebInspectorUI








Revision 216865
Author commit-qu...@webkit.org
Date 2017-05-15 11:14:36 -0700 (Mon, 15 May 2017)


Log Message
[GTK] Web Inspector: Add new GTK+ icons for Search icon of Quick Open dialog
https://bugs.webkit.org/show_bug.cgi?id=172110

Patch by Fujii Hironori  on 2017-05-15
Reviewed by Michael Catanzaro.

Add a free icon for the Web Inspector in GTK+.

* UserInterface/Images/gtk/Search.svg: Added.

Modified Paths

trunk/Source/WebInspectorUI/ChangeLog


Added Paths

trunk/Source/WebInspectorUI/UserInterface/Images/gtk/Search.svg




Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (216864 => 216865)

--- trunk/Source/WebInspectorUI/ChangeLog	2017-05-15 18:11:41 UTC (rev 216864)
+++ trunk/Source/WebInspectorUI/ChangeLog	2017-05-15 18:14:36 UTC (rev 216865)
@@ -1,5 +1,16 @@
 2017-05-15  Fujii Hironori  
 
+[GTK] Web Inspector: Add new GTK+ icons for Search icon of Quick Open dialog
+https://bugs.webkit.org/show_bug.cgi?id=172110
+
+Reviewed by Michael Catanzaro.
+
+Add a free icon for the Web Inspector in GTK+.
+
+* UserInterface/Images/gtk/Search.svg: Added.
+
+2017-05-15  Fujii Hironori  
+
 [GTK] Web Inspector: Add new GTK+ icons for Worker Scripts / Web Sockets
 https://bugs.webkit.org/show_bug.cgi?id=164138
 


Added: trunk/Source/WebInspectorUI/UserInterface/Images/gtk/Search.svg (0 => 216865)

--- trunk/Source/WebInspectorUI/UserInterface/Images/gtk/Search.svg	(rev 0)
+++ trunk/Source/WebInspectorUI/UserInterface/Images/gtk/Search.svg	2017-05-15 18:14:36 UTC (rev 216865)
@@ -0,0 +1,6 @@
+
+
+
+ 
+ 
+






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [216864] trunk/Source/WebInspectorUI

2017-05-15 Thread commit-queue
Title: [216864] trunk/Source/WebInspectorUI








Revision 216864
Author commit-qu...@webkit.org
Date 2017-05-15 11:11:41 -0700 (Mon, 15 May 2017)


Log Message
[GTK] Web Inspector: Add new GTK+ icons for Worker Scripts / Web Sockets
https://bugs.webkit.org/show_bug.cgi?id=164138

Patch by Fujii Hironori  on 2017-05-15
Reviewed by Michael Catanzaro.

Add more free icons for the Web Inspector in GTK+.

* UserInterface/Images/gtk/WorkerScript.png: Added.
* UserInterface/Images/gtk/workerscr...@2x.png: Added.
* UserInterface/Images/gtk/WorkerScriptLarge.png: Added.
* UserInterface/Images/gtk/workerscriptla...@2x.png: Added.
* UserInterface/Views/ResourceIcons.css:
(.script.worker-icon .icon):
(.large .script.worker-icon .icon):
(body:matches(.mac-platform, .windows-platform) .script.worker-icon .icon): Deleted.
(body:matches(.mac-platform, .windows-platform) .large .script.worker-icon .icon): Deleted.

Modified Paths

trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/UserInterface/Views/ResourceIcons.css


Added Paths

trunk/Source/WebInspectorUI/UserInterface/Images/gtk/WorkerScript.png
trunk/Source/WebInspectorUI/UserInterface/Images/gtk/workerscr...@2x.png
trunk/Source/WebInspectorUI/UserInterface/Images/gtk/WorkerScriptLarge.png
trunk/Source/WebInspectorUI/UserInterface/Images/gtk/workerscriptla...@2x.png




Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (216863 => 216864)

--- trunk/Source/WebInspectorUI/ChangeLog	2017-05-15 17:24:14 UTC (rev 216863)
+++ trunk/Source/WebInspectorUI/ChangeLog	2017-05-15 18:11:41 UTC (rev 216864)
@@ -1,3 +1,22 @@
+2017-05-15  Fujii Hironori  
+
+[GTK] Web Inspector: Add new GTK+ icons for Worker Scripts / Web Sockets
+https://bugs.webkit.org/show_bug.cgi?id=164138
+
+Reviewed by Michael Catanzaro.
+
+Add more free icons for the Web Inspector in GTK+.
+
+* UserInterface/Images/gtk/WorkerScript.png: Added.
+* UserInterface/Images/gtk/workerscr...@2x.png: Added.
+* UserInterface/Images/gtk/WorkerScriptLarge.png: Added.
+* UserInterface/Images/gtk/workerscriptla...@2x.png: Added.
+* UserInterface/Views/ResourceIcons.css:
+(.script.worker-icon .icon):
+(.large .script.worker-icon .icon):
+(body:matches(.mac-platform, .windows-platform) .script.worker-icon .icon): Deleted.
+(body:matches(.mac-platform, .windows-platform) .large .script.worker-icon .icon): Deleted.
+
 2017-05-11  Nikita Vasilyev  
 
 Web Inspector: RTL: "Elements > Styles - Rules" rule and media query headers should be left aligned


Added: trunk/Source/WebInspectorUI/UserInterface/Images/gtk/WorkerScript.png

(Binary files differ)

Index: trunk/Source/WebInspectorUI/UserInterface/Images/gtk/WorkerScript.png
===
--- trunk/Source/WebInspectorUI/UserInterface/Images/gtk/WorkerScript.png	2017-05-15 17:24:14 UTC (rev 216863)
+++ trunk/Source/WebInspectorUI/UserInterface/Images/gtk/WorkerScript.png	2017-05-15 18:11:41 UTC (rev 216864)
Property changes on: trunk/Source/WebInspectorUI/UserInterface/Images/gtk/WorkerScript.png
___

Added: svn:mime-type
+image/png
\ No newline at end of property

Added: trunk/Source/WebInspectorUI/UserInterface/Images/gtk/workerscr...@2x.png

(Binary files differ)

Index: trunk/Source/WebInspectorUI/UserInterface/Images/gtk/workerscr...@2x.png
===
--- trunk/Source/WebInspectorUI/UserInterface/Images/gtk/workerscr...@2x.png	2017-05-15 17:24:14 UTC (rev 216863)
+++ trunk/Source/WebInspectorUI/UserInterface/Images/gtk/workerscr...@2x.png	2017-05-15 18:11:41 UTC (rev 216864)
Property changes on: trunk/Source/WebInspectorUI/UserInterface/Images/gtk/workerscr...@2x.png
___

Added: svn:mime-type
+image/png
\ No newline at end of property

Added: trunk/Source/WebInspectorUI/UserInterface/Images/gtk/WorkerScriptLarge.png

(Binary files differ)

Index: trunk/Source/WebInspectorUI/UserInterface/Images/gtk/WorkerScriptLarge.png
===
--- trunk/Source/WebInspectorUI/UserInterface/Images/gtk/WorkerScriptLarge.png	2017-05-15 17:24:14 UTC (rev 216863)
+++ trunk/Source/WebInspectorUI/UserInterface/Images/gtk/WorkerScriptLarge.png	2017-05-15 18:11:41 UTC (rev 216864)
Property changes on: trunk/Source/WebInspectorUI/UserInterface/Images/gtk/WorkerScriptLarge.png
___

Added: svn:mime-type
+image/png
\ No newline at end of property

Added: trunk/Source/WebInspectorUI/UserInterface/Images/gtk/workerscriptla...@2x.png

(Binary files differ)

Index: trunk/Source/WebInspectorUI/UserInterface/Images/gtk/workerscriptla...@2x.png

[webkit-changes] [216863] trunk/Source/WebCore

2017-05-15 Thread bfulgham
Title: [216863] trunk/Source/WebCore








Revision 216863
Author bfulg...@apple.com
Date 2017-05-15 10:24:14 -0700 (Mon, 15 May 2017)


Log Message
[iOS WK1] Do not try to dispatch messages to subframes if their documents have not been constructed yet.
https://bugs.webkit.org/show_bug.cgi?id=172059


Reviewed by Zalan Bujtas.

On iOS WK1 we can end up in an inconsistent state, where
1. The web thread is inside a newly-injected iframe's document's constructor and
2. waiting on a delegate callback on the main thread
while the main thread
(a) Evaluates arbitrary _javascript_ that modifies storage which
(b) Triggers an event dispatch.
 
* storage/StorageEventDispatcher.cpp:
(WebCore::StorageEventDispatcher::dispatchSessionStorageEvents): If the sub-frame's document
is in an inconsistent state, skip it.
(WebCore::StorageEventDispatcher::dispatchLocalStorageEvents): Ditto.
(WebCore::StorageEventDispatcher::dispatchSessionStorageEventsToFrames): Ditto.
(WebCore::StorageEventDispatcher::dispatchLocalStorageEventsToFrames): Ditto.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/storage/StorageEventDispatcher.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (216862 => 216863)

--- trunk/Source/WebCore/ChangeLog	2017-05-15 15:26:58 UTC (rev 216862)
+++ trunk/Source/WebCore/ChangeLog	2017-05-15 17:24:14 UTC (rev 216863)
@@ -1,3 +1,25 @@
+2017-05-15  Brent Fulgham  
+
+[iOS WK1] Do not try to dispatch messages to subframes if their documents have not been constructed yet.
+https://bugs.webkit.org/show_bug.cgi?id=172059
+
+
+Reviewed by Zalan Bujtas.
+
+On iOS WK1 we can end up in an inconsistent state, where
+1. The web thread is inside a newly-injected iframe's document's constructor and
+2. waiting on a delegate callback on the main thread
+while the main thread
+(a) Evaluates arbitrary _javascript_ that modifies storage which
+(b) Triggers an event dispatch.
+ 
+* storage/StorageEventDispatcher.cpp:
+(WebCore::StorageEventDispatcher::dispatchSessionStorageEvents): If the sub-frame's document
+is in an inconsistent state, skip it.
+(WebCore::StorageEventDispatcher::dispatchLocalStorageEvents): Ditto.
+(WebCore::StorageEventDispatcher::dispatchSessionStorageEventsToFrames): Ditto.
+(WebCore::StorageEventDispatcher::dispatchLocalStorageEventsToFrames): Ditto.
+
 2017-05-15  Zalan Bujtas  
 
 Simple line layout: Leading whitespace followed by a  produces an extra linebreak.


Modified: trunk/Source/WebCore/storage/StorageEventDispatcher.cpp (216862 => 216863)

--- trunk/Source/WebCore/storage/StorageEventDispatcher.cpp	2017-05-15 15:26:58 UTC (rev 216862)
+++ trunk/Source/WebCore/storage/StorageEventDispatcher.cpp	2017-05-15 17:24:14 UTC (rev 216863)
@@ -50,6 +50,8 @@
 
 // Send events only to our page.
 for (Frame* frame = >mainFrame(); frame; frame = frame->tree().traverseNext()) {
+if (!frame->document())
+continue;
 if (sourceFrame != frame && frame->document()->securityOrigin().equal(securityOrigin.securityOrigin().ptr()))
 frames.append(frame);
 }
@@ -68,6 +70,8 @@
 // Send events to every page.
 for (auto& pageInGroup : page->group().pages()) {
 for (Frame* frame = >mainFrame(); frame; frame = frame->tree().traverseNext()) {
+if (!frame->document())
+continue;
 if (sourceFrame != frame && frame->document()->securityOrigin().equal(securityOrigin.securityOrigin().ptr()))
 frames.append(frame);
 }
@@ -82,6 +86,8 @@
 
 for (auto& frame : frames) {
 auto result = frame->document()->domWindow()->sessionStorage();
+if (!frame->document())
+continue;
 if (!result.hasException())
 frame->document()->enqueueWindowEvent(StorageEvent::create(eventNames().storageEvent, key, oldValue, newValue, url, result.releaseReturnValue()));
 }
@@ -94,6 +100,8 @@
 
 for (auto& frame : frames) {
 auto result = frame->document()->domWindow()->localStorage();
+if (!frame->document())
+continue;
 if (!result.hasException())
 frame->document()->enqueueWindowEvent(StorageEvent::create(eventNames().storageEvent, key, oldValue, newValue, url, result.releaseReturnValue()));
 }






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [216861] trunk

2017-05-15 Thread zalan
Title: [216861] trunk








Revision 216861
Author za...@apple.com
Date 2017-05-15 07:21:54 -0700 (Mon, 15 May 2017)


Log Message
Simple line layout: Leading whitespace followed by a  produces an extra linebreak.
https://bugs.webkit.org/show_bug.cgi?id=172076

Reviewed by Antti Koivisto.

Source/WebCore:

When the collapsed whitespace does not fit the line, we need to push it to the next line
so that we can decide whether any soft/hard linebreak should be skipped (to avoid double line breaks) or not.

Test: fast/text/simple-line-layout-leading-whitespace-with-soft-hard-linebreak.html

* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::consumeLineBreakIfNeeded): special handling 
(WebCore::SimpleLineLayout::firstFragment): Now we need to deal with leading collapsed whitespace.
(WebCore::SimpleLineLayout::createLineRuns): We need to push even the collapsed whitespace to the next line.

LayoutTests:

* fast/text/simple-line-layout-leading-whitespace-with-soft-hard-linebreak-expected.html: Added.
* fast/text/simple-line-layout-leading-whitespace-with-soft-hard-linebreak.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/rendering/SimpleLineLayout.cpp


Added Paths

trunk/LayoutTests/fast/text/simple-line-layout-leading-whitespace-with-soft-hard-linebreak-expected.html
trunk/LayoutTests/fast/text/simple-line-layout-leading-whitespace-with-soft-hard-linebreak.html




Diff

Modified: trunk/LayoutTests/ChangeLog (216860 => 216861)

--- trunk/LayoutTests/ChangeLog	2017-05-15 09:14:25 UTC (rev 216860)
+++ trunk/LayoutTests/ChangeLog	2017-05-15 14:21:54 UTC (rev 216861)
@@ -1,3 +1,13 @@
+2017-05-15  Zalan Bujtas  
+
+Simple line layout: Leading whitespace followed by a  produces an extra linebreak.
+https://bugs.webkit.org/show_bug.cgi?id=172076
+
+Reviewed by Antti Koivisto.
+
+* fast/text/simple-line-layout-leading-whitespace-with-soft-hard-linebreak-expected.html: Added.
+* fast/text/simple-line-layout-leading-whitespace-with-soft-hard-linebreak.html: Added.
+
 2017-05-15  Nael Ouedraogo  
 
 Invalid MediaSource duration value should throw TyperError instead of InvalidStateError


Added: trunk/LayoutTests/fast/text/simple-line-layout-leading-whitespace-with-soft-hard-linebreak-expected.html (0 => 216861)

--- trunk/LayoutTests/fast/text/simple-line-layout-leading-whitespace-with-soft-hard-linebreak-expected.html	(rev 0)
+++ trunk/LayoutTests/fast/text/simple-line-layout-leading-whitespace-with-soft-hard-linebreak-expected.html	2017-05-15 14:21:54 UTC (rev 216861)
@@ -0,0 +1,46 @@
+
+
+
+This tests that leading whitespace followed by soft/hard linebreaks.
+
+div {
+  width: 100px;
+  font-size: 13px;
+}
+
+
+if (window.internals)
+internals.settings.setSimpleLineLayoutEnabled(false);
+
+
+
+foobarfoobar foobi foobar
+foobarfoobar foobi 
+foobar
+foobarfoobar foobi 
+ foobar
+
+
+
+foobarfoobar foobi foobar
+foobarfoobar foobi 
+foobar
+foobarfoobar foobi 
+ foobar
+
+
+foobarfoobar foobi foobar
+foobarfoobar foobi 
+foobar
+foobarfoobar foobi 
+ foobar
+
+
+foobarfoobar foobi foobar
+foobarfoobar foobi 
+foobar
+foobarfoobar foobi 
+ foobar
+
+
+


Added: trunk/LayoutTests/fast/text/simple-line-layout-leading-whitespace-with-soft-hard-linebreak.html (0 => 216861)

--- trunk/LayoutTests/fast/text/simple-line-layout-leading-whitespace-with-soft-hard-linebreak.html	(rev 0)
+++ trunk/LayoutTests/fast/text/simple-line-layout-leading-whitespace-with-soft-hard-linebreak.html	2017-05-15 14:21:54 UTC (rev 216861)
@@ -0,0 +1,42 @@
+
+
+
+This tests that leading whitespace followed by soft/hard linebreaks.
+
+div {
+  width: 100px;
+  font-size: 13px;
+}
+
+
+
+foobarfoobar foobi foobar
+foobarfoobar foobi 
+foobar
+foobarfoobar foobi 
+ foobar
+
+
+
+foobarfoobar foobi foobar
+foobarfoobar foobi 
+foobar
+foobarfoobar foobi 
+ foobar
+
+
+foobarfoobar foobi foobar
+foobarfoobar foobi 
+foobar
+foobarfoobar foobi 
+ foobar
+
+
+foobarfoobar foobi foobar
+foobarfoobar foobi 
+foobar
+foobarfoobar foobi 
+ foobar
+
+
+


Modified: trunk/Source/WebCore/ChangeLog (216860 => 216861)

--- trunk/Source/WebCore/ChangeLog	2017-05-15 09:14:25 UTC (rev 216860)
+++ trunk/Source/WebCore/ChangeLog	2017-05-15 14:21:54 UTC (rev 216861)
@@ -1,3 +1,20 @@
+2017-05-15  Zalan Bujtas  
+
+Simple line layout: Leading whitespace followed by a  produces an extra linebreak.
+https://bugs.webkit.org/show_bug.cgi?id=172076
+
+Reviewed by Antti Koivisto.
+
+When the collapsed whitespace does not fit the line, we need to push it to the next line
+so that we can decide whether any soft/hard linebreak should be skipped (to avoid double line breaks) or not.
+
+Test: fast/text/simple-line-layout-leading-whitespace-with-soft-hard-linebreak.html
+
+* 

[webkit-changes] [216858] trunk/Websites/webkit.org

2017-05-15 Thread jcraig
Title: [216858] trunk/Websites/webkit.org








Revision 216858
Author jcr...@apple.com
Date 2017-05-15 00:01:51 -0700 (Mon, 15 May 2017)


Log Message
2017-05-14  James Craig  

Upload poster images and working captioned video
https://bugs.webkit.org/show_bug.cgi?id=172102

Unreviewed. More resources for prefers-reduced-motion post.

* blog-files/prefers-reduced-motion/axi.htm: Added.
* blog-files/prefers-reduced-motion/axi.png: Removed.
* blog-files/prefers-reduced-motion/posters: Added.
* blog-files/prefers-reduced-motion/posters/apple_env_load.jpg: Added.
* blog-files/prefers-reduced-motion/posters/apple_env_planeshift.jpg: Added.
* blog-files/prefers-reduced-motion/posters/apple_ios10.jpg: Added.
* blog-files/prefers-reduced-motion/posters/apple_shoot.jpg: Added.
* blog-files/prefers-reduced-motion/posters/apple_shoot_reduced.jpg: Added.
* blog-files/prefers-reduced-motion/posters/apple_sierra.jpg: Added.
* blog-files/prefers-reduced-motion/posters/apple_sierra_reduced.jpg: Added.
* blog-files/prefers-reduced-motion/posters/axi.jpg: Added.
* blog-files/prefers-reduced-motion/posters/viljami.jpg: Added.
* blog-files/prefers-reduced-motion/prm.htm: Link to axi.htm video demo.

Modified Paths

trunk/Websites/webkit.org/ChangeLog
trunk/Websites/webkit.org/blog-files/prefers-reduced-motion/prm.htm


Added Paths

trunk/Websites/webkit.org/blog-files/prefers-reduced-motion/axi.htm
trunk/Websites/webkit.org/blog-files/prefers-reduced-motion/posters/
trunk/Websites/webkit.org/blog-files/prefers-reduced-motion/posters/apple_env_load.jpg
trunk/Websites/webkit.org/blog-files/prefers-reduced-motion/posters/apple_env_planeshift.jpg
trunk/Websites/webkit.org/blog-files/prefers-reduced-motion/posters/apple_ios10.jpg
trunk/Websites/webkit.org/blog-files/prefers-reduced-motion/posters/apple_shoot.jpg
trunk/Websites/webkit.org/blog-files/prefers-reduced-motion/posters/apple_shoot_reduced.jpg
trunk/Websites/webkit.org/blog-files/prefers-reduced-motion/posters/apple_sierra.jpg
trunk/Websites/webkit.org/blog-files/prefers-reduced-motion/posters/apple_sierra_reduced.jpg
trunk/Websites/webkit.org/blog-files/prefers-reduced-motion/posters/axi.jpg
trunk/Websites/webkit.org/blog-files/prefers-reduced-motion/posters/viljami.jpg


Removed Paths

trunk/Websites/webkit.org/blog-files/prefers-reduced-motion/axi.png




Diff

Modified: trunk/Websites/webkit.org/ChangeLog (216857 => 216858)

--- trunk/Websites/webkit.org/ChangeLog	2017-05-15 06:20:06 UTC (rev 216857)
+++ trunk/Websites/webkit.org/ChangeLog	2017-05-15 07:01:51 UTC (rev 216858)
@@ -1,5 +1,26 @@
 2017-05-14  James Craig  
 
+Upload poster images and working captioned video
+https://bugs.webkit.org/show_bug.cgi?id=172102
+
+Unreviewed. More resources for prefers-reduced-motion post.
+
+* blog-files/prefers-reduced-motion/axi.htm: Added.
+* blog-files/prefers-reduced-motion/axi.png: Removed.
+* blog-files/prefers-reduced-motion/posters: Added.
+* blog-files/prefers-reduced-motion/posters/apple_env_load.jpg: Added.
+* blog-files/prefers-reduced-motion/posters/apple_env_planeshift.jpg: Added.
+* blog-files/prefers-reduced-motion/posters/apple_ios10.jpg: Added.
+* blog-files/prefers-reduced-motion/posters/apple_shoot.jpg: Added.
+* blog-files/prefers-reduced-motion/posters/apple_shoot_reduced.jpg: Added.
+* blog-files/prefers-reduced-motion/posters/apple_sierra.jpg: Added.
+* blog-files/prefers-reduced-motion/posters/apple_sierra_reduced.jpg: Added.
+* blog-files/prefers-reduced-motion/posters/axi.jpg: Added.
+* blog-files/prefers-reduced-motion/posters/viljami.jpg: Added.
+* blog-files/prefers-reduced-motion/prm.htm: Link to axi.htm video demo.
+
+2017-05-14  James Craig  
+
 AX: All the articles on the WebKit blog are called "Clickable Link" by VoiceOver
 https://bugs.webkit.org/show_bug.cgi?id=172096
 


Added: trunk/Websites/webkit.org/blog-files/prefers-reduced-motion/axi.htm (0 => 216858)

--- trunk/Websites/webkit.org/blog-files/prefers-reduced-motion/axi.htm	(rev 0)
+++ trunk/Websites/webkit.org/blog-files/prefers-reduced-motion/axi.htm	2017-05-15 07:01:51 UTC (rev 216858)
@@ -0,0 +1,25 @@
+
+
+
+Video: Using prefers-reduced-motion with the Accessibility Inspector
+
+
+html {
+	font: 100% sans-serif;
+	font: -apple-system-body;
+}
+body {
+	font-size: 0.8em;
+	line-height: 1.1;
+}
+
+
+
+
+
+
+
+
+Back to the .
+
+
\ No newline at end of file


Deleted: trunk/Websites/webkit.org/blog-files/prefers-reduced-motion/axi.png

(Binary files differ)


Added: trunk/Websites/webkit.org/blog-files/prefers-reduced-motion/posters/apple_env_load.jpg

(Binary files differ)

Index: 

[webkit-changes] [216857] trunk

2017-05-15 Thread pvollan
Title: [216857] trunk








Revision 216857
Author pvol...@apple.com
Date 2017-05-14 23:20:06 -0700 (Sun, 14 May 2017)


Log Message
[Win] fast/cookies/local-file-can-set-cookies.html is flaky.
https://bugs.webkit.org/show_bug.cgi?id=172071

Reviewed by Alexey Proskuryakov.

Source/WebKit/win:

We need to delete all cookies after each test.

* Interfaces/IWebPreferencesPrivate.idl:
* WebPreferences.cpp:
(WebPreferences::linkPreloadEnabled):
(WebPreferences::clearNetworkLoaderSession):
* WebPreferences.h:

Tools:

* DumpRenderTree/win/DumpRenderTree.cpp:
(resetWebPreferencesToConsistentValues):

Modified Paths

trunk/Source/WebKit/win/ChangeLog
trunk/Source/WebKit/win/Interfaces/IWebPreferencesPrivate.idl
trunk/Source/WebKit/win/WebPreferences.cpp
trunk/Source/WebKit/win/WebPreferences.h
trunk/Tools/ChangeLog
trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp




Diff

Modified: trunk/Source/WebKit/win/ChangeLog (216856 => 216857)

--- trunk/Source/WebKit/win/ChangeLog	2017-05-15 05:51:19 UTC (rev 216856)
+++ trunk/Source/WebKit/win/ChangeLog	2017-05-15 06:20:06 UTC (rev 216857)
@@ -1,3 +1,18 @@
+2017-05-14  Per Arne Vollan  
+
+[Win] fast/cookies/local-file-can-set-cookies.html is flaky.
+https://bugs.webkit.org/show_bug.cgi?id=172071
+
+Reviewed by Alexey Proskuryakov.
+
+We need to delete all cookies after each test.
+
+* Interfaces/IWebPreferencesPrivate.idl:
+* WebPreferences.cpp:
+(WebPreferences::linkPreloadEnabled):
+(WebPreferences::clearNetworkLoaderSession):
+* WebPreferences.h:
+
 2017-05-13  Chris Dumez  
 
 Stop using RefPtr::release()


Modified: trunk/Source/WebKit/win/Interfaces/IWebPreferencesPrivate.idl (216856 => 216857)

--- trunk/Source/WebKit/win/Interfaces/IWebPreferencesPrivate.idl	2017-05-15 05:51:19 UTC (rev 216856)
+++ trunk/Source/WebKit/win/Interfaces/IWebPreferencesPrivate.idl	2017-05-15 06:20:06 UTC (rev 216857)
@@ -197,4 +197,5 @@
 HRESULT setResourceTimingEnabled([in] BOOL enabled);
 HRESULT linkPreloadEnabled([out, retval] BOOL*);
 HRESULT setLinkPreloadEnabled([in] BOOL enabled);
+HRESULT clearNetworkLoaderSession();
 }


Modified: trunk/Source/WebKit/win/WebPreferences.cpp (216856 => 216857)

--- trunk/Source/WebKit/win/WebPreferences.cpp	2017-05-15 05:51:19 UTC (rev 216856)
+++ trunk/Source/WebKit/win/WebPreferences.cpp	2017-05-15 06:20:06 UTC (rev 216857)
@@ -41,6 +41,8 @@
 #include 
 #include 
 #include 
+#include 
+#include 
 #include 
 #include 
 #include 
@@ -2011,6 +2013,12 @@
 return S_OK;
 }
 
+HRESULT WebPreferences::clearNetworkLoaderSession()
+{
+WebCore::deleteAllCookies(NetworkStorageSession::defaultStorageSession());
+return S_OK;
+}
+
 HRESULT WebPreferences::setApplicationId(BSTR applicationId)
 {
 m_applicationId = String(applicationId).createCFString();


Modified: trunk/Source/WebKit/win/WebPreferences.h (216856 => 216857)

--- trunk/Source/WebKit/win/WebPreferences.h	2017-05-15 05:51:19 UTC (rev 216856)
+++ trunk/Source/WebKit/win/WebPreferences.h	2017-05-15 06:20:06 UTC (rev 216857)
@@ -251,6 +251,7 @@
 virtual HRESULT STDMETHODCALLTYPE setResourceTimingEnabled(BOOL);
 virtual HRESULT STDMETHODCALLTYPE linkPreloadEnabled(_Out_ BOOL*);
 virtual HRESULT STDMETHODCALLTYPE setLinkPreloadEnabled(BOOL);
+virtual HRESULT STDMETHODCALLTYPE clearNetworkLoaderSession();
 
 // WebPreferences
 


Modified: trunk/Tools/ChangeLog (216856 => 216857)

--- trunk/Tools/ChangeLog	2017-05-15 05:51:19 UTC (rev 216856)
+++ trunk/Tools/ChangeLog	2017-05-15 06:20:06 UTC (rev 216857)
@@ -1,3 +1,13 @@
+2017-05-14  Per Arne Vollan  
+
+[Win] fast/cookies/local-file-can-set-cookies.html is flaky.
+https://bugs.webkit.org/show_bug.cgi?id=172071
+
+Reviewed by Alexey Proskuryakov.
+
+* DumpRenderTree/win/DumpRenderTree.cpp:
+(resetWebPreferencesToConsistentValues):
+
 2017-05-14  Chris Dumez  
 
 Drop PassRefPtr class from WTF


Modified: trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp (216856 => 216857)

--- trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp	2017-05-15 05:51:19 UTC (rev 216856)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp	2017-05-15 06:20:06 UTC (rev 216857)
@@ -880,6 +880,7 @@
 prefsPrivate4->setShadowDOMEnabled(TRUE);
 prefsPrivate4->setCustomElementsEnabled(TRUE);
 prefsPrivate4->setModernMediaControlsEnabled(FALSE);
+prefsPrivate4->clearNetworkLoaderSession();
 
 setAlwaysAcceptCookies(false);
 }






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes