diff options
author | Chris Wilson <chris+github@qwirx.com> | 2011-03-01 23:04:08 +0000 |
---|---|---|
committer | Chris Wilson <chris+github@qwirx.com> | 2011-03-01 23:04:08 +0000 |
commit | 7f0acd46826947a47bece74fe4b7ea50a462eec2 (patch) | |
tree | 05ef9442a791499e2bd539d4eb5ea4792d7b97a5 /bin/bbackupquery | |
parent | 19b977c032c9b1cd5d7bbc620e2100645d42557b (diff) |
Hopefully fix crash on unknown commands when readline is not supported
by bbackupqyuery, thanks to Achim J Latz for reporting and helping to debug.
Diffstat (limited to 'bin/bbackupquery')
-rw-r--r-- | bin/bbackupquery/BackupQueries.cpp | 9 | ||||
-rw-r--r-- | bin/bbackupquery/bbackupquery.cpp | 20 |
2 files changed, 10 insertions, 19 deletions
diff --git a/bin/bbackupquery/BackupQueries.cpp b/bin/bbackupquery/BackupQueries.cpp index a47274ff..aea6c896 100644 --- a/bin/bbackupquery/BackupQueries.cpp +++ b/bin/bbackupquery/BackupQueries.cpp @@ -108,8 +108,15 @@ BackupQueries::~BackupQueries() // // -------------------------------------------------------------------------- void BackupQueries::DoCommand(ParsedCommand& rCommand) -{ +{ // Check... + + if(rCommand.mFailed) + { + BOX_ERROR("Parse failed"); + return; + } + if(rCommand.mCmdElements.size() < 1) { // blank command diff --git a/bin/bbackupquery/bbackupquery.cpp b/bin/bbackupquery/bbackupquery.cpp index 77f1d6e3..788db51f 100644 --- a/bin/bbackupquery/bbackupquery.cpp +++ b/bin/bbackupquery/bbackupquery.cpp @@ -469,15 +469,7 @@ int main(int argc, const char *argv[]) while(c < argc && !context.Stop()) { BackupQueries::ParsedCommand cmd(argv[c++], true); - - if(cmd.mFailed) - { - BOX_ERROR("Parse failed"); - } - else - { - context.DoCommand(cmd); - } + context.DoCommand(cmd); } } @@ -525,15 +517,7 @@ int main(int argc, const char *argv[]) } BackupQueries::ParsedCommand cmd(command, false); - - if(cmd.mFailed) - { - BOX_ERROR("Parse failed"); - } - else - { - context.DoCommand(cmd); - } + context.DoCommand(cmd); if(last_cmd != 0 && ::strcmp(last_cmd, command) == 0) { |