From 9465349813e9863c9268196218ba385c6fbfdc78 Mon Sep 17 00:00:00 2001
From: Rye Mutt <rye@alchemyviewer.org>
Date: Sat, 8 Aug 2020 16:35:57 -0400
Subject: [PATCH] Revert llsd to using std::map due to test failures

---
 indra/llcommon/llsd.cpp | 10 +++++-----
 indra/llcommon/llsd.h   | 10 +++++-----
 2 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/indra/llcommon/llsd.cpp b/indra/llcommon/llsd.cpp
index a55d2397ca8..d5b657d7ce1 100644
--- a/indra/llcommon/llsd.cpp
+++ b/indra/llcommon/llsd.cpp
@@ -141,8 +141,8 @@ class LLSD::Impl
 	virtual void erase(Integer)					{ }
 	virtual const LLSD& ref(Integer) const		{ return undef(); }
 
-	virtual const absl::node_hash_map<String, LLSD>& map() const { static const absl::node_hash_map<String, LLSD> empty; return empty; }
-	virtual absl::node_hash_map<String, LLSD>& map() { static absl::node_hash_map<String, LLSD> empty; return empty; }
+	virtual const std::map<String, LLSD>& map() const { static const std::map<String, LLSD> empty; return empty; }
+	virtual std::map<String, LLSD>& map() { static std::map<String, LLSD> empty; return empty; }
 	LLSD::map_const_iterator beginMap() const { return endMap(); }
 	LLSD::map_const_iterator endMap() const { return map().end(); }
 	virtual const std::vector<LLSD>& array() const { static const std::vector<LLSD> empty; return empty; }
@@ -364,7 +364,7 @@ namespace
 	class ImplMap : public LLSD::Impl
 	{
 	private:
-		typedef absl::node_hash_map<LLSD::String, LLSD>	DataMap;
+		typedef std::map<LLSD::String, LLSD>	DataMap;
 		
 		DataMap mData;
 		
@@ -956,8 +956,8 @@ const char *LLSD::dump(const LLSD &llsd)
 	return llsd_dump(llsd, false);
 }
 
-absl::node_hash_map<LLSD::String, LLSD>& LLSD::map() { return makeMap(impl).map(); }
-const absl::node_hash_map<LLSD::String, LLSD>& LLSD::map() const { return safe(impl).map(); }
+std::map<LLSD::String, LLSD>& LLSD::map() { return makeMap(impl).map(); }
+const std::map<LLSD::String, LLSD>& LLSD::map() const { return safe(impl).map(); }
 
 LLSD::map_iterator			LLSD::beginMap()		{ return map().begin(); }
 LLSD::map_iterator			LLSD::endMap()			{ return map().end(); }
diff --git a/indra/llcommon/llsd.h b/indra/llcommon/llsd.h
index 7aa610a1968..1d4826c6386 100644
--- a/indra/llcommon/llsd.h
+++ b/indra/llcommon/llsd.h
@@ -27,7 +27,7 @@
 #ifndef LL_LLSD_NEW_H
 #define LL_LLSD_NEW_H
 
-#include <absl/container/node_hash_map.h>
+#include <map>
 #include <string>
 #include <vector>
 
@@ -314,11 +314,11 @@ class LL_COMMON_API LLSD
 	//@{
 		int size() const;
 
-		typedef absl::node_hash_map<String, LLSD>::iterator		map_iterator;
-		typedef absl::node_hash_map<String, LLSD>::const_iterator	map_const_iterator;
+		typedef std::map<String, LLSD>::iterator		map_iterator;
+		typedef std::map<String, LLSD>::const_iterator	map_const_iterator;
 		
-		absl::node_hash_map<String, LLSD>& map();
-		const absl::node_hash_map<String, LLSD>& map() const;
+		std::map<String, LLSD>& map();
+		const std::map<String, LLSD>& map() const;
 
 		map_iterator		beginMap();
 		map_iterator		endMap();
-- 
GitLab