summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorprep <prep@lindenlab.com>2012-05-02 13:34:36 -0400
committerprep <prep@lindenlab.com>2012-05-02 13:34:36 -0400
commit7ae9da8ab57a913c681ded674f48becdeafb7582 (patch)
treec120673e5ec8078de8c908f7d58df30f40f1f13d /indra
parent44387d5ff0ef3453204c137b4c3816a689b9f9ce (diff)
Handling mRenderableRestoreList data when closing pathfinding window
Diffstat (limited to 'indra')
-rw-r--r--indra/newview/llfloaterpathfindingconsole.cpp16
1 files changed, 10 insertions, 6 deletions
diff --git a/indra/newview/llfloaterpathfindingconsole.cpp b/indra/newview/llfloaterpathfindingconsole.cpp
index 9f7e4ab838..4c55e4debd 100644
--- a/indra/newview/llfloaterpathfindingconsole.cpp
+++ b/indra/newview/llfloaterpathfindingconsole.cpp
@@ -302,7 +302,7 @@ void LLFloaterPathfindingConsole::onClose(bool pIsAppQuitting)
setDefaultInputs();
setConsoleState(kConsoleStateUnknown);
-
+ cleanupRenderableRestoreItems();
LLFloater::onClose(pIsAppQuitting);
}
@@ -657,8 +657,8 @@ void LLFloaterPathfindingConsole::onAgentStateCB(LLPathfindingManager::EAgentSta
}
void LLFloaterPathfindingConsole::onRegionBoundaryCross()
-{
- initializeNavMeshZoneForCurrentRegion();
+{
+ initializeNavMeshZoneForCurrentRegion();
setRenderWorld(TRUE);
setRenderWorldMovablesOnly(FALSE);
}
@@ -708,6 +708,7 @@ void LLFloaterPathfindingConsole::setDefaultInputs()
setRenderExclusionVolumes(FALSE);
setRenderWaterPlane(FALSE);
setRenderXRay(FALSE);
+ setRenderWorldMovablesOnly(FALSE);
}
void LLFloaterPathfindingConsole::setConsoleState(EConsoleState pConsoleState)
@@ -992,13 +993,16 @@ void LLFloaterPathfindingConsole::initializeNavMeshZoneForCurrentRegion()
mNavMeshZone.initialize();
mNavMeshZone.enable();
mNavMeshZone.refresh();
- mRenderableRestoreList.clear();
+ cleanupRenderableRestoreItems();
}
void LLFloaterPathfindingConsole::cleanupRenderableRestoreItems()
{
- gPipeline.restorePermanentObjects( mRenderableRestoreList );
- mRenderableRestoreList.clear();
+ if ( !mRenderableRestoreList.empty() )
+ {
+ gPipeline.restorePermanentObjects( mRenderableRestoreList );
+ mRenderableRestoreList.clear();
+ }
}
void LLFloaterPathfindingConsole::setAgentState(LLPathfindingManager::EAgentState pAgentState)