Merge pull request #4039 from drwtsn32x/filter-cleanup

Support additional Recycle Bin paths in default Windows filters
This commit is contained in:
warwickmm
2020-01-06 09:51:18 -08:00
committed by GitHub
+7 -9
View File
@@ -324,15 +324,15 @@ namespace Duplicati.Library.Utility
yield return FilterGroups.CreateWildcardFilter(@"*/Microsoft*/Windows/Cookies*");
yield return FilterGroups.CreateWildcardFilter(@"*/MSOCache*");
yield return FilterGroups.CreateWildcardFilter(@"*/NTUSER*");
yield return FilterGroups.CreateWildcardFilter(@"*/RECYCLER/");
yield return FilterGroups.CreateWildcardFilter(@"*UsrClass.dat*");
yield return FilterGroups.CreateWildcardFilter(@"*/UsrClass.dat");
yield return FilterGroups.CreateWildcardFilter(@"?:/hiberfil.sys");
yield return FilterGroups.CreateWildcardFilter(@"?:/pagefile.sys");
yield return FilterGroups.CreateWildcardFilter(@"?:/swapfile.sys");
yield return FilterGroups.CreateWildcardFilter(@"?:/$Recycle.Bin/");
yield return FilterGroups.CreateWildcardFilter(@"?:/Recycled/");
yield return FilterGroups.CreateWildcardFilter(@"?:/Recycler/");
yield return FilterGroups.CreateWildcardFilter(@"?:/System Volume Information/");
yield return FilterGroups.CreateWildcardFilter(@"?:/Windows/Installer*");
yield return FilterGroups.CreateWildcardFilter(@"?:/Windows/Temp*");
yield return FilterGroups.CreateWildcardFilter(@"*/ntuser.dat*");
yield return FilterGroups.CreateWildcardFilter(FilterGroups.CreateSpecialFolderFilter(Environment.SpecialFolder.Windows) + "Installer/");
foreach (var s in GetWindowsRegistryFilters() ?? new string[0])
{
@@ -351,7 +351,6 @@ namespace Duplicati.Library.Utility
yield return FilterGroups.CreateWildcardFilter(@"?:/autoexec.bat");
yield return FilterGroups.CreateSpecialFolderFilter(Environment.SpecialFolder.System);
yield return FilterGroups.CreateSpecialFolderFilter(Environment.SpecialFolder.SystemX86);
yield return FilterGroups.CreateSpecialFolderFilter(Environment.SpecialFolder.Windows);
yield return FilterGroups.CreateSpecialFolderFilter(Environment.SpecialFolder.Recent);
var windir = FilterGroups.CreateSpecialFolderFilter(Environment.SpecialFolder.Windows);
@@ -397,13 +396,12 @@ namespace Duplicati.Library.Utility
if (group.HasFlag(FilterGroup.TemporaryFiles))
{
yield return FilterGroups.CreateWildcardFilter(@"*/$RECYCLE.BIN/");
yield return FilterGroups.CreateWildcardFilter(@"*.tmp");
yield return FilterGroups.CreateWildcardFilter(@"*.tmp/");
yield return FilterGroups.CreateWildcardFilter(@"*/AppData/Local/Temp*");
yield return FilterGroups.CreateWildcardFilter(@"*/AppData/Temp*");
yield return FilterGroups.CreateWildcardFilter(@"*/Local Settings/Temp*");
yield return FilterGroups.CreateWildcardFilter(@"?:/Windows/Temp*");
yield return FilterGroups.CreateWildcardFilter(FilterGroups.CreateSpecialFolderFilter(Environment.SpecialFolder.Windows) + "Temp/");
}
if (group.HasFlag(FilterGroup.Applications))
@@ -584,7 +582,7 @@ namespace Duplicati.Library.Utility
// Duplicati matches filters against folder paths exactly.
// Meaning a filter for 'C:\Windows' won't match 'C:\Windows\'.
// So this makes sure special folder's filter's have a trailing directory separator.
// So this makes sure special folder filters have a trailing directory separator.
// (Alternatively, this could append '*' to all folder filters.)
return Common.IO.Util.AppendDirSeparator(filter);
}