From 0f1d345e187c031ead1199c29674e93d922496cc Mon Sep 17 00:00:00 2001
From: "Boroondas Gupte (original fix by Aleric Inglewood)"
 <hg@boroon.dasgupta.ch>
Date: Sat, 16 Oct 2010 18:24:52 +0200
Subject: [PATCH] VWR-23459 FIXED Viewer compiled against Boost-1.42 crashes
 when certain command line options are given

used Aleric's SG2 changeset from http://svn.secondlife.com/trac/linden/changeset/3600
	patching file doc/contributions.txt
	Hunk #1 succeeded at 73 with fuzz 2.
	patching file indra/newview/llcommandlineparser.cpp
	Hunk #1 succeeded at 268 with fuzz 1 (offset -8 lines).

Edited doc/contributions.txt to create an entry for Aleric and moved the
issue ID there (patch wasn't able to place it at the right position,
lacking any context).
---
 doc/contributions.txt                 | 2 ++
 indra/newview/llcommandlineparser.cpp | 6 +++++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/doc/contributions.txt b/doc/contributions.txt
index d14e97644fd..fb9ba82e57d 100644
--- a/doc/contributions.txt
+++ b/doc/contributions.txt
@@ -13,6 +13,8 @@ Aimee Trescothick
 	VWR-4803
 Alejandro Rosenthal
 	VWR-1184
+Aleric Inglewood
+	SNOW-626
 Alissa Sabre
 	VWR-81
 	VWR-83
diff --git a/indra/newview/llcommandlineparser.cpp b/indra/newview/llcommandlineparser.cpp
index 2f99ca1247d..c7359a8865f 100644
--- a/indra/newview/llcommandlineparser.cpp
+++ b/indra/newview/llcommandlineparser.cpp
@@ -267,7 +267,11 @@ bool parseAndStoreResults(po::command_line_parser& clp)
     {
         clp.options(gOptionsDesc);
         clp.positional(gPositionalOptions);
-        clp.style(po::command_line_style::default_style 
+		// SNOW-626: Boost 1.42 erroneously added allow_guessing to the default style
+		// (see http://groups.google.com/group/boost-list/browse_thread/thread/545d7bf98ff9bb16?fwc=2&pli=1)
+		// Remove allow_guessing from the default style, because that is not allowed
+		// when we have options that are a prefix of other options (aka, --help and --helperuri).
+        clp.style((po::command_line_style::default_style & ~po::command_line_style::allow_guessing)
                   | po::command_line_style::allow_long_disguise);
         po::basic_parsed_options<char> opts = clp.run();
         po::store(opts, gVariableMap);
-- 
GitLab