diff --git a/source/MaterialXFormat/File.cpp b/source/MaterialXFormat/File.cpp index 956d51d2f5..f101844de7 100644 --- a/source/MaterialXFormat/File.cpp +++ b/source/MaterialXFormat/File.cpp @@ -185,7 +185,7 @@ FilePathVec FilePath::getFilesInDirectory(const string& extension) const #if defined(_WIN32) WIN32_FIND_DATAA fd; - FilePath query = extension.empty() ? *this : (*this / ("*." + extension)); + FilePath query = extension.empty() ? (*this / "*") : (*this / ("*." + extension)); HANDLE hFind = FindFirstFileA(query.asString().c_str(), &fd); if (hFind != INVALID_HANDLE_VALUE) { diff --git a/source/MaterialXTest/MaterialXFormat/File.cpp b/source/MaterialXTest/MaterialXFormat/File.cpp index 839fd2e19b..3f432e9d97 100644 --- a/source/MaterialXTest/MaterialXFormat/File.cpp +++ b/source/MaterialXTest/MaterialXFormat/File.cpp @@ -185,20 +185,23 @@ TEST_CASE("Get all files in directory", "[file]") mx::FilePathVec results; results = lightsDir.getFilesInDirectory("mtlx"); - for (const mx::FilePath& filename : results) + REQUIRE(results.size() > 0); + for (const mx::FilePath& filename : mtlxFilenames) { - REQUIRE(std::find(mtlxFilenames.begin(), mtlxFilenames.end(), filename) != mtlxFilenames.end()); + REQUIRE(std::find(results.begin(), results.end(), filename) != results.end()); } results = lightsDir.getFilesInDirectory("hdr"); - for (const mx::FilePath& filename : results) + REQUIRE(results.size() > 0); + for (const mx::FilePath& filename : hdrFilenames) { - REQUIRE(std::find(hdrFilenames.begin(), hdrFilenames.end(), filename) != hdrFilenames.end()); + REQUIRE(std::find(results.begin(), results.end(), filename) != results.end()); } results = lightsDir.getFilesInDirectory(); - for (const mx::FilePath& filename : results) + REQUIRE(results.size() > 0); + for (const mx::FilePath& filename : allFilesnames) { - REQUIRE(std::find(allFilesnames.begin(), allFilesnames.end(), filename) != allFilesnames.end()); + REQUIRE(std::find(results.begin(), results.end(), filename) != results.end()); } }