summaryrefslogtreecommitdiff
path: root/libs/ardour/session_state.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/session_state.cc')
-rw-r--r--libs/ardour/session_state.cc13
1 files changed, 6 insertions, 7 deletions
diff --git a/libs/ardour/session_state.cc b/libs/ardour/session_state.cc
index 0c2fa42073..1b93e41c3c 100644
--- a/libs/ardour/session_state.cc
+++ b/libs/ardour/session_state.cc
@@ -3534,19 +3534,18 @@ Session::cleanup_trash_sources (CleanupReport& rep)
void
Session::set_dirty ()
{
- /* never mark session dirty during loading */
+ /* return early if there's nothing to do */
+ if (dirty ()) {
+ return;
+ }
+ /* never mark session dirty during loading */
if (_state_of_the_state & Loading) {
return;
}
- bool was_dirty = dirty();
-
_state_of_the_state = StateOfTheState (_state_of_the_state | Dirty);
-
- if (!was_dirty) {
- DirtyChanged(); /* EMIT SIGNAL */
- }
+ DirtyChanged(); /* EMIT SIGNAL */
}
void