diff options
| author | 2016-07-01 11:47:12 +0200 | |
|---|---|---|
| committer | 2016-07-01 11:47:12 +0200 | |
| commit | d34724b3ab53e0f1e26d0b7c6cee91c07b2b1458 (patch) | |
| tree | d83645167663d2c7105cb8348e60b69a3f8cade1 /src/emu/schedule.cpp | |
| parent | 0630edb2bfbf7bb5b2e2d5acefa4bfd4b494b5f9 (diff) | |
- removed FUNC_NULL macro
- made emu_timer register_save properly handle timer_expired_delegate()
- removed timer_expired_func and calls using it
Diffstat (limited to 'src/emu/schedule.cpp')
| -rw-r--r-- | src/emu/schedule.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/emu/schedule.cpp b/src/emu/schedule.cpp index cab7a4598d4..ca32bd6d56e 100644 --- a/src/emu/schedule.cpp +++ b/src/emu/schedule.cpp @@ -243,10 +243,15 @@ void emu_timer::register_save() // for non-device timers, it is an index based on the callback function name if (m_device == nullptr) { - name = m_callback.name(); + name = m_callback.name() ? m_callback.name() : "unnamed"; for (emu_timer *curtimer = machine().scheduler().first_timer(); curtimer != nullptr; curtimer = curtimer->next()) - if (!curtimer->m_temporary && curtimer->m_device == nullptr && strcmp(curtimer->m_callback.name(), m_callback.name()) == 0) - index++; + if (!curtimer->m_temporary && curtimer->m_device == nullptr) + { + if (curtimer->m_callback.name() != nullptr && m_callback.name() != nullptr && strcmp(curtimer->m_callback.name(), m_callback.name()) == 0) + index++; + else if (curtimer->m_callback.name() == nullptr && m_callback.name() == nullptr) + index++; + } } // for device timers, it is an index based on the device and timer ID |
