From d992c62d6f0cb9c7645971b5f05c1cb7808f162e Mon Sep 17 00:00:00 2001 From: Hylke Bons Date: Sat, 24 Dec 2011 20:04:59 +0100 Subject: [PATCH] mac watcher: check files twice a minute --- SparkleShare/Mac/SparkleMacWatcher.cs | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/SparkleShare/Mac/SparkleMacWatcher.cs b/SparkleShare/Mac/SparkleMacWatcher.cs index cb09d80b..75123de2 100755 --- a/SparkleShare/Mac/SparkleMacWatcher.cs +++ b/SparkleShare/Mac/SparkleMacWatcher.cs @@ -30,6 +30,7 @@ namespace SparkleShare { private FileSystemInfo last_changed; private Thread thread; + private int poll_count = 0; public SparkleMacWatcher (string path) @@ -50,7 +51,8 @@ namespace SparkleShare { Changed (relative_path); } - Thread.Sleep (10 * 1000); + Thread.Sleep (7500); + this.poll_count++; } })); @@ -73,11 +75,15 @@ namespace SparkleShare { } } - foreach (FileInfo info in parent.GetFiles ()) { - if (!info.FullName.Contains ("/.")) { - if (DateTime.Compare (info.LastWriteTime, this.last_changed.LastWriteTime) > 0) - this.last_changed = (FileSystemInfo) info; + if (this.poll_count >= 8) { + foreach (FileInfo info in parent.GetFiles ()) { + if (!info.FullName.Contains ("/.")) { + if (DateTime.Compare (info.LastWriteTime, this.last_changed.LastWriteTime) > 0) + this.last_changed = info; + } } + + this.poll_count = 0; } } catch (Exception) {