/// <summary> /// WasUpdatedInArchive() examines whether any files or subfolders of a specified folder /// within an archive actually contained any files within this archive. Since a manifest /// contains a complete listing of all files and folders, including ones which are backed /// up by "external reference" (incremental backup), we must figure out if the file is /// actually present inside this archive when searching for it. /// </summary> /// <param name="Archive"></param> /// <param name="ManifestFolder"></param> /// <returns></returns> bool WasUpdatedInArchive(ArchiveFilename Archive, Manifest.Folder ManifestFolder) { foreach (Manifest.File File in ManifestFolder.Files) { if (File.ArchiveFile == Archive.ToString()) { return(true); } } foreach (Manifest.Folder Subfolder in ManifestFolder.Folders) { if (WasUpdatedInArchive(Archive, Subfolder)) { return(true); } } return(false); }