diff options
author | janekptacijarabaci <janekptacijarabaci@seznam.cz> | 2018-04-29 12:11:55 +0200 |
---|---|---|
committer | janekptacijarabaci <janekptacijarabaci@seznam.cz> | 2018-04-29 12:11:55 +0200 |
commit | 39d4a11267fd707df04bb06a74e24f36e2dbcd28 (patch) | |
tree | 3c30c957fdeb03c356aa6bfe51867b38e0f05ff4 /dom/performance | |
parent | 7ee501103ad2efe1d28ef3c10b4111a685746c06 (diff) | |
download | uxp-39d4a11267fd707df04bb06a74e24f36e2dbcd28.tar.gz |
Bug 1323941 - navigationStart should not be exposed to workers as timing attribute
https://hg.mozilla.org/mozilla-central/rev/6be7eb833b11
Diffstat (limited to 'dom/performance')
-rw-r--r-- | dom/performance/Performance.h | 10 | ||||
-rw-r--r-- | dom/performance/PerformanceWorker.cpp | 23 | ||||
-rw-r--r-- | dom/performance/PerformanceWorker.h | 5 | ||||
-rw-r--r-- | dom/performance/tests/test_performance_user_timing.js | 21 |
4 files changed, 20 insertions, 39 deletions
diff --git a/dom/performance/Performance.h b/dom/performance/Performance.h index 6a374c7f07..04dd76bc7a 100644 --- a/dom/performance/Performance.h +++ b/dom/performance/Performance.h @@ -123,10 +123,16 @@ protected: virtual DOMHighResTimeStamp CreationTime() const = 0; - virtual bool IsPerformanceTimingAttribute(const nsAString& aName) = 0; + virtual bool IsPerformanceTimingAttribute(const nsAString& aName) + { + return false; + } virtual DOMHighResTimeStamp - GetPerformanceTimingFromString(const nsAString& aTimingName) = 0; + GetPerformanceTimingFromString(const nsAString& aTimingName) + { + return 0; + } bool IsResourceEntryLimitReached() const { diff --git a/dom/performance/PerformanceWorker.cpp b/dom/performance/PerformanceWorker.cpp index 85ca2ccd82..db9d6aa6e9 100644 --- a/dom/performance/PerformanceWorker.cpp +++ b/dom/performance/PerformanceWorker.cpp @@ -31,29 +31,6 @@ PerformanceWorker::Now() const return RoundTime(duration.ToMilliseconds()); } -// To be removed once bug 1124165 lands -bool -PerformanceWorker::IsPerformanceTimingAttribute(const nsAString& aName) -{ - // In workers we just support navigationStart. - return aName.EqualsASCII("navigationStart"); -} - -DOMHighResTimeStamp -PerformanceWorker::GetPerformanceTimingFromString(const nsAString& aProperty) -{ - if (!IsPerformanceTimingAttribute(aProperty)) { - return 0; - } - - if (aProperty.EqualsLiteral("navigationStart")) { - return mWorkerPrivate->NowBaseTime(); - } - - MOZ_CRASH("IsPerformanceTimingAttribute and GetPerformanceTimingFromString are out of sync"); - return 0; -} - void PerformanceWorker::InsertUserEntry(PerformanceEntry* aEntry) { diff --git a/dom/performance/PerformanceWorker.h b/dom/performance/PerformanceWorker.h index d8635e98a4..89bfea3edb 100644 --- a/dom/performance/PerformanceWorker.h +++ b/dom/performance/PerformanceWorker.h @@ -74,11 +74,6 @@ protected: void InsertUserEntry(PerformanceEntry* aEntry) override; - bool IsPerformanceTimingAttribute(const nsAString& aName) override; - - DOMHighResTimeStamp - GetPerformanceTimingFromString(const nsAString& aTimingName) override; - void DispatchBufferFullEvent() override { MOZ_CRASH("This should not be called on workers."); diff --git a/dom/performance/tests/test_performance_user_timing.js b/dom/performance/tests/test_performance_user_timing.js index cd8261bbd4..a15dbebb64 100644 --- a/dom/performance/tests/test_performance_user_timing.js +++ b/dom/performance/tests/test_performance_user_timing.js @@ -126,15 +126,18 @@ var steps = [ }, // Test measure function () { - ok(true, "Running measure addition with no start/end time test"); - performance.measure("test"); - var measures = performance.getEntriesByType("measure"); - is(measures.length, 1, "number of measures should be 1"); - var measure = measures[0]; - is(measure.name, "test", "measure name should be 'test'"); - is(measure.entryType, "measure", "measure type should be 'measure'"); - is(measure.startTime, 0, "measure start time should be zero"); - ok(measure.duration >= 0, "measure duration should not be negative"); + // We don't have navigationStart in workers. + if ("window" in self) { + ok(true, "Running measure addition with no start/end time test"); + performance.measure("test", "navigationStart"); + var measures = performance.getEntriesByType("measure"); + is(measures.length, 1, "number of measures should be 1"); + var measure = measures[0]; + is(measure.name, "test", "measure name should be 'test'"); + is(measure.entryType, "measure", "measure type should be 'measure'"); + is(measure.startTime, 0, "measure start time should be zero"); + ok(measure.duration >= 0, "measure duration should not be negative"); + } }, function () { ok(true, "Running measure addition with only start time test"); |