summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Source/WebCore/loader/DocumentLoadTiming.h2
-rw-r--r--Source/WebCore/page/Performance.cpp4
-rw-r--r--Source/WebCore/page/Performance.h2
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)