From 405af7fb163e9c0f14ccafb1d94b05b9aebb0130 Mon Sep 17 00:00:00 2001 From: Kevin Sawicki Date: Fri, 17 Oct 2014 15:44:59 -0700 Subject: [PATCH] Track time taken to read window state Refs atom/timecop#6 --- src/atom.coffee | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/atom.coffee b/src/atom.coffee index a18cafe4d..b8dee131e 100644 --- a/src/atom.coffee +++ b/src/atom.coffee @@ -29,7 +29,10 @@ class Atom extends Model # # Returns an Atom instance, fully initialized @loadOrCreate: (mode) -> - @deserialize(@loadState(mode)) ? new this({mode, @version}) + startTime = Date.now() + atom = @deserialize(@loadState(mode)) ? new this({mode, @version}) + atom.deserializeTimings.atom = Date.now() - startTime + atom # Deserializes the Atom environment from a state object @deserialize: (state) -> @@ -152,6 +155,7 @@ class Atom extends Model {@mode} = @state DeserializerManager = require './deserializer-manager' @deserializers = new DeserializerManager() + @deserializeTimings = {} # Sets up the basic services that should be available in all modes # (both spec and application). @@ -597,7 +601,6 @@ class Atom extends Model delete @state.packageStates deserializeEditorWindow: -> - @deserializeTimings = {} @deserializePackageStates() @deserializeProject() @deserializeWorkspaceView()