[IE Samples] restored support for multiple -i args (#9190)

* restored support for  multiple -i args

* replaced return with break, moved return out of cycle
This commit is contained in:
Ivan Vikhrev 2021-12-14 11:37:50 +03:00 committed by GitHub
parent e06d9fdbb9
commit b6176fa768
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -67,22 +67,30 @@ void readInputFilesArguments(std::vector<std::string>& files, const std::string&
*/
void parseInputFilesArguments(std::vector<std::string>& files) {
std::vector<std::string> args = gflags::GetArgvs();
auto args_it = begin(args);
const auto is_image_arg = [](const std::string& s) {
return s == "-i" || s == "--images";
};
const auto is_arg = [](const std::string& s) {
return s.front() == '-';
};
const auto img_start = std::find_if(begin(args), end(args), is_image_arg);
if (img_start == end(args)) {
return;
}
const auto img_begin = std::next(img_start);
const auto img_end = std::find_if(img_begin, end(args), is_arg);
for (auto img = img_begin; img != img_end; ++img) {
readInputFilesArguments(files, *img);
while (args_it != args.end()) {
const auto img_start = std::find_if(args_it, end(args), is_image_arg);
if (img_start == end(args)) {
break;
}
const auto img_begin = std::next(img_start);
const auto img_end = std::find_if(img_begin, end(args), is_arg);
for (auto img = img_begin; img != img_end; ++img) {
readInputFilesArguments(files, *img);
}
args_it = img_end;
}
if (files.empty()) {
return;
}
size_t max_files = 20;
if (files.size() < max_files) {
slog::info << "Files were added: " << files.size() << slog::endl;