[mapguide-commits] r4489 -
sandbox/adsk/2.1/Common/MapGuideCommon/Services
svn_mapguide at osgeo.org
svn_mapguide at osgeo.org
Thu Jan 7 15:26:31 EST 2010
Author: brucedechant
Date: 2010-01-07 15:26:31 -0500 (Thu, 07 Jan 2010)
New Revision: 4489
Modified:
sandbox/adsk/2.1/Common/MapGuideCommon/Services/SiteManager.cpp
Log:
Fix for trac ticket 1131 - Load balancing doesn't support fail over
http://trac.osgeo.org/mapguide/ticket/1131
Notes:
- Small update to GetSiteInfo
Modified: sandbox/adsk/2.1/Common/MapGuideCommon/Services/SiteManager.cpp
===================================================================
--- sandbox/adsk/2.1/Common/MapGuideCommon/Services/SiteManager.cpp 2010-01-07 17:40:26 UTC (rev 4488)
+++ sandbox/adsk/2.1/Common/MapGuideCommon/Services/SiteManager.cpp 2010-01-07 20:26:31 UTC (rev 4489)
@@ -479,7 +479,7 @@
{
ACE_MT(ACE_GUARD_RETURN(ACE_Recursive_Thread_Mutex, ace_mon, m_mutex, NULL));
- MgSiteInfo* matchingSiteInfo = NULL;
+ Ptr<MgSiteInfo> matchingSiteInfo;
for (INT32 i = 0; i < (INT32)m_sites.size(); i++)
{
@@ -490,12 +490,12 @@
siteInfo->GetPort(MgSiteInfo::Client) == port ||
siteInfo->GetPort(MgSiteInfo::Admin) == port))
{
- matchingSiteInfo = siteInfo;
+ matchingSiteInfo = SAFE_ADDREF(siteInfo);
break;
}
}
- return SAFE_ADDREF(matchingSiteInfo);
+ return matchingSiteInfo.Detach();
}
///----------------------------------------------------------------------------
@@ -506,7 +506,7 @@
///----------------------------------------------------------------------------
MgSiteInfo* MgSiteManager::GetSiteInfo(CREFSTRING hexString)
{
- MgSiteInfo* matchingSiteInfo = NULL;
+ Ptr<MgSiteInfo> matchingSiteInfo;
if(hexString.length() >= MgSiteInfo::HexStringLength)
{
@@ -534,13 +534,16 @@
siteInfo->GetPort(MgSiteInfo::Client) == clientPort ||
siteInfo->GetPort(MgSiteInfo::Admin) == adminPort))
{
- matchingSiteInfo = siteInfo;
+ matchingSiteInfo = SAFE_ADDREF(siteInfo);
break;
}
}
}
- return SAFE_ADDREF(matchingSiteInfo);
+ if (matchingSiteInfo == NULL)
+ matchingSiteInfo = new MgSiteInfo(hexString);
+
+ return matchingSiteInfo.Detach();
}
MgSiteVector* MgSiteManager::GetSites()
More information about the mapguide-commits
mailing list