diff options
Diffstat (limited to 'indra')
| -rwxr-xr-x | indra/llui/llfolderviewitem.cpp | 11 | 
1 files changed, 7 insertions, 4 deletions
| diff --git a/indra/llui/llfolderviewitem.cpp b/indra/llui/llfolderviewitem.cpp index 0a06ce66aa..dc7e4777a7 100755 --- a/indra/llui/llfolderviewitem.cpp +++ b/indra/llui/llfolderviewitem.cpp @@ -1481,17 +1481,20 @@ void LLFolderViewFolder::extendSelectionTo(LLFolderViewItem* new_selection)  void LLFolderViewFolder::destroyView()  { -	std::for_each(mItems.begin(), mItems.end(), DeletePointer()); -	mItems.clear(); +    while (!mItems.empty()) +    { +    	LLFolderViewItem *itemp = mItems.back(); +    	itemp->destroyView(); // LLFolderViewItem::destroyView() removes entry from mItems +    }  	while (!mFolders.empty())  	{  		LLFolderViewFolder *folderp = mFolders.back(); -		folderp->destroyView(); // removes entry from mFolders +		folderp->destroyView(); // LLFolderVievFolder::destroyView() removes entry from mFolders  	}  	LLFolderViewItem::destroyView(); -	} +}  // extractItem() removes the specified item from the folder, but  // doesn't delete it. | 
