WebKit Bugzilla
Attachment 358532 Details for
Bug 193213
: Fix Resource Timing buffer edge cases for WPT
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-193213-20190107161747.patch (text/plain), 2.63 KB, created by
cvazac
on 2019-01-07 14:17:49 PST
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
cvazac
Created:
2019-01-07 14:17:49 PST
Size:
2.63 KB
patch
obsolete
>Subversion Revision: 239680 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index 3b718d102b27c05fb479747b9368f58f924e93e2..3d227a81b7b1f7a9f5c178e559643bd2b877a3d5 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,22 @@ >+2019-01-07 Charles Vazac <cvazac@akamai.com> >+ >+ Fix Resource Timing buffer edge cases for WPT >+ https://bugs.webkit.org/show_bug.cgi?id=193213 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ The following WPTs now pass (had been failing [1]): >+ buffer-full-add-entries-during-callback-that-drop.html >+ buffer-full-add-then-clear.html >+ buffer-full-decrease-buffer-during-callback.html >+ buffer-full-then-increased.html >+ buffer-full-when-populate-entries.html >+ >+ [1] https://wpt.fyi/results/resource-timing?label=experimental >+ >+ * page/Performance.cpp: >+ (WebCore::Performance::resourceTimingBufferFullTimerFired): >+ > 2019-01-07 Zalan Bujtas <zalan@apple.com> > > [LFC][BFC] Margin collapsing should not be limited to in-flow non-replaced boxes. >diff --git a/Source/WebCore/page/Performance.cpp b/Source/WebCore/page/Performance.cpp >index d51b26d880ec895d7d699edfbcaba2e65a8465a5..a1cada98368fae8dde4489b8634067432e6d1f23 100644 >--- a/Source/WebCore/page/Performance.cpp >+++ b/Source/WebCore/page/Performance.cpp >@@ -212,11 +212,15 @@ bool Performance::isResourceTimingBufferFull() const > void Performance::resourceTimingBufferFullTimerFired() > { > while (!m_backupResourceTimingBuffer.isEmpty()) { >+ auto beforeCount = m_backupResourceTimingBuffer.size(); >+ > auto backupBuffer = WTFMove(m_backupResourceTimingBuffer); > ASSERT(m_backupResourceTimingBuffer.isEmpty()); > >- m_resourceTimingBufferFullFlag = true; >- dispatchEvent(Event::create(eventNames().resourcetimingbufferfullEvent, Event::CanBubble::No, Event::IsCancelable::No)); >+ if (isResourceTimingBufferFull()) { >+ m_resourceTimingBufferFullFlag = true; >+ dispatchEvent(Event::create(eventNames().resourcetimingbufferfullEvent, Event::CanBubble::No, Event::IsCancelable::No)); >+ } > > if (m_resourceTimingBufferFullFlag) { > for (auto& entry : backupBuffer) >@@ -239,6 +243,13 @@ void Performance::resourceTimingBufferFullTimerFired() > } else > m_backupResourceTimingBuffer.append(entry.copyRef()); > } >+ >+ auto afterCount = m_backupResourceTimingBuffer.size(); >+ >+ if (beforeCount <= afterCount) { >+ m_backupResourceTimingBuffer.clear(); >+ break; >+ } > } > m_waitingForBackupBufferToBeProcessed = false; > }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 193213
:
358530
|
358532
|
358540
|
358544
|
358552
|
358554
|
358555
|
360247
|
360249
|
360250
|
360253
|
360254
|
360255
|
360264
|
360268
|
360344
|
360345
|
362013
|
362014
|
362020
|
362021
|
362024
|
362025
|
362028
|
362034
|
362039
|
362060
|
362095
|
362115