Index: Source/core/timing/Performance.cpp |
diff --git a/Source/core/timing/Performance.cpp b/Source/core/timing/Performance.cpp |
index 172865ee04fb13f9b485184dbafec4db54e783e3..e500be09c8599de11e7fae706950801682e22d19 100644 |
--- a/Source/core/timing/Performance.cpp |
+++ b/Source/core/timing/Performance.cpp |
@@ -39,8 +39,24 @@ |
namespace blink { |
+static double toTimeOrigin(LocalFrame* frame) |
+{ |
+ if (!frame) |
+ return 0.0; |
+ |
+ Document* document = frame->document(); |
+ if (!document) |
+ return 0.0; |
+ |
+ DocumentLoader* loader = document->loader(); |
+ if (!loader) |
+ return 0.0; |
+ |
+ return loader->timing().referenceMonotonicTime(); |
+} |
+ |
Performance::Performance(LocalFrame* frame) |
- : PerformanceBase(frame && frame->host() ? frame->document()->loader()->timing().referenceMonotonicTime() : 0.0) |
+ : PerformanceBase(toTimeOrigin(frame)) |
, DOMWindowProperty(frame) |
{ |
} |