From 857888265f43b4107a4a2136691ae4a6c957e8ce Mon Sep 17 00:00:00 2001 From: Anthony Lieuallen Date: Thu, 25 Apr 2013 10:59:34 -0400 Subject: [PATCH] Make sure mod time is not > install time, when installing. By making them always exactly equal. This includes installs for updates. Fixes #1723 --- modules/remoteScript.js | 7 ++----- modules/script.js | 3 ++- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/modules/remoteScript.js b/modules/remoteScript.js index bec11a90c..ba16c512b 100644 --- a/modules/remoteScript.js +++ b/modules/remoteScript.js @@ -332,12 +332,9 @@ RemoteScript.prototype.install = function(aOldScript, aOnlyDependencies) { this._tempDir.moveTo(GM_util.scriptDir(), this._baseName); this._tempDir = null; - // Since we moved the file, it's modtime changed, update the script: - this.script.setModTimeFromFile(); - // Let the config know the base/file name has changed to its real value now. - GM_config._changed(this.script, 'modified', this.script.id); - + this.script.fixTimestampsOnInstall(); this.script.checkConfig(); + this.script._changed('modified'); // Let the user know we're all done. GM_notification( diff --git a/modules/script.js b/modules/script.js index 0747c42e0..306c2dd4c 100644 --- a/modules/script.js +++ b/modules/script.js @@ -259,8 +259,9 @@ Script.prototype.setFilename = function(aBaseName, aFileName) { if (!this._downloadURL) this._downloadURL = this.fileURL; }; -Script.prototype.setModTimeFromFile = function() { +Script.prototype.fixTimestampsOnInstall = function() { this._modifiedTime = this.file.lastModifiedTime; + this._installTime = this.file.lastModifiedTime; }; Script.prototype._loadFromConfigNode = function(node) {