Forget inotify watches when we remove a directory from internal structure Index: beagled/FileSystemQueryable/FileSystemQueryable.cs =================================================================== RCS file: /cvs/gnome/beagle/beagled/FileSystemQueryable/FileSystemQueryable.cs,v retrieving revision 1.70 diff -u -B -p -r1.70 FileSystemQueryable.cs --- beagled/FileSystemQueryable/FileSystemQueryable.cs 12 Aug 2005 14:13:55 -0000 1.70 +++ beagled/FileSystemQueryable/FileSystemQueryable.cs 12 Aug 2005 15:59:14 -0000 @@ -349,6 +349,11 @@ namespace Beagle.Daemon.FileSystemQuerya { if (Debug) Logger.Log.Debug ("Expired '{0}'", expired_path); + + DirectoryModel dir = (DirectoryModel) dir_models_by_id [unique_id]; + if (dir != null && dir.WatchHandle != null) + event_backend.ForgetWatch (dir.WatchHandle); + dir_models_by_path.Remove (expired_path); dir_models_by_id.Remove (unique_id); } @@ -1289,6 +1294,7 @@ namespace Beagle.Daemon.FileSystemQuerya return; } + dir.WatchHandle = null; RemoveDirectory (dir); } else { DirectoryModel dir;