A recursive watch that hit the watch limit or an unreadable directory threw after adding watches for part of the tree, which stayed in the instance and kept counting against the user's limit. The call now leaves the instance as it found it. The test needs a second instance for the check, because a repeated watch on the same instance only updates the existing one.