diff --git a/.hgtags b/.hgtags
index f21607d9f5f6231d0176af76e62859c0de828b88..41347e51547ffb2ea6793fa059aa063bae2e14cd 100644
--- a/.hgtags
+++ b/.hgtags
@@ -350,6 +350,8 @@ ab2ffc547c8a8950ff187c4f6c95e5334fab597b 3.3.4-beta5
 28e100d0379a2b0710c57647a28fc5239d3d7b99 3.3.4-release
 a8b3eca451a9eaab59987efb0ab1c4217e3f2dcc DRTVWR-182
 1f27cdfdc54246484f8afbbe42ce48e954175cbd 3.4.0-beta1
+6dfb0fba782c9233dd95f24ec48146db0d3f210b DRTVWR-199
+7c9102fb998885621919f2474a002c35b583539b 3.3.4-release2
 9ee9387789701d597130f879d9011a4958753862 DRTVWR-189
 ae5c83dd61d2d37c45f1d5b8bf2b036d87599f1b DRTVWR-198
 507bdfbd6bf844a511c1ffeda4baa80016ed1346 DRTVWR-197
diff --git a/indra/viewer_components/updater/llupdatechecker.cpp b/indra/viewer_components/updater/llupdatechecker.cpp
index c6aa9b0f110d1422e4c665c7e6532cc4bc91684d..4da774a5f6bf7b87988be7c3d899f1247e029c53 100644
--- a/indra/viewer_components/updater/llupdatechecker.cpp
+++ b/indra/viewer_components/updater/llupdatechecker.cpp
@@ -30,7 +30,9 @@
 #include "llsd.h"
 #include "llupdatechecker.h"
 #include "lluri.h"
-
+#if LL_DARWIN
+#include <CoreServices/CoreServices.h>
+#endif
 
 #if LL_WINDOWS
 #pragma warning (disable : 4355) // 'this' used in initializer list: yes, intentionally
@@ -55,7 +57,7 @@ class LLUpdateChecker::Implementation:
 public:
 	Implementation(Client & client);
 	~Implementation();
-	void check(std::string const & protocolVersion, std::string const & hostUrl, 
+	void checkVersion(std::string const & protocolVersion, std::string const & hostUrl, 
 			   std::string const & servicePath, std::string channel, std::string version);
 	
 	// Responder:
@@ -91,10 +93,10 @@ LLUpdateChecker::LLUpdateChecker(LLUpdateChecker::Client & client):
 }
 
 
-void LLUpdateChecker::check(std::string const & protocolVersion, std::string const & hostUrl, 
+void LLUpdateChecker::checkVersion(std::string const & protocolVersion, std::string const & hostUrl, 
 							std::string const & servicePath, std::string channel, std::string version)
 {
-	mImplementation->check(protocolVersion, hostUrl, servicePath, channel, version);
+	mImplementation->checkVersion(protocolVersion, hostUrl, servicePath, channel, version);
 }
 
 
@@ -120,7 +122,7 @@ LLUpdateChecker::Implementation::~Implementation()
 }
 
 
-void LLUpdateChecker::Implementation::check(std::string const & protocolVersion, std::string const & hostUrl, 
+void LLUpdateChecker::Implementation::checkVersion(std::string const & protocolVersion, std::string const & hostUrl, 
 											std::string const & servicePath, std::string channel, std::string version)
 {
 	llassert(!mInProgress);
@@ -179,7 +181,18 @@ std::string LLUpdateChecker::Implementation::buildUrl(std::string const & protoc
 #ifdef LL_WINDOWS
 	static const char * platform = "win";
 #elif LL_DARWIN
-	static const char * platform = "mac";
+    long versMin;
+    Gestalt(gestaltSystemVersionMinor, &versMin);
+    
+    static const char *platform;
+    if (versMin == 5) //OS 10.5
+    {
+        platform = "mac_legacy";
+    }
+    else 
+    {
+        platform = "mac";
+    }
 #else
 	static const char * platform = "lnx";
 #endif
diff --git a/indra/viewer_components/updater/llupdatechecker.h b/indra/viewer_components/updater/llupdatechecker.h
index cea1f13647dc2275182691c6ac022ab89d075b7d..d882169068f726061c8ec671cfb16c87502dc5e7 100644
--- a/indra/viewer_components/updater/llupdatechecker.h
+++ b/indra/viewer_components/updater/llupdatechecker.h
@@ -44,7 +44,7 @@ class LLUpdateChecker {
 	LLUpdateChecker(Client & client);
 	
 	// Check status of current app on the given host for the channel and version provided.
-	void check(std::string const & protocolVersion, std::string const & hostUrl, 
+	void checkVersion(std::string const & protocolVersion, std::string const & hostUrl, 
 			   std::string const & servicePath, std::string channel, std::string version);
 	
 private:
diff --git a/indra/viewer_components/updater/llupdaterservice.cpp b/indra/viewer_components/updater/llupdaterservice.cpp
index 2e18218667c3b7d0ba5708dcdeb43737ef31d109..bc73c72ddcba5a107f4896d56fb30c8f6d9c160a 100644
--- a/indra/viewer_components/updater/llupdaterservice.cpp
+++ b/indra/viewer_components/updater/llupdaterservice.cpp
@@ -509,7 +509,7 @@ bool LLUpdaterServiceImpl::onMainLoop(LLSD const & event)
 		}
 		else
 		{
-			mUpdateChecker.check(mProtocolVersion, mUrl, mPath, mChannel, mVersion);
+			mUpdateChecker.checkVersion(mProtocolVersion, mUrl, mPath, mChannel, mVersion);
 			setState(LLUpdaterService::CHECKING_FOR_UPDATE);
 		}
 	} 
diff --git a/indra/viewer_components/updater/tests/llupdaterservice_test.cpp b/indra/viewer_components/updater/tests/llupdaterservice_test.cpp
index e19d5724f172b5bdc552d2243007611b285076e6..7c016fecf9253b98a2319fb2732bcf508ae39957 100644
--- a/indra/viewer_components/updater/tests/llupdaterservice_test.cpp
+++ b/indra/viewer_components/updater/tests/llupdaterservice_test.cpp
@@ -1,4 +1,4 @@
-/**
+/** 
  * @file   llupdaterservice_test.cpp
  * @brief  Tests of llupdaterservice.cpp.
  * 
@@ -44,7 +44,7 @@
 *****************************************************************************/
 LLUpdateChecker::LLUpdateChecker(LLUpdateChecker::Client & client)
 {}
-void LLUpdateChecker::check(std::string const & protocolVersion, std::string const & hostUrl, 
+void LLUpdateChecker::checkVersion(std::string const & protocolVersion, std::string const & hostUrl, 
 								  std::string const & servicePath, std::string channel, std::string version)
 {}
 LLUpdateDownloader::LLUpdateDownloader(Client & ) {}