From 2d9afdaa03f0d44d05e3f2fb9d99dd5b059a9cac Mon Sep 17 00:00:00 2001
From: Josh Bell <josh@lindenlab.com>
Date: Tue, 18 Mar 2008 21:56:57 +0000
Subject: [PATCH] svn merge -r 82263:82563
 svn+ssh://svn.lindenlab.com/svn/linden/branches/Branch_1-19-2-Server -->
 release

Sprinkle "--location" pixie dust into farm curl calls
QAR-387 - pull in fix for missing abuse report snapshots (asset-id --> asset_id) / DEV-11758
comment --> template comment tweak by yoz for postcards
QAR-351 - Event queuing modifications
DEV-11639 - fix for llsdhttp.py to work with newer eventlet API
Rotating log_text_message is now part of the cron jobs
---
 etc/message.xml                     |  4 ++++
 indra/llcommon/llversionserver.h    |  4 ++--
 indra/llmessage/llmessageconfig.cpp |  8 ++++++++
 indra/llmessage/llmessageconfig.h   |  1 +
 indra/newview/llviewerregion.cpp    |  2 +-
 indra/test/llmessageconfig_tut.cpp  | 20 +++++++++++++++++++-
 6 files changed, 35 insertions(+), 4 deletions(-)

diff --git a/etc/message.xml b/etc/message.xml
index 1335e9711d..af3db1d9ad 100644
--- a/etc/message.xml
+++ b/etc/message.xml
@@ -258,6 +258,8 @@
 					<string>template</string>
 					<key>trusted-sender</key>
 					<boolean>true</boolean>
+					<key>only-send-latest</key>
+					<boolean>true</boolean>					
 				</map>
 
 				<key>SimulatorLoad</key>
@@ -537,6 +539,8 @@
 			<key>EstateChangeInfo</key>
 			<boolean>false</boolean>
 		
+			<key>FetchInventoryDescendents</key>
+			<boolean>true</boolean>
 		</map>
 
 		<key>messageBans</key>
diff --git a/indra/llcommon/llversionserver.h b/indra/llcommon/llversionserver.h
index 9c34852031..054d8fc896 100644
--- a/indra/llcommon/llversionserver.h
+++ b/indra/llcommon/llversionserver.h
@@ -34,8 +34,8 @@
 
 const S32 LL_VERSION_MAJOR = 1;
 const S32 LL_VERSION_MINOR = 19;
-const S32 LL_VERSION_PATCH = 1;
-const S32 LL_VERSION_BUILD = 81992;
+const S32 LL_VERSION_PATCH = 2;
+const S32 LL_VERSION_BUILD = 82393;
 
 const char * const LL_CHANNEL = "Second Life Server";
 
diff --git a/indra/llmessage/llmessageconfig.cpp b/indra/llmessage/llmessageconfig.cpp
index 78e22dd06d..550071fade 100644
--- a/indra/llmessage/llmessageconfig.cpp
+++ b/indra/llmessage/llmessageconfig.cpp
@@ -252,6 +252,14 @@ bool LLMessageConfig::isValidMessage(const std::string& msg_name)
 	return file.mMessages.has(msg_name);
 }
 
+//static
+bool LLMessageConfig::onlySendLatest(const std::string& msg_name)
+{
+	LLMessageConfigFile& file = LLMessageConfigFile::instance();
+	LLSD config = file.mMessages[msg_name];
+	return config["only-send-latest"].asBoolean();
+}
+
 bool LLMessageConfig::isCapBanned(const std::string& cap_name)
 {
 	return LLMessageConfigFile::instance().isCapBanned(cap_name);
diff --git a/indra/llmessage/llmessageconfig.h b/indra/llmessage/llmessageconfig.h
index eb3113b121..6814089b05 100644
--- a/indra/llmessage/llmessageconfig.h
+++ b/indra/llmessage/llmessageconfig.h
@@ -53,6 +53,7 @@ public:
 	static Flavor getMessageFlavor(const std::string& msg_name);
 	static SenderTrust getSenderTrustedness(const std::string& msg_name);
 	static bool isValidMessage(const std::string& msg_name);
+	static bool onlySendLatest(const std::string& msg_name);
 	static bool isCapBanned(const std::string& cap_name);
 	static LLSD getConfigForMessage(const std::string& msg_name);
 };
diff --git a/indra/newview/llviewerregion.cpp b/indra/newview/llviewerregion.cpp
index 88271aa7f6..12d461d0d7 100644
--- a/indra/newview/llviewerregion.cpp
+++ b/indra/newview/llviewerregion.cpp
@@ -950,6 +950,7 @@ void LLViewerRegion::updateCoarseLocations(LLMessageSystem* msg)
 {
 	//llinfos << "CoarseLocationUpdate" << llendl;
 	mMapAvatars.reset();
+	mMapAvatarIDs.reset(); // only matters in a rare case but it's good to be safe.
 
 	U8 x_pos = 0;
 	U8 y_pos = 0;
@@ -1382,7 +1383,6 @@ void LLViewerRegion::setSeedCapability(const std::string& url)
 	capabilityNames.append("MapLayer");
 	capabilityNames.append("MapLayerGod");
 	capabilityNames.append("NewFileAgentInventory");
-	capabilityNames.append("ParcelGodReserveForNewbie");
 	capabilityNames.append("ParcelPropertiesUpdate");
 	capabilityNames.append("ParcelVoiceInfoRequest");
 	capabilityNames.append("ProvisionVoiceAccountRequest");
diff --git a/indra/test/llmessageconfig_tut.cpp b/indra/test/llmessageconfig_tut.cpp
index df50d908c3..7bda48a0a8 100644
--- a/indra/test/llmessageconfig_tut.cpp
+++ b/indra/test/llmessageconfig_tut.cpp
@@ -35,7 +35,6 @@
 #include "lltut.h"
 #include "llsdserialize.h"
 #include "llfile.h"
-#include "lldir.h"
 #include "lltimer.h"
 #include "llframetimer.h"
 #include "llsdutil.h"
@@ -199,4 +198,23 @@ namespace tut
 					  LLMessageConfig::getServerDefaultFlavor(),
 					  LLMessageConfig::LLSD_FLAVOR);
 	}
+
+	template<> template<>
+	void LLMessageConfigTestObject::test<8>()
+		// tests that config changes are picked up/refreshed periodically
+	{
+		LLSD config;
+		config["serverDefaults"]["simulator"] = "template";
+		config["messages"]["msg1"]["flavor"] = "llsd";
+		config["messages"]["msg1"]["only-send-latest"] = true;
+		config["messages"]["msg2"]["flavor"] = "llsd";
+		config["messages"]["msg2"]["only-send-latest"] = false;
+		LLMessageConfig::useConfig(config);
+		ensure_equals("Ensure msg1 exists, sent latest-only",
+					  LLMessageConfig::onlySendLatest("msg1"),
+					  true);
+		ensure_equals("Ensure msg2 exists, sent latest-only",
+					  LLMessageConfig::onlySendLatest("msg2"),
+					  false);
+	}
 }
-- 
GitLab