diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2016-12-24 02:41:25 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2016-12-24 02:41:25 -0500 |
| commit | e265d8efec50128c7db990a6d62c7ac39adcda3c (patch) | |
| tree | 70488e31605f71fbe35540037e3c12ede01cfac7 /BDInfo | |
| parent | d90494f204f013c2a078c769a4cde948a327b23c (diff) | |
fix bdinfo path
Diffstat (limited to 'BDInfo')
| -rw-r--r-- | BDInfo/BDROM.cs | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/BDInfo/BDROM.cs b/BDInfo/BDROM.cs index 97dbfbf3b..2faeb405e 100644 --- a/BDInfo/BDROM.cs +++ b/BDInfo/BDROM.cs @@ -77,6 +77,11 @@ namespace BDInfo public BDROM( string path, IFileSystem fileSystem, ITextEncoding textEncoding) { + if (string.IsNullOrWhiteSpace(path)) + { + throw new ArgumentNullException("path"); + } + _fileSystem = fileSystem; // // Locate BDMV directories. @@ -326,15 +331,28 @@ namespace BDInfo private FileSystemMetadata GetDirectoryBDMV( string path) { + if (string.IsNullOrWhiteSpace(path)) + { + throw new ArgumentNullException("path"); + } + FileSystemMetadata dir = _fileSystem.GetDirectoryInfo(path); while (dir != null) { - if (dir.Name == "BDMV") + if (string.Equals(dir.Name, "BDMV", StringComparison.OrdinalIgnoreCase)) { return dir; } - dir = _fileSystem.GetDirectoryInfo(Path.GetDirectoryName(dir.FullName)); + var parentFolder = Path.GetDirectoryName(dir.FullName); + if (string.IsNullOrEmpty(parentFolder)) + { + dir = null; + } + else + { + dir = _fileSystem.GetDirectoryInfo(parentFolder); + } } return GetDirectory("BDMV", _fileSystem.GetDirectoryInfo(path), 0); @@ -350,7 +368,7 @@ namespace BDInfo FileSystemMetadata[] children = _fileSystem.GetDirectories(dir.FullName).ToArray(); foreach (FileSystemMetadata child in children) { - if (child.Name == name) + if (string.Equals(child.Name, name, StringComparison.OrdinalIgnoreCase)) { return child; } |
