diff options
Diffstat (limited to 'src/main.cc')
| -rw-r--r-- | src/main.cc | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/main.cc b/src/main.cc index ed59f886..c58300f3 100644 --- a/src/main.cc +++ b/src/main.cc @@ -272,14 +272,16 @@ error_code::Value main(int argc, char* argv[]) // command-line. If they are left, because op is used as a template // for new RequestGroup(such as created in RPC command), they causes // unintentional effect. - op->remove(PREF_OUT); - op->remove(PREF_FORCE_SEQUENTIAL); - op->remove(PREF_INPUT_FILE); - op->remove(PREF_INDEX_OUT); - op->remove(PREF_SELECT_FILE); - op->remove(PREF_PAUSE); - op->remove(PREF_CHECKSUM); - op->remove(PREF_GID); + for(SharedHandle<Option> i = op; i; i = i->getParent()) { + i->remove(PREF_OUT); + i->remove(PREF_FORCE_SEQUENTIAL); + i->remove(PREF_INPUT_FILE); + i->remove(PREF_INDEX_OUT); + i->remove(PREF_SELECT_FILE); + i->remove(PREF_PAUSE); + i->remove(PREF_CHECKSUM); + i->remove(PREF_GID); + } if(!op->getAsBool(PREF_ENABLE_RPC) && requestGroups.empty() && !uriListParser) { global::cout()->printf("%s\n", MSG_NO_FILES_TO_DOWNLOAD); |
