diff --git a/indra/newview/llviewernetwork.cpp b/indra/newview/llviewernetwork.cpp
index a8e4f5c83d6011af258e701ef9b43466c2fc8f77..3007265d2168b9aca36e6d4aa4a1ad31a7760835 100644
--- a/indra/newview/llviewernetwork.cpp
+++ b/indra/newview/llviewernetwork.cpp
@@ -352,11 +352,19 @@ bool LLGridManager::addGrid(LLSD& grid_data)
 			}
 			else
 			{
+				if (grid_data.has(GRID_GATEKEEPER))
+				{
+					mGridList[grid][GRID_GATEKEEPER] = grid_data[GRID_GATEKEEPER];
+				}
 				LL_WARNS("GridManager")<<"duplicate grid id '"<<grid_id<<"' ignored"<<LL_ENDL;
 			}
 		}
 		else
 		{
+			if (grid_data.has(GRID_GATEKEEPER))
+			{
+				mGridList[grid][GRID_GATEKEEPER] = grid_data[GRID_GATEKEEPER];
+			}
 			LL_WARNS("GridManager")<<"duplicate grid name '"<<grid<<"' ignored"<<LL_ENDL;
 		}
 	}