diff --git a/libs/ardour/ardour/session_event.h b/libs/ardour/ardour/session_event.h index 510dac01db..3f7fc6c092 100644 --- a/libs/ardour/ardour/session_event.h +++ b/libs/ardour/ardour/session_event.h @@ -141,7 +141,7 @@ public: void* operator new (size_t); void operator delete (void *ptr, size_t /*size*/); - static const framepos_t Immediate = 0; + static const framepos_t Immediate = -1; static void create_per_thread_pool (const std::string& n, uint32_t nitems); static void init_event_pool (); diff --git a/libs/ardour/session_events.cc b/libs/ardour/session_events.cc index 03afd54440..e529c1b94a 100644 --- a/libs/ardour/session_events.cc +++ b/libs/ardour/session_events.cc @@ -115,7 +115,7 @@ SessionEventManager::replace_event (SessionEvent::Type type, framepos_t frame, f void SessionEventManager::clear_events (SessionEvent::Type type) { - SessionEvent* ev = new SessionEvent (type, SessionEvent::Clear, 0, 0, 0); + SessionEvent* ev = new SessionEvent (type, SessionEvent::Clear, SessionEvent::Immediate, 0, 0); queue_event (ev); } @@ -168,7 +168,7 @@ SessionEventManager::merge_event (SessionEvent* ev) /* try to handle immediate events right here */ - if (ev->action_frame == 0) { + if (ev->action_frame == SessionEvent::Immediate) { process_event (ev); return; }