48 CLIParser cliParser; |
48 CLIParser cliParser; |
49 Configuration configuration = cliParser.parse(cli.arguments()); |
49 Configuration configuration = cliParser.parse(cli.arguments()); |
50 std::unique_ptr<FilesystemCommand> command; |
50 std::unique_ptr<FilesystemCommand> command; |
51 if (configuration.parallelism == 1) command = std::make_unique<PlainFilesystemCommand>(); |
51 if (configuration.parallelism == 1) command = std::make_unique<PlainFilesystemCommand>(); |
52 else command = std::make_unique<ParallelFilesystemCommand>(); |
52 else command = std::make_unique<ParallelFilesystemCommand>(); |
53 command->process(cin, cout, configuration); |
53 command->process(STDIN_FILENO, STDOUT_FILENO, configuration); |
54 resultCode = CLI::EXIT_CODE_SUCCESS; |
54 resultCode = CLI::EXIT_CODE_SUCCESS; |
55 } catch (RelpipeWriterException e) { |
55 } catch (RelpipeWriterException e) { |
56 fwprintf(stderr, L"Caught Writer exception: %ls\n", e.getMessge().c_str()); |
56 fwprintf(stderr, L"Caught Writer exception: %ls\n", e.getMessge().c_str()); |
57 fwprintf(stderr, L"Debug: Input stream: eof=%ls, lastRead=%d\n", (cin.eof() ? L"true" : L"false"), cin.gcount()); |
57 fwprintf(stderr, L"Debug: Input stream: eof=%ls, lastRead=%d\n", (cin.eof() ? L"true" : L"false"), cin.gcount()); |
58 resultCode = CLI::EXIT_CODE_DATA_ERROR; |
58 resultCode = CLI::EXIT_CODE_DATA_ERROR; |