diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/emu/render.cpp | 4 | ||||
-rw-r--r-- | src/emu/rendlay.cpp | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/src/emu/render.cpp b/src/emu/render.cpp index 9c7e808bc9f..178a56c5c78 100644 --- a/src/emu/render.cpp +++ b/src/emu/render.cpp @@ -1262,10 +1262,10 @@ void render_target::compute_minimum_size(s32 &minwidth, s32 &minheight) // scan the current view for all screens for (layout_view::item &curitem : current_view().items()) { - if (curitem.screen()) + screen_device *const screen = curitem.screen(); + if (screen) { // use a hard-coded default visible area for vector screens - screen_device *const screen = curitem.screen(); const rectangle vectorvis(0, 639, 0, 479); const rectangle &visarea = (screen->screen_type() == SCREEN_TYPE_VECTOR) ? vectorvis : screen->visible_area(); diff --git a/src/emu/rendlay.cpp b/src/emu/rendlay.cpp index 0a88d42902b..d5b2e960834 100644 --- a/src/emu/rendlay.cpp +++ b/src/emu/rendlay.cpp @@ -4475,6 +4475,10 @@ layout_view::item::item( { throw layout_syntax_error(util::string_format("item of type %s require an element tag", itemnode.get_name())); } + + // this can be called before resolving tags, make it return something valid + m_bounds = m_rawbounds; + m_get_bounds = bounds_delegate(&emu::render::detail::bounds_step::get, &const_cast<emu::render::detail::bounds_step &>(m_bounds.front())); } |