New attack and release behavior for a-comp
[ardour.git] / libs / pbd / crossthread.posix.cc
index 72a4fad810dcf221548f00526a6502f96e43513a..573671ba995801302441c19b1da4d3234175a921 100644 (file)
@@ -30,8 +30,11 @@ CrossThreadChannel::CrossThreadChannel (bool non_blocking)
 CrossThreadChannel::~CrossThreadChannel ()
 {
        if (receive_source) {
+               /* this disconnects it from any main context it was attached in
+                  in ::attach(), this prevent its callback from being invoked
+                  after the destructor has finished.
+               */
                g_source_destroy (receive_source);
-               receive_source = 0;
        }
 
        if (receive_channel) {