fix profile switching
[stack/code/dboxswitch.git] / dboxswitch / profhandler.py
index 8802f1f..a17b57a 100644 (file)
@@ -140,9 +140,10 @@ class ProfHandler():
             self.stopDropbox()
             try:
                 if pl in ('Linux','Darwin'):
-                    if os.path.exists(self.getDropboxDirectory()):
-                        os.unlink(self.getDropboxDirectory())
-                    os.symlink(ppath, self.getDropboxDirectory())
+                    dbdir = self.getDropboxDirectory()
+                    if os.path.exists(dbdir):
+                        os.unlink(dbdir)
+                    os.symlink(ppath, dbdir)
                 else:
                     raise NotImplementedError, "Not implemented yet."
             except IOError as e:
@@ -161,7 +162,7 @@ class ProfHandler():
         if pl in ('Linux', 'Darwin'):
             basepath = os.path.join(os.path.expanduser("~"), ".dropbox")
             for path in [os.path.join(basepath, "instance1"), basepath]:
-                if os.path.exists(path):
+                if os.path.exists(path) and os.path.islink(path):
                     return path 
             raise NotImplementedError("Path not found " + basepath + "[instance1]")
         elif pl == 'Windows':