diff --git a/spec/app/window-spec.coffee b/spec/app/window-spec.coffee index 3ae18b0c2..63fe2b58b 100644 --- a/spec/app/window-spec.coffee +++ b/spec/app/window-spec.coffee @@ -53,7 +53,7 @@ describe "Window", -> expect(atom.rootViewStates[$windowNumber]).toBeUndefined() expectedState = window.rootView.serialize() $(window).trigger 'beforeunload' - expect(atom.rootViewStates[$windowNumber]).toEqual expectedState + expect(atom.rootViewStates[$windowNumber]).toEqual JSON.stringify(expectedState) it "unsubscribes from all buffers", -> editor1 = rootView.activeEditor() diff --git a/src/app/root-view.coffee b/src/app/root-view.coffee index 99d7cd1ab..9bc9c7eff 100644 --- a/src/app/root-view.coffee +++ b/src/app/root-view.coffee @@ -85,7 +85,7 @@ class RootView extends View extension.activate(this, @extensionStates[extension.name]) deactivate: -> - atom.rootViewStates[$windowNumber] = @serialize() + atom.rootViewStates[$windowNumber] = JSON.stringify(@serialize()) extension.deactivate?() for name, extension of @extensions @remove() diff --git a/src/app/window.coffee b/src/app/window.coffee index 545bd25b9..05b7854d6 100644 --- a/src/app/window.coffee +++ b/src/app/window.coffee @@ -41,7 +41,7 @@ windowAdditions = attachRootView: (pathToOpen) -> rootViewState = atom.rootViewStates[$windowNumber] if rootViewState - @rootView = RootView.deserialize(rootViewState) + @rootView = RootView.deserialize(JSON.parse(rootViewState)) else @rootView = new RootView(pathToOpen) @rootView.open() unless pathToOpen