beagle r4892 - trunk/beagle/beagled/ThunderbirdQueryable
- From: dbera svn gnome org
- To: svn-commits-list gnome org
- Subject: beagle r4892 - trunk/beagle/beagled/ThunderbirdQueryable
- Date: Sun, 21 Dec 2008 18:39:53 +0000 (UTC)
Author: dbera
Date: Sun Dec 21 18:39:52 2008
New Revision: 4892
URL: http://svn.gnome.org/viewvc/beagle?rev=4892&view=rev
Log:
Prevent the thunderbird indexer from starting twice.
Modified:
trunk/beagle/beagled/ThunderbirdQueryable/ThunderbirdQueryable.cs
Modified: trunk/beagle/beagled/ThunderbirdQueryable/ThunderbirdQueryable.cs
==============================================================================
--- trunk/beagle/beagled/ThunderbirdQueryable/ThunderbirdQueryable.cs (original)
+++ trunk/beagle/beagled/ThunderbirdQueryable/ThunderbirdQueryable.cs Sun Dec 21 18:39:52 2008
@@ -57,22 +57,26 @@
overriden_toindex = Environment.GetEnvironmentVariable ("TOINDEX_DIR");
GMime.Global.Init ();
-
- Inotify.Subscribe (IndexDirectory,
- OnInotifyEvent,
- Inotify.EventType.Create |
- Inotify.EventType.Delete |
- Inotify.EventType.DeleteSelf);
}
public override void Start ()
{
base.Start ();
+
+ // delay everything till the backend is actually started
+ Inotify.Subscribe (IndexDirectory,
+ OnInotifyEvent,
+ Inotify.EventType.Create |
+ Inotify.EventType.Delete |
+ Inotify.EventType.DeleteSelf);
ExceptionHandlingThread.Start (new ThreadStart (StartWorker));
}
private void StartWorker ()
{
+ if (indexer != null)
+ return; // already started
+
Logger.Log.Debug ("Starting Thunderbird backend");
Stopwatch watch = new Stopwatch ();
watch.Start ();
@@ -406,7 +410,7 @@
return indexable;
}
-
+
// ReadLine in stream requires the more "fancy" line ending "\r\n", which we do't have. So we use this
// implementation instead.
private static string ReadEncodingLine (System.IO.Stream stream)
@@ -423,7 +427,7 @@
byte[] tmp = new byte [str.Length + (int) 0.5 * str.Length];
Array.Copy (str, 0, tmp, 0, str.Length);
}
-
+
str [pos++] = (byte) c;
c = stream.ReadByte ();
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]