Bug 193004
| Summary: | resourcetimingbufferfull fired inadvertently after buffer size increase | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | cvazac |
| Component: | WebCore Misc. | Assignee: | Nobody <webkit-unassigned> |
| Status: | NEW | ||
| Severity: | Normal | CC: | achristensen, beidson, yoav, youennf |
| Priority: | P2 | ||
| Version: | Safari 12 | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
cvazac
A web-platform-test test [0] overflows the buffer, but then immediately increases the size of the buffer to make room for the new entries. In that case, a `resourcetimingbufferfull` event should never actually fire.
In the test, resources/empty.js?xhr2 and resources/empty.js?xhr3 overflow the buffer. Which queues a task (async) to run the "fire a buffer full event" steps. Then the developer calls `setResourceTimingBufferSize()` to make more room. When the "fire a buffer full event" steps do run, "can add resource timing entry" will return true (which means we don't fire `resourcetimingbufferfull`). At that point, both entries of the secondary buffer fit into the primary buffer.
[0] https://wpt.fyi/results/resource-timing/buffer-full-then-increased.html?label=experimental
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |