diff options
author | 2014-07-30 14:24:38 +0000 | |
---|---|---|
committer | 2014-07-30 14:24:38 +0000 | |
commit | 6875012f329f5b1081c95cca8b1cea6e747302c5 (patch) | |
tree | b00adc4ad2d066d915ad65f1592319f5547b6794 | |
parent | eb570b4839a5a38967cf15500ddabb0da2ccc7ea (diff) |
render_screen_list::contains - instead of false/true, return number of same indices found in view
-rw-r--r-- | src/emu/render.c | 4 | ||||
-rw-r--r-- | src/emu/render.h | 7 |
2 files changed, 6 insertions, 5 deletions
diff --git a/src/emu/render.c b/src/emu/render.c index bfcd6fbe7b9..71fd90d281e 100644 --- a/src/emu/render.c +++ b/src/emu/render.c @@ -1072,13 +1072,13 @@ int render_target::configured_view(const char *viewname, int targetindex, int nu for (view = view_by_index(viewindex = 0); view != NULL; view = view_by_index(++viewindex)) { const render_screen_list &viewscreens = view->screens(); - if (viewscreens.count() == 1 && viewscreens.contains(*screen)) - break; if (viewscreens.count() == 0) { view = NULL; break; } + else if (viewscreens.count() == viewscreens.contains(*screen)) + break; } } diff --git a/src/emu/render.h b/src/emu/render.h index 381781f2ab9..2e5443bcd58 100644 --- a/src/emu/render.h +++ b/src/emu/render.h @@ -253,11 +253,12 @@ public: void reset() { m_list.reset(); } // query - bool contains(screen_device &screen) const + int contains(screen_device &screen) const { + int count = 0; for (item *curitem = m_list.first(); curitem != NULL; curitem = curitem->m_next) - if (&curitem->m_screen == &screen) return true; - return false; + if (&curitem->m_screen == &screen) count++; + return count; } private: |