diff options
author | Vadim ProductEngine <vsavchuk@productengine.com> | 2010-10-20 21:23:27 +0300 |
---|---|---|
committer | Vadim ProductEngine <vsavchuk@productengine.com> | 2010-10-20 21:23:27 +0300 |
commit | b3f3fb60999033a7a100102d563e66eaaa876fa3 (patch) | |
tree | 673dc5c227e9a3aa468b946ea5cbf4441cf543e7 /indra/newview/llappviewer.cpp | |
parent | cbb184d986cbdd09d36cf2b2313726f0f2582cb2 (diff) |
STORM-417 FIXED Port of SNOW-140 to SG 2.0 : Forced updates not working on Mac
The point of this patch is to make the Mac updater code a bit more flexible
and reliable than it is right now. The issue is double:
* reliability: the string comparison code on the bundle identifier is not UTF8 compliant
* flexibility: the bundle identifier is hard coded to match the bundle identifier of LL viewer
(i.e. com.secondlife.indra.viewer) so it can't work for another viewer
(in particular, it didn't work for Snowglobe).
The "bundle identifier" is one of those Mac only thing stored in the Info.plist of a "bundle"
(the ".app" folder that's bundling an executable and all its resources and is seen
as an application when browsing with the Mac OS X Finder).
The patch fixes both issues:
* compare correctly UTF8 encoded strings
* allow the bundle ID to be passed as a parameter to the updater
The patch has really no consequence on LL viewer. It's more a matter of having cleaner, better code.
Author: Cypren Christenson
Ported and reviewed by: Merov Linden
Diffstat (limited to 'indra/newview/llappviewer.cpp')
-rw-r--r-- | indra/newview/llappviewer.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp index ba14c248aa..931b9fd2f3 100644 --- a/indra/newview/llappviewer.cpp +++ b/indra/newview/llappviewer.cpp @@ -30,6 +30,7 @@ // Viewer includes #include "llversioninfo.h" +#include "llversionviewer.h" #include "llfeaturemanager.h" #include "lluictrlfactory.h" #include "lltexteditor.h" @@ -4513,6 +4514,8 @@ void LLAppViewer::launchUpdater() LLAppViewer::sUpdaterInfo->mUpdateExePath += update_url.asString(); LLAppViewer::sUpdaterInfo->mUpdateExePath += "\" -name \""; LLAppViewer::sUpdaterInfo->mUpdateExePath += LLAppViewer::instance()->getSecondLifeTitle(); + LLAppViewer::sUpdaterInfo->mUpdateExePath += "\" -bundleid \""; + LLAppViewer::sUpdaterInfo->mUpdateExePath += LL_VERSION_BUNDLE_ID; LLAppViewer::sUpdaterInfo->mUpdateExePath += "\" &"; LL_DEBUGS("AppInit") << "Calling updater: " << LLAppViewer::sUpdaterInfo->mUpdateExePath << LL_ENDL; |