mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-09 16:24:57 +01:00
Addressing #7371: don't trigger session->undo() from non-GUI-thread
When triggering Session::undo() or Session::redo() from a non-GUI-thread (e.g. from a surface protocol) Ardour crashes if setting a CairoWidget dirty due to a ENSURE_GUI_THREAD assertion. (see #7371) By triggering undo by BasicUI::access_action() rather than by Session::undo() we ensure that the GUI thread will finally call Session::undo(). So more like a workaround ... but better than crashing :)
This commit is contained in:
parent
02ed6130e4
commit
f7452c2a3a
1 changed files with 2 additions and 2 deletions
|
|
@ -328,13 +328,13 @@ BasicUI::get_transport_speed ()
|
||||||
void
|
void
|
||||||
BasicUI::undo ()
|
BasicUI::undo ()
|
||||||
{
|
{
|
||||||
session->undo (1);
|
access_action ("Editor/undo");
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
BasicUI::redo ()
|
BasicUI::redo ()
|
||||||
{
|
{
|
||||||
session->redo (1);
|
access_action ("Editor/redo");
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue