Mac Installer: Fix the code which deletes installer receipts

svn path=/trunk/boinc/; revision=23038
This commit is contained in:
Charlie Fenton 2011-02-15 11:02:40 +00:00
parent 27953fc5a6
commit a1ef5b4a17
3 changed files with 21 additions and 5 deletions

View File

@ -757,4 +757,14 @@ Charlie 15 Feb 2011
lib/
QBacktrace.c
QCrashReport.c
Charlie 15 Feb 2011
Mac Installer: Fix the code which deletes installer receipts to use
the current package name (which changed when I eliminated the
Mac installer wrapper application around the installer package.)
This is needed to allow isntalling an older version to replace a
newer one under OS 10.4.x.
mac_installer/
PostInstall.cpp
uninstall.cpp

View File

@ -164,21 +164,21 @@ int main(int argc, char *argv[])
brandName[0] = "BOINC";
saverName[0] = "BOINCSaver";
saverNameEscaped[0] = "BOINCSaver";
receiptNameEscaped[0] = "/Library/Receipts/BOINC.pkg";
receiptNameEscaped[0] = "/Library/Receipts/BOINC\\ Installer.pkg";
appName[1] = "/Applications/GridRepublic Desktop.app";
appNameEscaped[1] = "/Applications/GridRepublic\\ Desktop.app";
brandName[1] = "GridRepublic";
saverName[1] = "GridRepublic";
saverNameEscaped[1] = "GridRepublic";
receiptNameEscaped[1] = "/Library/Receipts/GridRepublic.pkg";
receiptNameEscaped[1] = "/Library/Receipts/GridRepublic\\ Installer.pkg";
appName[2] = "/Applications/Progress Thru Processors Desktop.app";
appNameEscaped[2] = "/Applications/Progress\\ Thru\\ Processors\\ Desktop.app";
brandName[2] = "Progress Thru Processors";
saverName[2] = "Progress Thru Processors";
saverNameEscaped[2] = "Progress\\ Thru\\ Processors";
receiptNameEscaped[2] = "/Library/Receipts/Progress\\ Thru\\ Processors.pkg";
receiptNameEscaped[2] = "/Library/Receipts/Progress\\ Thru\\ Processors\\ Installer.pkg";
::GetCurrentProcess (&ourProcess);

View File

@ -208,11 +208,17 @@ static OSStatus DoUninstall(void) {
system ("rm -rf \"/Applications/Progress\\ Thru\\ Processors\\ Desktop.app\"");
system ("rm -rf \"/Library/Screen Savers/Progress\\ Thru\\ Processors.saver\"");
// Delete any receipt from an older installer (which had
// a wrapper application around the installer package.)
system ("rm -rf /Library/Receipts/GridRepublic.pkg");
system ("rm -rf /Library/Receipts/Progress\\ Thru\\ Processors.pkg");
system ("rm -rf /Library/Receipts/BOINC.pkg");
// Delete any receipt from a newer installer (a bare package.)
system ("rm -rf /Library/Receipts/GridRepublic\\ Installer.pkg");
system ("rm -rf /Library/Receipts/Progress\\ Thru\\ Processors\\ Installer.pkg");
system ("rm -rf /Library/Receipts/BOINC\\ Installer.pkg");
// Phase 5: Set BOINC Data owner and group to logged in user
// We don't customize BOINC Data directory name for branding
// system ("rm -rf \"/Library/Application Support/BOINC Data\"");