Issue #21: fixed reloading of config when config has not changed.
This commit is contained in:
@@ -265,9 +265,14 @@ function findConfiguration() {
|
||||
return undefined;
|
||||
}
|
||||
|
||||
var configState = {};
|
||||
|
||||
function loadConfigurationFile(filename) {
|
||||
filename = filename || findConfiguration();
|
||||
if (filename) {
|
||||
if (filename && (!configState.lastFilename || filename !== configState.lastFilename ||
|
||||
!configState.lastMTime || fs.statSync(filename).mtime !== configState.lastMTime)) {
|
||||
configState.lastFilename = filename;
|
||||
configState.lastMTime = fs.statSync(filename).mtime;
|
||||
return JSON.parse(fs.readFileSync(filename, "utf8"));
|
||||
}
|
||||
return undefined;
|
||||
@@ -284,8 +289,6 @@ function configureOnceOff(config) {
|
||||
}
|
||||
}
|
||||
|
||||
var configState = {};
|
||||
|
||||
function reloadConfiguration() {
|
||||
var filename = configState.filename || findConfiguration(),
|
||||
mtime;
|
||||
@@ -301,15 +304,11 @@ function reloadConfiguration() {
|
||||
}
|
||||
if (configState.lastFilename && configState.lastFilename === filename) {
|
||||
if (mtime.getTime() > configState.lastMTime.getTime()) {
|
||||
configState.lastMTime = mtime;
|
||||
} else {
|
||||
filename = null;
|
||||
configureOnceOff(loadConfigurationFile(filename));
|
||||
}
|
||||
} else {
|
||||
configState.lastFilename = filename;
|
||||
configState.lastMTime = mtime;
|
||||
configureOnceOff(loadConfigurationFile(filename));
|
||||
}
|
||||
configureOnceOff(loadConfigurationFile(filename));
|
||||
}
|
||||
|
||||
function initReloadConfiguration(filename, options) {
|
||||
|
||||
Reference in New Issue
Block a user