diff options
-rw-r--r-- | Source/WebCore/loader/DocumentLoadTiming.h | 2 | ||||
-rw-r--r-- | Source/WebCore/page/Performance.cpp | 4 | ||||
-rw-r--r-- | Source/WebCore/page/Performance.h | 2 |
3 files changed, 7 insertions, 1 deletions
diff --git a/Source/WebCore/loader/DocumentLoadTiming.h b/Source/WebCore/loader/DocumentLoadTiming.h index 64494330d..74b7190bf 100644 --- a/Source/WebCore/loader/DocumentLoadTiming.h +++ b/Source/WebCore/loader/DocumentLoadTiming.h @@ -68,6 +68,8 @@ public: bool hasCrossOriginRedirect() const { return m_hasCrossOriginRedirect; } bool hasSameOriginAsPreviousDocument() const { return m_hasSameOriginAsPreviousDocument; } + double referenceMonotonicTime() const { return m_referenceMonotonicTime; } + private: double m_referenceMonotonicTime; double m_referenceWallTime; diff --git a/Source/WebCore/page/Performance.cpp b/Source/WebCore/page/Performance.cpp index 9dcf46e13..edc4f9153 100644 --- a/Source/WebCore/page/Performance.cpp +++ b/Source/WebCore/page/Performance.cpp @@ -60,7 +60,9 @@ Performance::Performance(Frame* frame) #if ENABLE(USER_TIMING) , m_userTiming(0) #endif // ENABLE(USER_TIMING) + , m_referenceTime(frame->document()->loader()->timing()->referenceMonotonicTime()) { + ASSERT(m_referenceTime); } Performance::~Performance() @@ -243,7 +245,7 @@ void Performance::webkitClearMeasures(const String& measureName) double Performance::now() const { - return 1000.0 * m_frame->document()->loader()->timing()->monotonicTimeToZeroBasedDocumentTime(monotonicallyIncreasingTime()); + return 1000.0 * (WTF::monotonicallyIncreasingTime() - m_referenceTime); } } // namespace WebCore diff --git a/Source/WebCore/page/Performance.h b/Source/WebCore/page/Performance.h index 9f4e60285..9bbbc8b65 100644 --- a/Source/WebCore/page/Performance.h +++ b/Source/WebCore/page/Performance.h @@ -109,6 +109,8 @@ private: unsigned m_resourceTimingBufferSize; #endif + double m_referenceTime; + #if ENABLE(USER_TIMING) RefPtr<UserTiming> m_userTiming; #endif // ENABLE(USER_TIMING) |