diff options
| author | Nat Goodspeed <nat@lindenlab.com> | 2018-12-16 13:51:52 -0500 |
|---|---|---|
| committer | Nat Goodspeed <nat@lindenlab.com> | 2018-12-16 13:51:52 -0500 |
| commit | 11f23ca436d65c4a896be8718b2fb5dae1e5c314 (patch) | |
| tree | 2495ddf1fd00e936861d5ae18b3da4aeea862605 /indra/newview/llfolderviewmodelinventory.cpp | |
| parent | 4a136572857fcf5d5fd21789a777bbde67c1076d (diff) | |
| parent | f5f504b0f946582efc85b0e76f38e9242aed11bb (diff) | |
Automated merge with ssh://bitbucket.org/lindenlab/viewer-bugsplat
Diffstat (limited to 'indra/newview/llfolderviewmodelinventory.cpp')
| -rw-r--r-- | indra/newview/llfolderviewmodelinventory.cpp | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/indra/newview/llfolderviewmodelinventory.cpp b/indra/newview/llfolderviewmodelinventory.cpp index b93dfaf061..d40a7234e2 100644 --- a/indra/newview/llfolderviewmodelinventory.cpp +++ b/indra/newview/llfolderviewmodelinventory.cpp @@ -181,24 +181,26 @@ bool LLFolderViewModelItemInventory::filterChildItem( LLFolderViewModelItem* ite S32 filter_generation = filter.getCurrentGeneration(); bool continue_filtering = true; - if (item->getLastFilterGeneration() < filter_generation) + if (item) { - // Recursive application of the filter for child items (CHUI-849) - continue_filtering = item->filter( filter ); - } + if (item->getLastFilterGeneration() < filter_generation) + { + // Recursive application of the filter for child items (CHUI-849) + continue_filtering = item->filter(filter); + } - // Update latest generation to pass filter in parent and propagate up to root - if (item->passedFilter()) - { - LLFolderViewModelItemInventory* view_model = this; - - while(view_model && view_model->mMostFilteredDescendantGeneration < filter_generation) + // Update latest generation to pass filter in parent and propagate up to root + if (item->passedFilter()) { - view_model->mMostFilteredDescendantGeneration = filter_generation; - view_model = static_cast<LLFolderViewModelItemInventory*>(view_model->mParent); + LLFolderViewModelItemInventory* view_model = this; + + while (view_model && view_model->mMostFilteredDescendantGeneration < filter_generation) + { + view_model->mMostFilteredDescendantGeneration = filter_generation; + view_model = static_cast<LLFolderViewModelItemInventory*>(view_model->mParent); + } } } - return continue_filtering; } |
