diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
index 7bcbf819e4f0984a025bf79edba797ffc7d6e071..57a9db9337800642438537242feb287dda2f0066 100644
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -13285,7 +13285,7 @@
         <key>Type</key>
         <string>Boolean</string>
         <key>Value</key>
-        <string>1</string>
+        <integer>1</integer>
     </map>
     <key>UploadBakedTexOld</key>
     <map>
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index 29680093f917430f9e111646fa561cc389206905..acbcb4f8b7e274170c9dbd177e92d6f7548a7390 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -5807,29 +5807,10 @@ void LLAppViewer::launchUpdater()
 */
 void LLAppViewer::showReleaseNotesIfRequired()
 {
-	if (!gLastRunVersion.empty() && gSavedSettings.getBOOL("UpdaterShowReleaseNotes"))
+	if (LLVersionInfo::getChannelAndVersion() != gLastRunVersion && gSavedSettings.getBOOL("UpdaterShowReleaseNotes"))
 	{
-		try
-		{
-			boost::regex expr("(?<chan>[\\w\\s]+)\\s(?<maj>\\d+)\\.(?<min>\\d+)\\.(?<patch>\\d+)\\.(?<build>\\d+)", boost::regex::perl | boost::regex::icase);
-			boost::smatch matches;
-			if (boost::regex_search(gLastRunVersion, matches, expr))
-			{
-				if (LLVersionInfo::getChannel() == matches["chan"] &&  // don't show Release Notes when changing a channel
-					(LLVersionInfo::getBuild() > std::stoi(matches["build"])
-					|| LLVersionInfo::getPatch() > std::stoi(matches["patch"])
-					|| LLVersionInfo::getMinor() > std::stoi(matches["min"])
-					|| LLVersionInfo::getMajor() > std::stoi(matches["maj"])))
-				{
-					LLSD info(getViewerInfo());
-					LLWeb::loadURLInternal(info["VIEWER_RELEASE_NOTES_URL"]);
-				}
-			}
-		}
-		catch (boost::regex_error& e)
-		{
-			LL_WARNS() << "Can't parse previous run version, regex errpr: " << e.what() << LL_ENDL;
-		}
+		LLSD info(getViewerInfo());
+		LLWeb::loadURLInternal(info["VIEWER_RELEASE_NOTES_URL"]);
 	}
 }
 
diff --git a/indra/newview/llappviewer.h b/indra/newview/llappviewer.h
index b5e674bd7b3a8eb672226bc850e6a68138f1bd02..07bef11dbcf64cad2330d25e74b2bb5928e2475f 100644
--- a/indra/newview/llappviewer.h
+++ b/indra/newview/llappviewer.h
@@ -254,6 +254,8 @@ class LLAppViewer : public LLApp
 
     void sendLogoutRequest();
     void disconnectViewer();
+
+	void showReleaseNotesIfRequired();
 	
 	// *FIX: the app viewer class should be some sort of singleton, no?
 	// Perhaps its child class is the singleton and this should be an abstract base.