summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/sound/samples.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/sound/samples.cpp')
-rw-r--r--src/devices/sound/samples.cpp18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/devices/sound/samples.cpp b/src/devices/sound/samples.cpp
index 5c8d129b799..7663d921475 100644
--- a/src/devices/sound/samples.cpp
+++ b/src/devices/sound/samples.cpp
@@ -605,26 +605,28 @@ bool samples_device::load_samples()
// load the samples
int index = 0;
- for (const char *samplename = iter.first(); samplename != nullptr; index++, samplename = iter.next())
+ for (const char *samplename = iter.first(); samplename; index++, samplename = iter.next())
{
// attempt to open as FLAC first
emu_file file(machine().options().sample_path(), OPEN_FLAG_READ);
- osd_file::error filerr = file.open(util::string_format("%s" PATH_SEPARATOR "%s.flac", basename, samplename));
- if (filerr != osd_file::error::NONE && altbasename != nullptr)
+ std::error_condition filerr = file.open(util::string_format("%s" PATH_SEPARATOR "%s.flac", basename, samplename));
+ if (filerr && altbasename)
filerr = file.open(util::string_format("%s" PATH_SEPARATOR "%s.flac", altbasename, samplename));
// if not, try as WAV
- if (filerr != osd_file::error::NONE)
+ if (filerr)
filerr = file.open(util::string_format("%s" PATH_SEPARATOR "%s.wav", basename, samplename));
- if (filerr != osd_file::error::NONE && altbasename != nullptr)
+ if (filerr && altbasename)
filerr = file.open(util::string_format("%s" PATH_SEPARATOR "%s.wav", altbasename, samplename));
// if opened, read it
- if (filerr == osd_file::error::NONE)
+ if (!filerr)
+ {
read_sample(file, m_sample[index]);
- else if (filerr == osd_file::error::NOT_FOUND)
+ }
+ else
{
- logerror("%s: Sample '%s' NOT FOUND\n", tag(), samplename);
+ logerror("Error opening sample '%s' (%s:%d %s)\n", samplename, filerr.category().name(), filerr.value(), filerr.message());
ok = false;
}
}