diff options
| author | Graham Madarasz <graham@lindenlab.com> | 2013-05-11 08:11:13 -0700 | 
|---|---|---|
| committer | Graham Madarasz <graham@lindenlab.com> | 2013-05-11 08:11:13 -0700 | 
| commit | a0998157746d0429d5b8e75fea973c433dcfd3c4 (patch) | |
| tree | dd827016316a5e0fece141013e8018cd7f260268 /indra/newview/llviewerobject.cpp | |
| parent | e413f4b335a2f4f5a1ca151c8ab67324a72ebaee (diff) | |
| parent | 9b632f060b7b9dcd33858b5c31d538760d0666ae (diff) | |
Merge vwr-dev-mat
Diffstat (limited to 'indra/newview/llviewerobject.cpp')
| -rwxr-xr-x | indra/newview/llviewerobject.cpp | 28 | 
1 files changed, 14 insertions, 14 deletions
| diff --git a/indra/newview/llviewerobject.cpp b/indra/newview/llviewerobject.cpp index b8321c805f..2965d968a3 100755 --- a/indra/newview/llviewerobject.cpp +++ b/indra/newview/llviewerobject.cpp @@ -2714,25 +2714,25 @@ void LLViewerObject::processTaskInvFile(void** user_data, S32 error_code, LLExtS  		if (object->loadTaskInvFile(ft->mFilename))  		{ -		LLInventoryObject::object_list_t::iterator it = object->mInventory->begin(); -		LLInventoryObject::object_list_t::iterator end = object->mInventory->end(); -		std::list<LLUUID>& pending_lst = object->mPendingInventoryItemsIDs; +			LLInventoryObject::object_list_t::iterator it = object->mInventory->begin(); +			LLInventoryObject::object_list_t::iterator end = object->mInventory->end(); +			std::list<LLUUID>& pending_lst = object->mPendingInventoryItemsIDs; -		for (; it != end && pending_lst.size(); ++it) -		{ -			LLViewerInventoryItem* item = dynamic_cast<LLViewerInventoryItem*>(it->get()); -			if(item && item->getType() != LLAssetType::AT_CATEGORY) +			for (; it != end && pending_lst.size(); ++it)  			{ -				std::list<LLUUID>::iterator id_it = std::find(pending_lst.begin(), pending_lst.begin(), item->getAssetUUID()); -				if (id_it != pending_lst.end()) +				LLViewerInventoryItem* item = dynamic_cast<LLViewerInventoryItem*>(it->get()); +				if(item && item->getType() != LLAssetType::AT_CATEGORY)  				{ -					pending_lst.erase(id_it); +					std::list<LLUUID>::iterator id_it = std::find(pending_lst.begin(), pending_lst.begin(), item->getAssetUUID()); +					if (id_it != pending_lst.end()) +					{ +						pending_lst.erase(id_it); +					}  				}  			}  		} -	} -	else -	{ +		else +		{  			// MAINT-2597 - crash when trying to edit a no-mod object  			// Somehow get an contents inventory response, but with an invalid stream (possibly 0 size?)  			// Stated repro was specific to no-mod objects so failing without user interaction should be safe. @@ -4144,7 +4144,7 @@ S32 LLViewerObject::setTESpecularMapCore(const U8 te, LLViewerTexture *image)  		if (mat)  		{  			mat->setSpecularID(uuid); -		} +		}		  		setChanged(TEXTURE);  		if (mDrawable.notNull())  		{ | 
