private static IEnumerable<DirectoryInfo> EnumerateParents(DirectoryInfo dir) { while (true) { yield return dir; if (dir.Parent == null) yield break; dir = dir.Parent; } } private static string ScanCommonPrefix(IEnumerable<string> args)