[tasque] [rtm] Do not start RTM refresher thread until we're configured



commit 818e4b0d3124582f0346a15a2cff5edf4f4dfd03
Author: Josef Bacik <josef redhat com>
Date:   Mon Sep 20 17:05:55 2010 -0400

    [rtm] Do not start RTM refresher thread until we're configured
    
    Fixes BGO #570517

 src/Backends/Rtm/RtmBackend.cs |   16 ++++++++++++++--
 1 files changed, 14 insertions(+), 2 deletions(-)
---
diff --git a/src/Backends/Rtm/RtmBackend.cs b/src/Backends/Rtm/RtmBackend.cs
index c0ccc9e..98acec8 100644
--- a/src/Backends/Rtm/RtmBackend.cs
+++ b/src/Backends/Rtm/RtmBackend.cs
@@ -195,6 +195,9 @@ namespace Tasque.Backends.RtmBackend
 		{
 			Logger.Debug("Refreshing data...");
 
+			if (!runningRefreshThread)
+				StartThread();
+
 			runRefreshEvent.Set();
 			
 			Logger.Debug("Done refreshing data!");
@@ -239,7 +242,16 @@ namespace Tasque.Backends.RtmBackend
 
 			if(rtm == null)
 				rtm = new Rtm(apiKey, sharedSecret);
-			
+	
+			StartThread();	
+		}
+
+		public void StartThread()
+		{
+			if (!configured) {
+				Logger.Debug("Backend not configured, not starting thread");
+				return;
+			}
 			runningRefreshThread = true;
 			Logger.Debug("ThreadState: " + refreshThread.ThreadState);
 			if (refreshThread.ThreadState == ThreadState.Running) {
@@ -250,7 +262,7 @@ namespace Tasque.Backends.RtmBackend
 				}
 				refreshThread.Start();
 			}
-			runRefreshEvent.Set();		
+			runRefreshEvent.Set();
 		}
 
 		public void Cleanup()



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]