diff options
Diffstat (limited to 'linden/indra/newview/llviewerobjectlist.cpp')
-rw-r--r-- | linden/indra/newview/llviewerobjectlist.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/linden/indra/newview/llviewerobjectlist.cpp b/linden/indra/newview/llviewerobjectlist.cpp index e0741e7..4961f48 100644 --- a/linden/indra/newview/llviewerobjectlist.cpp +++ b/linden/indra/newview/llviewerobjectlist.cpp | |||
@@ -874,6 +874,10 @@ void LLViewerObjectList::killObjects(LLViewerRegion *regionp) | |||
874 | if (objectp->mRegionp == regionp) | 874 | if (objectp->mRegionp == regionp) |
875 | { | 875 | { |
876 | killObject(objectp); | 876 | killObject(objectp); |
877 | |||
878 | // invalidate region pointer. region will become invalid, but | ||
879 | // refcounted objects may survive the cleanDeadObjects() call below | ||
880 | objectp->mRegionp = NULL; | ||
877 | } | 881 | } |
878 | } | 882 | } |
879 | 883 | ||
@@ -1027,6 +1031,7 @@ void LLViewerObjectList::renderObjectsForMap(LLNetMap &netmap) | |||
1027 | LLColor4 group_own_below_water_color = | 1031 | LLColor4 group_own_below_water_color = |
1028 | gColors.getColor( "NetMapGroupOwnBelowWater" ); | 1032 | gColors.getColor( "NetMapGroupOwnBelowWater" ); |
1029 | 1033 | ||
1034 | F32 max_radius = gSavedSettings.getF32("MiniMapPrimMaxRadius"); | ||
1030 | 1035 | ||
1031 | for (S32 i = 0; i < mMapObjects.count(); i++) | 1036 | for (S32 i = 0; i < mMapObjects.count(); i++) |
1032 | { | 1037 | { |
@@ -1042,6 +1047,9 @@ void LLViewerObjectList::renderObjectsForMap(LLNetMap &netmap) | |||
1042 | 1047 | ||
1043 | F32 approx_radius = (scale.mV[VX] + scale.mV[VY]) * 0.5f * 0.5f * 1.3f; // 1.3 is a fudge | 1048 | F32 approx_radius = (scale.mV[VX] + scale.mV[VY]) * 0.5f * 0.5f * 1.3f; // 1.3 is a fudge |
1044 | 1049 | ||
1050 | // DEV-17370 - megaprims of size > 4096 cause lag. (go figger.) | ||
1051 | approx_radius = llmin(approx_radius, max_radius); | ||
1052 | |||
1045 | LLColor4U color = above_water_color; | 1053 | LLColor4U color = above_water_color; |
1046 | if( objectp->permYouOwner() ) | 1054 | if( objectp->permYouOwner() ) |
1047 | { | 1055 | { |