From 39fd4f705942bcf16691a1f613b39e9cf2c9e8cd Mon Sep 17 00:00:00 2001 From: Kevin Sawicki Date: Tue, 22 Jan 2013 14:42:13 -0800 Subject: [PATCH] Remove extra subscribeToFile() call This was causing an event listener to leak on each call to save() Closes #152 --- spec/app/buffer-spec.coffee | 16 ++++++++++++++++ src/app/buffer.coffee | 1 - 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/spec/app/buffer-spec.coffee b/spec/app/buffer-spec.coffee index a4a1fea71..432fcdeb2 100644 --- a/spec/app/buffer-spec.coffee +++ b/spec/app/buffer-spec.coffee @@ -128,6 +128,22 @@ describe 'Buffer', -> runs -> expect(buffer.isModified()).toBeTruthy() + it "fires a single contents-conflicted event", -> + buffer.insert([0, 0], "a change") + buffer.save() + buffer.insert([0, 0], "a second change") + + handler = jasmine.createSpy('fileChange') + fs.write(path, "second") + buffer.on 'contents-conflicted', handler + + expect(handler.callCount).toBe 0 + waitsFor -> + handler.callCount > 0 + + runs -> + expect(handler.callCount).toBe 1 + describe "when the buffer's file is deleted (via another process)", -> [path, bufferToDelete] = [] diff --git a/src/app/buffer.coffee b/src/app/buffer.coffee index d5f9bd34c..a5a2d9247 100644 --- a/src/app/buffer.coffee +++ b/src/app/buffer.coffee @@ -242,7 +242,6 @@ class Buffer @setPath(path) @cachedDiskContents = @getText() @file.write(@getText()) - @subscribeToFile() @trigger 'saved' isModified: ->