diff options
author | Oz Linden <oz@lindenlab.com> | 2014-02-25 13:30:16 -0500 |
---|---|---|
committer | Oz Linden <oz@lindenlab.com> | 2014-02-25 13:30:16 -0500 |
commit | 9b42503379bc2e9698545543670306961f7db991 (patch) | |
tree | dad8c7ac114c65b70c5b6ec6cdc803d7307b365d /indra/viewer_components/updater/scripts/darwin/update_install.py | |
parent | 4514d8c5c3bd5e16ba8d84214ecd164cd0740864 (diff) | |
parent | d993d6347a2c9f559d9ee8c5ac8e9292944156f0 (diff) |
merge latest changes from Ima with 3.6.14-release
Diffstat (limited to 'indra/viewer_components/updater/scripts/darwin/update_install.py')
-rwxr-xr-x | indra/viewer_components/updater/scripts/darwin/update_install.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/indra/viewer_components/updater/scripts/darwin/update_install.py b/indra/viewer_components/updater/scripts/darwin/update_install.py index 10d507c9ef..08f4f0ebb9 100755 --- a/indra/viewer_components/updater/scripts/darwin/update_install.py +++ b/indra/viewer_components/updater/scripts/darwin/update_install.py @@ -199,6 +199,11 @@ def main(dmgfile, markerfile, markertext): # prepare for other cleanup with Janitor(LOGF) as janitor: + # Under some circumstances, this script seems to be invoked with a + # nonexistent pathname. Check for that. + if not os.path.isfile(dmgfile): + fail(dmgfile + " has been deleted") + # Try to derive the name of the running viewer app bundle from our # own pathname. (Hopefully the old viewer won't copy this script # to a temp dir before running!) @@ -376,6 +381,13 @@ def main(dmgfile, markerfile, markertext): log(' '.join(command)) subprocess.check_call(command, stdout=LOGF, stderr=subprocess.STDOUT) + # If all the above succeeded, delete the .dmg file. We don't do this + # as a janitor.later() operation because we only want to do it if we + # get this far successfully. Note that this is out of the scope of the + # Janitor: we must detach the .dmg before removing it! + log("rm " + dmgfile) + os.remove(dmgfile) + except Exception, err: # Because we carefully set sys.excepthook -- and even modify it to log # the problem once we have our log file open -- you might think we |