From c223e7f58fb873422ce24c35d4c87eb4f0cd8ec3 Mon Sep 17 00:00:00 2001 From: Nick O'Leary Date: Fri, 3 Oct 2014 14:47:23 +0100 Subject: [PATCH] Avoid writing unchanged settings --- red/settings.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/red/settings.js b/red/settings.js index 4cf0b3635..4921e7c4d 100644 --- a/red/settings.js +++ b/red/settings.js @@ -16,6 +16,8 @@ var when = require("when"); +var assert = require("assert"); + var userSettings = null; var globalSettings = null; var storage = null; @@ -59,7 +61,13 @@ var persistentSettings = { throw new Error("Settings not available"); } globalSettings[prop] = value; - return storage.saveSettings(globalSettings); + var current = persistentSettings.get(prop); + try { + assert.deepEqual(current,value); + return when.resolve(); + } catch(err) { + return storage.saveSettings(globalSettings); + } }, available: function() {