summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/validity.cpp
diff options
context:
space:
mode:
author AJR <ajrhacker@users.noreply.github.com>2016-01-02 17:18:26 -0500
committer AJR <ajrhacker@users.noreply.github.com>2016-01-02 17:45:03 -0500
commita0d3f281bae6ee29dc6b86bf18dd8fd2a29fdd9b (patch)
treef61129a1597b3090c1aab6059992e641f77d41c6 /src/emu/validity.cpp
parent6b443c58777a56cc9ab0a0dcdb254fd89f021098 (diff)
Fix errors from faulty merge (nw)
Diffstat (limited to 'src/emu/validity.cpp')
-rw-r--r--src/emu/validity.cpp31
1 files changed, 22 insertions, 9 deletions
diff --git a/src/emu/validity.cpp b/src/emu/validity.cpp
index 52db138da8f..cd33ed1bc43 100644
--- a/src/emu/validity.cpp
+++ b/src/emu/validity.cpp
@@ -609,8 +609,8 @@ void validity_checker::validate_roms()
device_iterator deviter(m_current_config->root_device());
for (device_t *device = deviter.first(); device != nullptr; device = deviter.next())
{
- // for non-root devices, track the current device
- m_current_device = (device->owner() == nullptr) ? nullptr : device;
+ // track the current device
+ m_current_device = device;
// scan the ROM entries for this device
const char *last_region_name = "???";
@@ -874,8 +874,8 @@ void validity_checker::validate_inputs()
if (device->input_ports() == nullptr)
continue;
- // for non-root devices, track the current device
- m_current_device = (device == &m_current_config->root_device()) ? nullptr : device;
+ // track the current device
+ m_current_device = device;
// allocate the input ports
ioport_list portlist;
@@ -977,8 +977,8 @@ void validity_checker::validate_devices()
device_iterator iter(m_current_config->root_device());
for (const device_t *device = iter.first(); device != nullptr; device = iter.next())
{
- // for non-root devices, track the current device
- m_current_device = (device == &m_current_config->root_device()) ? nullptr : device;
+ // track the current device
+ m_current_device = device;
// validate the device tag
validate_tag(device->basetag());
@@ -1042,9 +1042,9 @@ void validity_checker::build_output_prefix(std::string &str)
// start empty
str.clear();
- // if we have a current device, indicate that
- if (m_current_device != nullptr)
- str.append(m_current_device->name()).append(" device '").append(m_current_device->tag()).append("': ");
+ // if we have a current (non-root) device, indicate that
+ if (m_current_device != nullptr && m_current_device->owner() != nullptr)
+ str.append(m_current_device->name()).append(" device '").append(m_current_device->tag()+1).append("': ");
// if we have a current port, indicate that as well
if (m_current_ioport != nullptr)
@@ -1115,3 +1115,16 @@ void validity_checker::output_via_delegate(osd_output_channel channel, const cha
this->chain_output(channel, format, argptr);
va_end(argptr);
}
+
+//-------------------------------------------------
+// output_indented_errors - helper to output error
+// and warning messages with header and indents
+//-------------------------------------------------
+void validity_checker::output_indented_errors(std::string &text, const char *header)
+{
+ // remove trailing newline
+ if (text[text.size()-1] == '\n')
+ text.erase(text.size()-1, 1);
+ strreplace(text, "\n", "\n ");
+ output_via_delegate(OSD_OUTPUT_CHANNEL_ERROR, "%s:\n %s\n", header, text.c_str());
+}