X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=cli%2Fcli_dump.cpp;h=e30f6cc2b49574a00d58a111b38c82b59ca0982f;hb=940cdb8b143455fe2fc002ffd50f5e2ffcaf1260;hp=28c91af92c7c9f7cf6d2f32df27570f64f513632;hpb=0a47881d7b17c6f672f79fdcfcc494e080d6f291;p=apitrace diff --git a/cli/cli_dump.cpp b/cli/cli_dump.cpp index 28c91af..e30f6cc 100644 --- a/cli/cli_dump.cpp +++ b/cli/cli_dump.cpp @@ -28,6 +28,9 @@ #include #include // for CHAR_MAX #include +#ifndef _WIN32 +#include // for isatty() +#endif #include "cli.hpp" #include "cli_pager.hpp" @@ -35,6 +38,7 @@ #include "trace_parser.hpp" #include "trace_dump.hpp" #include "trace_callset.hpp" +#include "trace_option.hpp" enum ColorOption { @@ -95,25 +99,6 @@ longOptions[] = { {0, 0, 0, 0} }; -static bool -boolOption(const char *option, bool default_ = true) { - if (!option) { - return default_; - } - if (strcmp(option, "0") == 0 || - strcmp(option, "no") == 0 || - strcmp(option, "false") == 0) { - return false; - } - if (strcmp(option, "0") == 0 || - strcmp(option, "yes") == 0 || - strcmp(option, "true") == 0) { - return true; - } - std::cerr << "error: unexpected bool " << option << "\n"; - return default_; -} - static int command(int argc, char *argv[]) { @@ -146,17 +131,17 @@ command(int argc, char *argv[]) } break; case THREAD_IDS_OPT: - dumpThreadIds = boolOption(optarg); + dumpThreadIds = trace::boolOption(optarg); break; case CALL_NOS_OPT: - if (boolOption(optarg)) { + if (trace::boolOption(optarg)) { dumpFlags &= ~trace::DUMP_FLAG_NO_CALL_NO; } else { dumpFlags |= trace::DUMP_FLAG_NO_CALL_NO; } break; case ARG_NAMES_OPT: - if (boolOption(optarg)) { + if (trace::boolOption(optarg)) { dumpFlags &= ~trace::DUMP_FLAG_NO_ARG_NAMES; } else { dumpFlags |= trace::DUMP_FLAG_NO_ARG_NAMES; @@ -186,7 +171,6 @@ command(int argc, char *argv[]) trace::Parser p; if (!p.open(argv[i])) { - std::cerr << "error: failed to open " << argv[i] << "\n"; return 1; }