aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/newview/llviewerobjectlist.cpp
diff options
context:
space:
mode:
authorMcCabe Maxsted2009-09-14 17:52:41 -0700
committerMcCabe Maxsted2009-09-14 17:52:41 -0700
commit7f090f7bec5264ca9e203c27dfb6b2992bb2bcbd (patch)
tree0243666021de3ae6ac61a6c6f4e57d42771fe964 /linden/indra/newview/llviewerobjectlist.cpp
parentApplied BlockClickSit debug setting from Emerald to block sit click action (diff)
downloadmeta-impy-7f090f7bec5264ca9e203c27dfb6b2992bb2bcbd.zip
meta-impy-7f090f7bec5264ca9e203c27dfb6b2992bb2bcbd.tar.gz
meta-impy-7f090f7bec5264ca9e203c27dfb6b2992bb2bcbd.tar.bz2
meta-impy-7f090f7bec5264ca9e203c27dfb6b2992bb2bcbd.tar.xz
Merged in jacek/next
Diffstat (limited to 'linden/indra/newview/llviewerobjectlist.cpp')
-rw-r--r--linden/indra/newview/llviewerobjectlist.cpp26
1 files changed, 12 insertions, 14 deletions
diff --git a/linden/indra/newview/llviewerobjectlist.cpp b/linden/indra/newview/llviewerobjectlist.cpp
index 9ccbf99..78c1730 100644
--- a/linden/indra/newview/llviewerobjectlist.cpp
+++ b/linden/indra/newview/llviewerobjectlist.cpp
@@ -74,6 +74,8 @@
74 74
75#include "llappviewer.h" 75#include "llappviewer.h"
76 76
77#include "primbackup.h"
78
77extern F32 gMinObjectDistance; 79extern F32 gMinObjectDistance;
78extern BOOL gAnimateTextures; 80extern BOOL gAnimateTextures;
79 81
@@ -163,8 +165,6 @@ U64 LLViewerObjectList::getIndex(const U32 local_id,
163 165
164BOOL LLViewerObjectList::removeFromLocalIDTable(const LLViewerObject &object) 166BOOL LLViewerObjectList::removeFromLocalIDTable(const LLViewerObject &object)
165{ 167{
166 if(object.getRegion())
167 {
168 U32 local_id = object.mLocalID; 168 U32 local_id = object.mLocalID;
169 LLHost region_host = object.getRegion()->getHost(); 169 LLHost region_host = object.getRegion()->getHost();
170 U32 ip = region_host.getAddress(); 170 U32 ip = region_host.getAddress();
@@ -176,9 +176,6 @@ BOOL LLViewerObjectList::removeFromLocalIDTable(const LLViewerObject &object)
176 return sIndexAndLocalIDToUUID.erase(indexid) > 0 ? TRUE : FALSE; 176 return sIndexAndLocalIDToUUID.erase(indexid) > 0 ? TRUE : FALSE;
177 } 177 }
178 178
179 return FALSE ;
180}
181
182void LLViewerObjectList::setUUIDAndLocal(const LLUUID &id, 179void LLViewerObjectList::setUUIDAndLocal(const LLUUID &id,
183 const U32 local_id, 180 const U32 local_id,
184 const U32 ip, 181 const U32 ip,
@@ -222,6 +219,11 @@ void LLViewerObjectList::processUpdateCore(LLViewerObject* objectp,
222 219
223 updateActive(objectp); 220 updateActive(objectp);
224 221
222 if(!just_created)
223 primbackup::getInstance()->prim_update(objectp);
224
225
226
225 if (just_created) 227 if (just_created)
226 { 228 {
227 gPipeline.addObject(objectp); 229 gPipeline.addObject(objectp);
@@ -251,6 +253,9 @@ void LLViewerObjectList::processUpdateCore(LLViewerObject* objectp,
251 objectp->mCreateSelected = false; 253 objectp->mCreateSelected = false;
252 gViewerWindow->getWindow()->decBusyCount(); 254 gViewerWindow->getWindow()->decBusyCount();
253 gViewerWindow->getWindow()->setCursor( UI_CURSOR_ARROW ); 255 gViewerWindow->getWindow()->setCursor( UI_CURSOR_ARROW );
256
257 primbackup::getInstance()->newprim(objectp);
258
254 } 259 }
255} 260}
256 261
@@ -827,17 +832,10 @@ void LLViewerObjectList::removeDrawable(LLDrawable* drawablep)
827 832
828 for (S32 i = 0; i < drawablep->getNumFaces(); i++) 833 for (S32 i = 0; i < drawablep->getNumFaces(); i++)
829 { 834 {
830 LLFace* facep = drawablep->getFace(i) ; 835 LLViewerObject* objectp = drawablep->getFace(i)->getViewerObject();
831 if(facep)
832 {
833 LLViewerObject* objectp = facep->getViewerObject();
834 if(objectp)
835 {
836 mSelectPickList.erase(objectp); 836 mSelectPickList.erase(objectp);
837 } 837 }
838 } 838 }
839 }
840}
841 839
842BOOL LLViewerObjectList::killObject(LLViewerObject *objectp) 840BOOL LLViewerObjectList::killObject(LLViewerObject *objectp)
843{ 841{
@@ -914,7 +912,7 @@ void LLViewerObjectList::killAllObjects()
914 if (!mMapObjects.empty()) 912 if (!mMapObjects.empty())
915 { 913 {
916 llwarns << "Some objects still on map object list!" << llendl; 914 llwarns << "Some objects still on map object list!" << llendl;
917 mMapObjects.clear(); 915 mActiveObjects.clear();
918 } 916 }
919} 917}
920 918