in src/main/cpp/bootstrap/platformlauncher.cpp [620:645]
void PlatformLauncher::addFilesToClassPath(const char *dir, const char *subdir, const char *pattern) {
logMsg("addFilesToClassPath()\n\tdir: %s\n\tsubdir: %s\n\tpattern: %s", dir, subdir, pattern);
string path = dir;
path += '\\';
path += subdir;
path += '\\';
WIN32_FIND_DATA fd = {0};
string patternPath = path + pattern;
HANDLE hFind = FindFirstFile(patternPath.c_str(), &fd);
if (hFind == INVALID_HANDLE_VALUE) {
logMsg("Nothing found (%s)", patternPath.c_str());
return;
}
do {
string name = subdir;
name += fd.cFileName;
string fullName = path + fd.cFileName;
if (addedToCP.insert(name).second) {
addToClassPath(fullName.c_str());
} else {
logMsg("\"%s\" already added, skipping \"%s\"", name.c_str(), fullName.c_str());
}
} while (FindNextFile(hFind, &fd));
FindClose(hFind);
}