--- 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(