diff options
author | David Kalnischkies <kalnischkies@gmail.com> | 2012-06-09 22:55:51 +0200 |
---|---|---|
committer | David Kalnischkies <kalnischkies@gmail.com> | 2012-06-09 22:55:51 +0200 |
commit | 7a6d9076595b2acc164d6f057f609c96c359ea08 (patch) | |
tree | f3fdc21c3e5891cad360220c136d714b1af0b88f /test/libapt | |
parent | ae2be086c6996e6ed02b7d828fdcac38248a964d (diff) |
fix segfault with empty LongOpt in --no-* branch
Diffstat (limited to 'test/libapt')
-rw-r--r-- | test/libapt/commandline_test.cc | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/test/libapt/commandline_test.cc b/test/libapt/commandline_test.cc index a37fb0220..de8a30bd6 100644 --- a/test/libapt/commandline_test.cc +++ b/test/libapt/commandline_test.cc @@ -9,13 +9,24 @@ int main() { 'z', "zero", "Test::Zero", 0 }, {0,0,0,0} }; - CommandLine CmdL(Args,_config); + char const * argv[] = { "test", "--zero", "-t" }; CmdL.Parse(3 , argv); - equals(true, _config->FindB("Test::Worked", false)); equals(true, _config->FindB("Test::Zero", false)); + _config->Clear("Test"); + equals(false, _config->FindB("Test::Worked", false)); + equals(false, _config->FindB("Test::Zero", false)); + + _config->Set("Test::Zero", true); + equals(true, _config->FindB("Test::Zero", false)); + + char const * argv2[] = { "test", "--no-zero", "-t" }; + CmdL.Parse(3 , argv2); + equals(true, _config->FindB("Test::Worked", false)); + equals(false, _config->FindB("Test::Zero", false)); + return 0; } |