summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2025-01-17 01:05:01 +0100
committerCarl Hetherington <cth@carlh.net>2025-01-22 14:34:25 +0100
commit01a4a87366493d90b4a85ae354c2502f6572407e (patch)
tree029190b3dfaf676b304124cfac092b7dacaad477
parent8b3561f2acc149e0654b47558569e06a10e068c3 (diff)
Check _checked_screens cinema ID instead of checking each screen.
-rw-r--r--src/wx/screens_panel.cc10
1 files changed, 4 insertions, 6 deletions
diff --git a/src/wx/screens_panel.cc b/src/wx/screens_panel.cc
index 3fae01839..630e69494 100644
--- a/src/wx/screens_panel.cc
+++ b/src/wx/screens_panel.cc
@@ -209,13 +209,11 @@ ScreensPanel::add_cinema(CinemaID cinema_id, Cinema const& cinema, wxTreeListIte
auto screens = _cinema_list.screens(cinema_id);
if (_show_only_checked->get()) {
- auto iter = std::find_if(screens.begin(), screens.end(), [this](pair<ScreenID, dcpomatic::Screen> const& screen) {
- auto iter2 = std::find_if(_checked_screens.begin(), _checked_screens.end(), [screen](pair<CinemaID, ScreenID> const& checked) {
- return checked.second == screen.first;
- });
- return iter2 != _checked_screens.end();
+ auto iter = std::find_if(_checked_screens.begin(), _checked_screens.end(), [cinema_id](pair<CinemaID, ScreenID> const& checked) {
+ return checked.first == cinema_id;
});
- if (iter == screens.end()) {
+
+ if (iter == _checked_screens.end()) {
return {};
}
}