CHUI-211: Problem was due to a non-heap variable being deleted and then referenced later (which was found by ProductEngine). Also the crash occurred at a specifc location llpangelobjectinventory::reset() during a static_cast, so now using a dynamic_cast as a safeguard.
parent
f303eeccf7
commit
decd8a435d
|
|
@ -266,7 +266,8 @@ LLFolderView::~LLFolderView( void )
|
|||
mItems.clear();
|
||||
mFolders.clear();
|
||||
|
||||
delete mViewModel;
|
||||
//product engine bugfix, prevent deletion of non-heap data
|
||||
//delete mViewModel;
|
||||
mViewModel = NULL;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1565,7 +1565,12 @@ void LLPanelObjectInventory::reset()
|
|||
mFolders = LLUICtrlFactory::create<LLFolderView>(p);
|
||||
// this ensures that we never say "searching..." or "no items found"
|
||||
//TODO RN: make this happen by manipulating filter object directly
|
||||
static_cast<LLInventoryFilter*>(mFolders->getFolderViewModel()->getFilter())->setShowFolderState(LLInventoryFilter::SHOW_ALL_FOLDERS);
|
||||
LLInventoryFilter* inventoryFilter = dynamic_cast<LLInventoryFilter*>(mFolders->getFolderViewModel()->getFilter());
|
||||
if(inventoryFilter)
|
||||
{
|
||||
inventoryFilter->setShowFolderState(LLInventoryFilter::SHOW_ALL_FOLDERS);
|
||||
}
|
||||
|
||||
mFolders->setCallbackRegistrar(&mCommitCallbackRegistrar);
|
||||
|
||||
if (hasFocus())
|
||||
|
|
|
|||
Loading…
Reference in New Issue