diff options
author | janekptacijarabaci <janekptacijarabaci@seznam.cz> | 2018-04-29 11:49:50 +0200 |
---|---|---|
committer | janekptacijarabaci <janekptacijarabaci@seznam.cz> | 2018-04-29 11:49:50 +0200 |
commit | e040ed925030f899f845d458c226f7e439f4ec8b (patch) | |
tree | 797edf76896b10a38446171aa341da8dfef8ca08 /dom/performance/PerformanceResourceTiming.cpp | |
parent | aff03b0a67c41cf7af5df9c9eef715a8b27a2667 (diff) | |
download | UXP-e040ed925030f899f845d458c226f7e439f4ec8b.tar UXP-e040ed925030f899f845d458c226f7e439f4ec8b.tar.gz UXP-e040ed925030f899f845d458c226f7e439f4ec8b.tar.lz UXP-e040ed925030f899f845d458c226f7e439f4ec8b.tar.xz UXP-e040ed925030f899f845d458c226f7e439f4ec8b.zip |
moebius#158: The Performance Resource Timing (added support for "workerStart")
https://github.com/MoonchildProductions/moebius/pull/158
Diffstat (limited to 'dom/performance/PerformanceResourceTiming.cpp')
-rw-r--r-- | dom/performance/PerformanceResourceTiming.cpp | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/dom/performance/PerformanceResourceTiming.cpp b/dom/performance/PerformanceResourceTiming.cpp index 60a20ca28..94df27408 100644 --- a/dom/performance/PerformanceResourceTiming.cpp +++ b/dom/performance/PerformanceResourceTiming.cpp @@ -42,8 +42,22 @@ PerformanceResourceTiming::~PerformanceResourceTiming() DOMHighResTimeStamp PerformanceResourceTiming::StartTime() const { - DOMHighResTimeStamp startTime = mTiming->RedirectStartHighRes(); - return startTime ? startTime : mTiming->FetchStartHighRes(); + // Force the start time to be the earliest of: + // - RedirectStart + // - WorkerStart + // - AsyncOpen + // Ignore zero values. The RedirectStart and WorkerStart values + // can come from earlier redirected channels prior to the AsyncOpen + // time being recorded. + DOMHighResTimeStamp redirect = mTiming->RedirectStartHighRes(); + redirect = redirect ? redirect : DBL_MAX; + + DOMHighResTimeStamp worker = mTiming->WorkerStartHighRes(); + worker = worker ? worker : DBL_MAX; + + DOMHighResTimeStamp asyncOpen = mTiming->AsyncOpenHighRes(); + + return std::min(asyncOpen, std::min(redirect, worker)); } JSObject* |