Drop internal directory references when we add an exclude path. Index: beagled/FileSystemQueryable/FileNameFilter.cs =================================================================== RCS file: /cvs/gnome/beagle/beagled/FileSystemQueryable/FileNameFilter.cs,v retrieving revision 1.21 diff -u -B -p -r1.21 FileNameFilter.cs --- beagled/FileSystemQueryable/FileNameFilter.cs 10 Aug 2005 22:27:04 -0000 1.21 +++ beagled/FileSystemQueryable/FileNameFilter.cs 12 Aug 2005 14:11:07 -0000 @@ -118,6 +118,7 @@ namespace Beagle.Daemon.FileSystemQuerya switch (exclude.Type) { case ExcludeType.Path: exclude_paths.Add (exclude); + queryable.RemoveDirectory (exclude.Value); break; case ExcludeType.Pattern: exclude_patterns.Add (exclude); Index: beagled/FileSystemQueryable/FileSystemQueryable.cs =================================================================== RCS file: /cvs/gnome/beagle/beagled/FileSystemQueryable/FileSystemQueryable.cs,v retrieving revision 1.68 diff -u -B -p -r1.68 FileSystemQueryable.cs --- beagled/FileSystemQueryable/FileSystemQueryable.cs 11 Aug 2005 22:33:47 -0000 1.68 +++ beagled/FileSystemQueryable/FileSystemQueryable.cs 12 Aug 2005 14:11:09 -0000 @@ -568,6 +568,13 @@ namespace Beagle.Daemon.FileSystemQuerya ThisScheduler.Add (task); } + public void RemoveDirectory (string path) + { + DirectoryModel dir = GetDirectoryModelByPath (path); + if (dir != null) + RemoveDirectory (dir); + } + private void MoveDirectory (DirectoryModel dir, DirectoryModel new_parent, // or null if we are just renaming string new_name)