From 4e2ea61695449379312c52efc22a4b6baa6bde6c Mon Sep 17 00:00:00 2001 From: ShyPike Date: Sun, 11 Apr 2010 12:45:46 +0200 Subject: [PATCH] Prevent crash on Linuix and OSX when HOME environment variable is missing, exit with panic() instead. --- SABnzbd.py | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/SABnzbd.py b/SABnzbd.py index 80e6318..e889760 100755 --- a/SABnzbd.py +++ b/SABnzbd.py @@ -369,17 +369,21 @@ def GetProfileInfo(vista_plus): pass elif sabnzbd.DARWIN: - sabnzbd.DIR_APPDATA = '%s/Library/Application Support/SABnzbd' % (os.environ['HOME']) - sabnzbd.DIR_LCLDATA = sabnzbd.DIR_APPDATA - sabnzbd.DIR_HOME = os.environ['HOME'] - ok = True + home = os.environ.get('HOME') + if home: + sabnzbd.DIR_APPDATA = '%s/Library/Application Support/SABnzbd' % home + sabnzbd.DIR_LCLDATA = sabnzbd.DIR_APPDATA + sabnzbd.DIR_HOME = home + ok = True else: # Unix/Linux - sabnzbd.DIR_APPDATA = '%s/.%s' % (os.environ['HOME'], DEF_WORKDIR) - sabnzbd.DIR_LCLDATA = sabnzbd.DIR_APPDATA - sabnzbd.DIR_HOME = os.environ['HOME'] - ok = True + home = os.environ.get('HOME') + if home: + sabnzbd.DIR_APPDATA = '%s/.%s' % (home, DEF_WORKDIR) + sabnzbd.DIR_LCLDATA = sabnzbd.DIR_APPDATA + sabnzbd.DIR_HOME = home + ok = True if not ok: panic("Cannot access the user profile.",