don't lock up on exit in cectray when receiving log messages while the window is...
authorLars Op den Kamp <lars@opdenkamp.eu>
Fri, 13 Dec 2013 10:23:36 +0000 (11:23 +0100)
committerLars Op den Kamp <lars@opdenkamp.eu>
Fri, 13 Dec 2013 10:25:42 +0000 (11:25 +0100)
src/LibCecTray/ui/CECTray.cs

index 8df996ecc374d6e786f3a0f526bcc2e3c472949c..197ce32818c0d7537d2349f2f4102ce4b58f0854 100644 (file)
@@ -174,6 +174,7 @@ namespace LibCECTray.ui
     protected override void Dispose(bool disposing)
     {
       Hide();
+      SuppressLogUpdates = true;
       if (disposing)
       {
         Controller.CECActions.SuppressUpdates = true;
@@ -311,6 +312,9 @@ namespace LibCECTray.ui
     delegate void UpdateLogCallback();
     private void UpdateLog()
     {
+      if (SuppressLogUpdates)
+        return;
+
       if (tbLog.InvokeRequired)
       {
         UpdateLogCallback d = UpdateLog;
@@ -568,6 +572,7 @@ namespace LibCECTray.ui
     #endregion
 
     #region Class members
+    private bool SuppressLogUpdates = false;
     private ConfigTab _selectedTab = ConfigTab.Configuration;
     private string _log = string.Empty;
     private CECController _controller;