diff --git a/src/gui/core/timer.cpp b/src/gui/core/timer.cpp index 427ebeb54e72..00b03ddd2c1e 100644 --- a/src/gui/core/timer.cpp +++ b/src/gui/core/timer.cpp @@ -44,7 +44,13 @@ static std::map& get_timers() static std::map* ptimers = new std::map(); return *ptimers; } -/** The id of the event being executed, 0 if none. */ +/** + The id of the event being executed, 0 if none. + NOTE: it is possible that multiple timers are executed at the same time + if one of the timer starts an event loop for example if its handler + shows a dialog. In that case code that relies on this breaks. This + could probably fixed my making this a list/stack of ids. +*/ static std::size_t executing_id = 0; /** Did somebody try to remove the timer during its execution? */