summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/fileio.cpp
diff options
context:
space:
mode:
author couriersud <couriersud@arcor.de>2016-06-24 23:28:42 +0200
committer couriersud <couriersud@arcor.de>2016-06-24 23:28:42 +0200
commit798bb7956756fcb8f356dcaeeaf7fe1e31dab8da (patch)
tree038713be6e2512f886d55a9ac9a9afc92a70d9c8 /src/emu/fileio.cpp
parentbc37304ef96e335810e7dc10367e7e7faa2d3c1d (diff)
parentb3491464e41b6afea81e188fe6a350d4f778854b (diff)
Merge remote-tracking branch 'origin/master' into netlist_dev
Diffstat (limited to 'src/emu/fileio.cpp')
-rw-r--r--src/emu/fileio.cpp14
1 files changed, 5 insertions, 9 deletions
diff --git a/src/emu/fileio.cpp b/src/emu/fileio.cpp
index 78be6e10faa..1fe26071acb 100644
--- a/src/emu/fileio.cpp
+++ b/src/emu/fileio.cpp
@@ -89,9 +89,6 @@ file_enumerator::file_enumerator(const char *searchpath)
file_enumerator::~file_enumerator()
{
- // close anything open
- if (m_curdir != nullptr)
- osd_closedir(m_curdir);
}
@@ -100,30 +97,29 @@ file_enumerator::~file_enumerator()
// in the search path
//-------------------------------------------------
-const osd_directory_entry *file_enumerator::next()
+const osd::directory::entry *file_enumerator::next()
{
// loop over potentially empty directories
while (1)
{
// if no open directory, get the next path
- while (m_curdir == nullptr)
+ while (!m_curdir)
{
// if we fail to get anything more, we're done
if (!m_iterator.next(m_pathbuffer))
return nullptr;
// open the path
- m_curdir = osd_opendir(m_pathbuffer.c_str());
+ m_curdir = osd::directory::open(m_pathbuffer.c_str());
}
// get the next entry from the current directory
- const osd_directory_entry *result = osd_readdir(m_curdir);
+ const osd::directory::entry *result = m_curdir->read();
if (result != nullptr)
return result;
// we're done; close this directory
- osd_closedir(m_curdir);
- m_curdir = nullptr;
+ m_curdir.reset();
}
}