diff --git a/src/kits/tracker/FilePanelPriv.cpp b/src/kits/tracker/FilePanelPriv.cpp index 98afd8881f..c4479c1cb7 100644 --- a/src/kits/tracker/FilePanelPriv.cpp +++ b/src/kits/tracker/FilePanelPriv.cpp @@ -448,16 +448,26 @@ TFilePanel::SetMessage(BMessage* message) void TFilePanel::SetRefFilter(BRefFilter* filter) { - if (!filter) + if (filter == NULL) return; fPoseView->SetRefFilter(filter); fPoseView->CommitActivePose(); fPoseView->Refresh(); - FavoritesMenu* menu = dynamic_cast - (fMenuBar->FindItem(B_TRANSLATE("Favorites"))->Submenu()); - if (menu) - menu->SetRefFilter(filter); + + if (fMenuBar == NULL) + return; + + BMenuItem* favoritesItem = fMenuBar->FindItem(B_TRANSLATE("Favorites")); + if (favoritesItem == NULL) + return; + + FavoritesMenu* favoritesSubMenu + = dynamic_cast(favoritesItem->Submenu()); + if (favoritesSubMenu == NULL) + return; + + favoritesSubMenu->SetRefFilter(filter); }