@@ -91,6 +91,7 @@ const kSupportedEntryTypes = ObjectFreeze([
9191// Performance timeline entry Buffers
9292let markEntryBuffer = [ ] ;
9393let measureEntryBuffer = [ ] ;
94+ let resourceTimingBuffer = [ ] ;
9495const kMaxPerformanceEntryBuffers = 1e6 ;
9596const kClearPerformanceEntryBuffers = ObjectFreeze ( {
9697 'mark' : 'performance.clearMarks' ,
@@ -343,6 +344,7 @@ function enqueue(entry) {
343344 } else if ( entryType === 'measure' ) {
344345 buffer = measureEntryBuffer ;
345346 } else {
347+ buffer = resourceTimingBuffer ;
346348 return ;
347349 }
348350
@@ -367,16 +369,19 @@ function enqueue(entry) {
367369}
368370
369371function clearEntriesFromBuffer ( type , name ) {
370- if ( type !== 'mark' && type !== 'measure' ) {
372+ if ( type !== 'mark' && type !== 'measure' && type !== 'resource' ) {
371373 return ;
372374 }
373375
374376 if ( type === 'mark' ) {
375377 markEntryBuffer = name === undefined ?
376378 [ ] : ArrayPrototypeFilter ( markEntryBuffer , ( entry ) => entry . name !== name ) ;
377- } else {
379+ } else if ( type === 'measure' ) {
378380 measureEntryBuffer = name === undefined ?
379381 [ ] : ArrayPrototypeFilter ( measureEntryBuffer , ( entry ) => entry . name !== name ) ;
382+ } else {
383+ resourceTimingBuffer = name === undefined ?
384+ [ ] : ArrayPrototypeFilter ( resourceTimingBuffer , ( entry ) => entry . name !== name ) ;
380385 }
381386}
382387
@@ -386,11 +391,13 @@ function filterBufferMapByNameAndType(name, type) {
386391 bufferList = markEntryBuffer ;
387392 } else if ( type === 'measure' ) {
388393 bufferList = measureEntryBuffer ;
394+ } else if ( type === 'resource' ) {
395+ bufferList = resourceTimingBuffer ;
389396 } else if ( type !== undefined ) {
390397 // Unrecognized type;
391398 return [ ] ;
392399 } else {
393- bufferList = ArrayPrototypeConcat ( markEntryBuffer , measureEntryBuffer ) ;
400+ bufferList = ArrayPrototypeConcat ( markEntryBuffer , measureEntryBuffer , resourceTimingBuffer ) ;
394401 }
395402 if ( name !== undefined ) {
396403 bufferList = ArrayPrototypeFilter ( bufferList , ( buffer ) => buffer . name === name ) ;
0 commit comments