mirror of https://github.com/aria2/aria2
Ignore unacceptable options in RPC request instead of throwing error.
This change allows RPC client to send same options for the different type of downloads.pull/20/head
parent
7785ea8c4b
commit
68eb1b6737
|
@ -96,8 +96,8 @@ void gatherOption
|
|||
}
|
||||
const SharedHandle<OptionHandler>& handler = optionParser->find(pref);
|
||||
if(!handler || !pred(handler)) {
|
||||
throw DL_ABORT_EX
|
||||
(fmt("%s option cannot be used in this context.", optionName.c_str()));
|
||||
// Just ignore the unacceptable options in this context.
|
||||
continue;
|
||||
}
|
||||
const String* opval = downcast<String>((*first).second);
|
||||
if(opval) {
|
||||
|
|
|
@ -507,7 +507,8 @@ void RpcMethodTest::testChangeOption_withNotAllowedOption()
|
|||
opt->put(PREF_MAX_OVERALL_DOWNLOAD_LIMIT->k, "100K");
|
||||
req.params->append(opt);
|
||||
RpcResponse res = m.execute(req, e_.get());
|
||||
CPPUNIT_ASSERT_EQUAL(1, res.code);
|
||||
// The unacceptable options are just ignored.
|
||||
CPPUNIT_ASSERT_EQUAL(0, res.code);
|
||||
}
|
||||
|
||||
void RpcMethodTest::testChangeOption_withoutGid()
|
||||
|
@ -567,7 +568,8 @@ void RpcMethodTest::testChangeGlobalOption_withNotAllowedOption()
|
|||
opt->put(PREF_ENABLE_RPC->k, "100K");
|
||||
req.params->append(opt);
|
||||
RpcResponse res = m.execute(req, e_.get());
|
||||
CPPUNIT_ASSERT_EQUAL(1, res.code);
|
||||
// The unacceptable options are just ignored.
|
||||
CPPUNIT_ASSERT_EQUAL(0, res.code);
|
||||
}
|
||||
|
||||
void RpcMethodTest::testNoSuchMethod()
|
||||
|
|
Loading…
Reference in New Issue