diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/emu/softlist.c | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/src/emu/softlist.c b/src/emu/softlist.c index eece387a42c..d5317c7d898 100644 --- a/src/emu/softlist.c +++ b/src/emu/softlist.c @@ -612,19 +612,18 @@ void software_list_device::internal_validity_check(validity_checker &valid) { enum { NAME_LEN_PARENT = 8, NAME_LEN_CLONE = 16 }; - // first parse and output core errors if any - if (m_errors.len() > 0) - { - osd_printf_error("%s: Errors parsing software list:\n%s", filename(), errors_string()); - release(); - return; - } - softlist_map names; softlist_map descriptions; for (software_info *swinfo = first_software_info(); swinfo != NULL; swinfo = swinfo->next()) { - // First, check if the xml got corrupted: + // first parse and output core errors if any + if (m_errors.len() > 0) + { + osd_printf_error("%s: Errors parsing software list:\n%s", filename(), errors_string()); + break; + } + + // Now check if the xml data is valid: // Did we lost any description? if (swinfo->longname() == NULL) |