Add missing null check to Directory enumerators
authorMarek Safar <marek.safar@gmail.com>
Mon, 19 Mar 2012 16:37:01 +0000 (16:37 +0000)
committerMarek Safar <marek.safar@gmail.com>
Mon, 19 Mar 2012 17:15:49 +0000 (17:15 +0000)
mcs/class/corlib/System.IO/DirectoryInfo.cs

index c419f7d14fab8bf46c1c1bcff414af2b40ca973e..0d9bc66b22923199bf74202bacf51d6e96a066b5 100644 (file)
@@ -391,6 +391,14 @@ namespace System.IO {
                }
 
                public IEnumerable<DirectoryInfo> EnumerateDirectories (string searchPattern, SearchOption searchOption)
+               {
+                       if (searchPattern == null)
+                               throw new ArgumentNullException ("searchPattern");
+
+                       return CreateEnumerateDirectoriesIterator (searchPattern, searchOption);
+               }
+
+               IEnumerable<DirectoryInfo> CreateEnumerateDirectoriesIterator (string searchPattern, SearchOption searchOption)
                {
                        foreach (string name in Directory.EnumerateDirectories (FullPath, searchPattern, searchOption))
                                yield return new DirectoryInfo (name);
@@ -407,6 +415,14 @@ namespace System.IO {
                }
 
                public IEnumerable<FileInfo> EnumerateFiles (string searchPattern, SearchOption searchOption)
+               {
+                       if (searchPattern == null)
+                               throw new ArgumentNullException ("searchPattern");
+
+                       return CreateEnumerateFilesIterator (searchPattern, searchOption);
+               }
+
+               IEnumerable<FileInfo> CreateEnumerateFilesIterator (string searchPattern, SearchOption searchOption)
                {
                        foreach (string name in Directory.EnumerateFiles (FullPath, searchPattern, searchOption))
                                yield return new FileInfo (name);