PluginManager/PluginInstallDialog.py

branch
6_1_x
changeset 5235
3ea533fbcb4c
parent 4632
ca310db386ed
--- a/PluginManager/PluginInstallDialog.py	Sun Oct 09 13:40:03 2016 +0200
+++ b/PluginManager/PluginInstallDialog.py	Sat Oct 15 16:22:04 2016 +0200
@@ -393,8 +393,14 @@
             # try to unload a plugin with the same name
             self.__pluginManager.unloadPlugin(installedPluginName)
         
-        # uninstall existing plugin first to get clean conditions
-        self.__uninstallPackage(destination, pluginFileName, packageName)
+        # uninstall existing plug-in first to get clean conditions
+        if packageName != "None" and \
+            not os.path.exists(
+                os.path.join(destination, packageName, "__init__.py")):
+            # package directory contains just data, don't delete it
+            self.__uninstallPackage(destination, pluginFileName, "")
+        else:
+            self.__uninstallPackage(destination, pluginFileName, packageName)
         
         # clean sys.modules
         reload_ = self.__pluginManager.removePluginFromSysModules(

eric ide

mercurial