From 5651ebbb48fb740c738ebadea900cee082c5ede4 Mon Sep 17 00:00:00 2001 From: Ben Ogle Date: Mon, 29 Sep 2014 15:15:55 -0700 Subject: [PATCH] always set, only emit when values differ --- src/config.coffee | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/config.coffee b/src/config.coffee index 7a9f99666..749d6b1df 100644 --- a/src/config.coffee +++ b/src/config.coffee @@ -556,14 +556,13 @@ class Config CSON.writeFileSync(@configFilePath, @settings) setRawValue: (keyPath, value) -> - if @get(keyPath) isnt value - defaultValue = _.valueForKeyPath(@defaultSettings, keyPath) - value = undefined if _.isEqual(defaultValue, value) + defaultValue = _.valueForKeyPath(@defaultSettings, keyPath) + value = undefined if _.isEqual(defaultValue, value) - oldValue = _.clone(@get(keyPath)) - _.setValueForKeyPath(@settings, keyPath, value) - newValue = @get(keyPath) - @emitter.emit 'did-change', {oldValue, newValue, keyPath} + oldValue = _.clone(@get(keyPath)) + _.setValueForKeyPath(@settings, keyPath, value) + newValue = @get(keyPath) + @emitter.emit 'did-change', {oldValue, newValue, keyPath} if newValue isnt oldValue setRawDefault: (keyPath, value) -> oldValue = _.clone(@get(keyPath))