diff options
| -rwxr-xr-x | indra/newview/llviewerregion.cpp | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/indra/newview/llviewerregion.cpp b/indra/newview/llviewerregion.cpp index 452dcdd8fd..6c0e25ae39 100755 --- a/indra/newview/llviewerregion.cpp +++ b/indra/newview/llviewerregion.cpp @@ -2467,7 +2467,10 @@ void LLViewerRegion::decodeBoundingInfo(LLVOCacheEntry* entry)  		//set parent id  		U32	parent_id = 0; -		LLViewerObject::unpackParentID(entry->getDP(), parent_id); +        if (entry->getDP()) // NULL if nothing cached +        { +            LLViewerObject::unpackParentID(entry->getDP(), parent_id); +        }  		if(parent_id != entry->getParentID())  		{				  			entry->setParentID(parent_id); @@ -2487,7 +2490,7 @@ void LLViewerRegion::decodeBoundingInfo(LLVOCacheEntry* entry)  	LLQuaternion rot;  	//decode spatial info and parent info -	U32 parent_id = LLViewerObject::extractSpatialExtents(entry->getDP(), pos, scale, rot); +	U32 parent_id = entry->getDP() ? LLViewerObject::extractSpatialExtents(entry->getDP(), pos, scale, rot) : entry->getParentID();  	U32 old_parent_id = entry->getParentID();  	bool same_old_parent = false;  | 
