gcc-11 compat, volatile atomic variables (2/2)

GUI part of previous commit.
This commit is contained in:
Robin Gareus 2021-03-19 06:20:21 +01:00
parent cc7b8b1bc5
commit 8b4edaa950
No known key found for this signature in database
GPG key ID: A090BCE02CF57F04
5 changed files with 16 additions and 11 deletions

View file

@ -44,6 +44,7 @@
#include <sigc++/signal.h>
#include "pbd/statefuldestructible.h"
#include "pbd/g_atomic_compat.h"
#include "temporal/beats.h"
@ -523,13 +524,14 @@ protected:
friend class DisplaySuspender;
virtual void suspend_route_redisplay () = 0;
virtual void resume_route_redisplay () = 0;
gint _suspend_route_redisplay_counter;
GATOMIC_QUAL gint _suspend_route_redisplay_counter;
};
class DisplaySuspender {
public:
DisplaySuspender() {
if (g_atomic_int_add(&PublicEditor::instance()._suspend_route_redisplay_counter, 1) == 0) {
if (g_atomic_int_add (&PublicEditor::instance()._suspend_route_redisplay_counter, 1) == 0) {
PublicEditor::instance().suspend_route_redisplay ();
}
}