Diff
Modified: branches/safari-610-branch/LayoutTests/ChangeLog (267671 => 267672)
--- branches/safari-610-branch/LayoutTests/ChangeLog 2020-09-27 20:00:05 UTC (rev 267671)
+++ branches/safari-610-branch/LayoutTests/ChangeLog 2020-09-27 20:00:09 UTC (rev 267672)
@@ -1,3 +1,47 @@
+2020-09-27 Alan Coon <[email protected]>
+
+ Cherry-pick r266611. rdar://problem/69594191
+
+ MediaRecorder timeslice parameter causing internal error on longer videos
+ https://bugs.webkit.org/show_bug.cgi?id=216076
+ <rdar://problem/68209422>
+
+ Reviewed by Eric Carlson.
+
+ Source/WebCore:
+
+ Test: http/wpt/fetch/blob-range.html
+
+ * platform/network/BlobResourceHandle.cpp:
+ (WebCore::BlobResourceHandle::readDataAsync):
+
+ Source/WebKit:
+
+ Test: http/wpt/fetch/blob-range.html
+
+ * NetworkProcess/NetworkDataTaskBlob.cpp:
+ (WebKit::NetworkDataTaskBlob::readData):
+ readData can be re-entrant so we need to reset m_currentItemReadSize before consuming data.
+
+ LayoutTests:
+
+ * http/wpt/fetch/blob-range-expected.txt: Added.
+ * http/wpt/fetch/blob-range.html: Added.
+
+
+ git-svn-id: https://svn.webkit.org/repository/webkit/trunk@266611 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+ 2020-09-04 Youenn Fablet <[email protected]>
+
+ MediaRecorder timeslice parameter causing internal error on longer videos
+ https://bugs.webkit.org/show_bug.cgi?id=216076
+ <rdar://problem/68209422>
+
+ Reviewed by Eric Carlson.
+
+ * http/wpt/fetch/blob-range-expected.txt: Added.
+ * http/wpt/fetch/blob-range.html: Added.
+
2020-09-25 Alan Coon <[email protected]>
Cherry-pick r267067. rdar://problem/69586680
Added: branches/safari-610-branch/LayoutTests/http/wpt/fetch/blob-range-expected.txt (0 => 267672)
--- branches/safari-610-branch/LayoutTests/http/wpt/fetch/blob-range-expected.txt (rev 0)
+++ branches/safari-610-branch/LayoutTests/http/wpt/fetch/blob-range-expected.txt 2020-09-27 20:00:09 UTC (rev 267672)
@@ -0,0 +1,3 @@
+
+PASS Do blob range requests
+
Added: branches/safari-610-branch/LayoutTests/http/wpt/fetch/blob-range.html (0 => 267672)
--- branches/safari-610-branch/LayoutTests/http/wpt/fetch/blob-range.html (rev 0)
+++ branches/safari-610-branch/LayoutTests/http/wpt/fetch/blob-range.html 2020-09-27 20:00:09 UTC (rev 267672)
@@ -0,0 +1,32 @@
+<!doctype html>
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>Blob and range request</title>
+ <meta name="help" href=""
+ <script src=""
+ <script src=""
+ </head>
+ <body>
+ <script>
+
+promise_test(async () => {
+ const blobSize = [990043, 804394, 1488722, 940287, 796558, 1934954, 951421, 1694735, 416322, 466642];
+ const blobs = blobSize.map(size => new Blob([new ArrayBuffer(size)]));
+ const blob = new Blob(blobs, { type: 'video/mp4' });
+ const url = ""
+
+ let request = new Request(url, { headers : { "Range" : "bytes=0-1" } });
+ await fetch(request);
+
+ request = new Request(url, { headers : { "Range" : "bytes=0-62470047" } });
+ await fetch(request);
+
+ request = new Request(url, { headers : { "Range" : "bytes=3257139-7195852" } });
+ const response = await fetch(request);
+ assert_equals(response.status, 206);
+ await response.arrayBuffer();
+}, "Do blob range requests");
+ </script>
+ </body>
+</html>
Modified: branches/safari-610-branch/Source/WebCore/ChangeLog (267671 => 267672)
--- branches/safari-610-branch/Source/WebCore/ChangeLog 2020-09-27 20:00:05 UTC (rev 267671)
+++ branches/safari-610-branch/Source/WebCore/ChangeLog 2020-09-27 20:00:09 UTC (rev 267672)
@@ -1,5 +1,51 @@
2020-09-27 Alan Coon <[email protected]>
+ Cherry-pick r266611. rdar://problem/69594191
+
+ MediaRecorder timeslice parameter causing internal error on longer videos
+ https://bugs.webkit.org/show_bug.cgi?id=216076
+ <rdar://problem/68209422>
+
+ Reviewed by Eric Carlson.
+
+ Source/WebCore:
+
+ Test: http/wpt/fetch/blob-range.html
+
+ * platform/network/BlobResourceHandle.cpp:
+ (WebCore::BlobResourceHandle::readDataAsync):
+
+ Source/WebKit:
+
+ Test: http/wpt/fetch/blob-range.html
+
+ * NetworkProcess/NetworkDataTaskBlob.cpp:
+ (WebKit::NetworkDataTaskBlob::readData):
+ readData can be re-entrant so we need to reset m_currentItemReadSize before consuming data.
+
+ LayoutTests:
+
+ * http/wpt/fetch/blob-range-expected.txt: Added.
+ * http/wpt/fetch/blob-range.html: Added.
+
+
+ git-svn-id: https://svn.webkit.org/repository/webkit/trunk@266611 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+ 2020-09-04 Youenn Fablet <[email protected]>
+
+ MediaRecorder timeslice parameter causing internal error on longer videos
+ https://bugs.webkit.org/show_bug.cgi?id=216076
+ <rdar://problem/68209422>
+
+ Reviewed by Eric Carlson.
+
+ Test: http/wpt/fetch/blob-range.html
+
+ * platform/network/BlobResourceHandle.cpp:
+ (WebCore::BlobResourceHandle::readDataAsync):
+
+2020-09-27 Alan Coon <[email protected]>
+
Cherry-pick r266312. rdar://problem/69594218
[macOS] AirPlay device name is wrong when playing to multiple devices
Modified: branches/safari-610-branch/Source/WebCore/platform/network/BlobResourceHandle.cpp (267671 => 267672)
--- branches/safari-610-branch/Source/WebCore/platform/network/BlobResourceHandle.cpp 2020-09-27 20:00:05 UTC (rev 267671)
+++ branches/safari-610-branch/Source/WebCore/platform/network/BlobResourceHandle.cpp 2020-09-27 20:00:09 UTC (rev 267672)
@@ -456,10 +456,14 @@
Ref<BlobResourceHandle> protectedThis(*this);
long long bytesToRead = item.length() - m_currentItemReadSize;
+ ASSERT(bytesToRead >= 0);
if (bytesToRead > m_totalRemainingSize)
bytesToRead = m_totalRemainingSize;
- consumeData(reinterpret_cast<const char*>(item.data().data()->data()) + item.offset() + m_currentItemReadSize, static_cast<int>(bytesToRead));
+
+ auto* data = "" char*>(item.data().data()->data()) + item.offset() + m_currentItemReadSize;
m_currentItemReadSize = 0;
+
+ consumeData(data, static_cast<int>(bytesToRead));
}
void BlobResourceHandle::readFileAsync(const BlobDataItem& item)
Modified: branches/safari-610-branch/Source/WebKit/ChangeLog (267671 => 267672)
--- branches/safari-610-branch/Source/WebKit/ChangeLog 2020-09-27 20:00:05 UTC (rev 267671)
+++ branches/safari-610-branch/Source/WebKit/ChangeLog 2020-09-27 20:00:09 UTC (rev 267672)
@@ -1,5 +1,52 @@
2020-09-27 Alan Coon <[email protected]>
+ Cherry-pick r266611. rdar://problem/69594191
+
+ MediaRecorder timeslice parameter causing internal error on longer videos
+ https://bugs.webkit.org/show_bug.cgi?id=216076
+ <rdar://problem/68209422>
+
+ Reviewed by Eric Carlson.
+
+ Source/WebCore:
+
+ Test: http/wpt/fetch/blob-range.html
+
+ * platform/network/BlobResourceHandle.cpp:
+ (WebCore::BlobResourceHandle::readDataAsync):
+
+ Source/WebKit:
+
+ Test: http/wpt/fetch/blob-range.html
+
+ * NetworkProcess/NetworkDataTaskBlob.cpp:
+ (WebKit::NetworkDataTaskBlob::readData):
+ readData can be re-entrant so we need to reset m_currentItemReadSize before consuming data.
+
+ LayoutTests:
+
+ * http/wpt/fetch/blob-range-expected.txt: Added.
+ * http/wpt/fetch/blob-range.html: Added.
+
+
+ git-svn-id: https://svn.webkit.org/repository/webkit/trunk@266611 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+ 2020-09-04 Youenn Fablet <[email protected]>
+
+ MediaRecorder timeslice parameter causing internal error on longer videos
+ https://bugs.webkit.org/show_bug.cgi?id=216076
+ <rdar://problem/68209422>
+
+ Reviewed by Eric Carlson.
+
+ Test: http/wpt/fetch/blob-range.html
+
+ * NetworkProcess/NetworkDataTaskBlob.cpp:
+ (WebKit::NetworkDataTaskBlob::readData):
+ readData can be re-entrant so we need to reset m_currentItemReadSize before consuming data.
+
+2020-09-27 Alan Coon <[email protected]>
+
Cherry-pick r265977. rdar://problem/69594018
Could not find module 'WebKit' for target 'armv7-apple-ios'
Modified: branches/safari-610-branch/Source/WebKit/NetworkProcess/NetworkDataTaskBlob.cpp (267671 => 267672)
--- branches/safari-610-branch/Source/WebKit/NetworkProcess/NetworkDataTaskBlob.cpp 2020-09-27 20:00:05 UTC (rev 267671)
+++ branches/safari-610-branch/Source/WebKit/NetworkProcess/NetworkDataTaskBlob.cpp 2020-09-27 20:00:09 UTC (rev 267672)
@@ -340,10 +340,14 @@
ASSERT(item.data().data());
long long bytesToRead = item.length() - m_currentItemReadSize;
+ ASSERT(bytesToRead >= 0);
if (bytesToRead > m_totalRemainingSize)
bytesToRead = m_totalRemainingSize;
- consumeData(reinterpret_cast<const char*>(item.data().data()->data()) + item.offset() + m_currentItemReadSize, static_cast<int>(bytesToRead));
+
+ auto* data = "" char*>(item.data().data()->data()) + item.offset() + m_currentItemReadSize;
m_currentItemReadSize = 0;
+
+ consumeData(data, static_cast<int>(bytesToRead));
}
void NetworkDataTaskBlob::readFile(const BlobDataItem& item)