OSDN Git Service

unittests/Support/Path.cpp: [recursive_directory_iterator] Work around for end iterator.
authorNAKAMURA Takumi <geek4civic@gmail.com>
Fri, 9 Dec 2011 23:20:03 +0000 (23:20 +0000)
committerNAKAMURA Takumi <geek4civic@gmail.com>
Fri, 9 Dec 2011 23:20:03 +0000 (23:20 +0000)
FIXME: It should be more robust.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146294 91177308-0d34-0410-b5e6-96231b3b80d8

unittests/Support/Path.cpp

index 51c62f2..c791184 100644 (file)
@@ -241,8 +241,11 @@ TEST_F(FileSystemTest, DirectoryIteration) {
   for (fs::recursive_directory_iterator i(Twine(TestDirectory)
          + "/recursive", ec), e; i != e; i.increment(ec)){
     ASSERT_NO_ERROR(ec);
-    if (path::filename(i->path()) == "p1")
+    if (path::filename(i->path()) == "p1") {
       i.pop();
+      // FIXME: recursive_directory_iterator should be more robust.
+      if (i == e) break;
+    }
     if (path::filename(i->path()) == "dontlookhere")
       i.no_push();
     visited.push_back(path::filename(i->path()));