diff options
author | 2018-01-19 22:46:21 +0000 | |
---|---|---|
committer | 2018-01-19 22:46:21 +0000 | |
commit | 7c41e701ab76a9126efd9eb95f25d11b8a017ecb (patch) | |
tree | 47a573cc45755e4c991b8001e4913cbfec2a6740 /cmds/lshal/DebugCommand.cpp | |
parent | 27de5b1db18cbc3e4c4826158f4263473ed4d315 (diff) | |
parent | 078d9bb83e8734403c27949e160d64c2bc9f4636 (diff) |
Merge "Add 'exclude parent' option to debug." am: 7fb0aa5f97
am: 078d9bb83e
Change-Id: I77bb58878b489edc94216fd3e1054d6151827c5b
Diffstat (limited to 'cmds/lshal/DebugCommand.cpp')
-rw-r--r-- | cmds/lshal/DebugCommand.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/cmds/lshal/DebugCommand.cpp b/cmds/lshal/DebugCommand.cpp index f371320bd0..dd8812d5bf 100644 --- a/cmds/lshal/DebugCommand.cpp +++ b/cmds/lshal/DebugCommand.cpp @@ -35,6 +35,14 @@ Status DebugCommand::parseArgs(const Arg &arg) { if (optind >= arg.argc) { return USAGE; } + + // Optargs cannnot be used because the flag should not be considered set + // if it should really be contained in mOptions. + if (std::string(arg.argv[optind]) == "-E") { + mExcludesParentInstances = true; + optind++; + } + mInterfaceName = arg.argv[optind]; ++optind; for (; optind < arg.argc; ++optind) { @@ -59,6 +67,7 @@ Status DebugCommand::main(const Arg &arg) { return mLshal.emitDebugInfo( pair.first, pair.second.empty() ? "default" : pair.second, mOptions, + mExcludesParentInstances, mLshal.out().buf(), mLshal.err()); } @@ -67,8 +76,9 @@ void DebugCommand::usage() const { static const std::string debug = "debug:\n" - " lshal debug <interface> [options [options [...]]] \n" + " lshal debug [-E] <interface> [options [options [...]]] \n" " Print debug information of a specified interface.\n" + " -E: excludes debug output if HAL is actually a subclass.\n" " <inteface>: Format is `android.hardware.foo@1.0::IFoo/default`.\n" " If instance name is missing `default` is used.\n" " options: space separated options to IBase::debug.\n"; |