From ccb9a4077791d47a5d21332c22c442b403af79f5 Mon Sep 17 00:00:00 2001 From: Kevin Ollivier Date: Mon, 4 Dec 2006 20:26:04 +0000 Subject: [PATCH] Do not uninstall wxaddons module or files. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43812 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- wxPython/distrib/mac/uninstall_wxPython.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/wxPython/distrib/mac/uninstall_wxPython.py b/wxPython/distrib/mac/uninstall_wxPython.py index c99d301535..caa0aea4c9 100755 --- a/wxPython/distrib/mac/uninstall_wxPython.py +++ b/wxPython/distrib/mac/uninstall_wxPython.py @@ -112,6 +112,13 @@ class InstalledReceipt(object): handleFile(name) handleDir(dirpath) + # wxaddons should be always kept as the user may have installed + # third-party modules seperate from wxpython. + def testWxaddons(self, name): + for prefix in PREFIXES: + if name.startswith(prefix + "wxaddons"): + return True + return False def testCommon(self, name): for cmn in COMMON_FILES: @@ -125,6 +132,8 @@ class InstalledReceipt(object): if os.path.exists(name): if not self.lastInstall and self.testCommon(name): return + if self.testWxaddons(name): + return print "Will remove:", name self.walkFiles(show, show) @@ -144,11 +153,13 @@ class InstalledReceipt(object): if os.path.exists(name): if not self.lastInstall and self.testCommon(name): return + if self.testWxaddons(name): + return print "Removing:", name os.unlink(name) def removeDir(name): print "Removing:", name - if os.path.exists(name): + if os.path.exists(name) and not self.testWxaddons(name): hasFiles = os.listdir(name) if hasFiles: # perhaps some stale symlinks, or .pyc files for file in hasFiles: