2009-05-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>

In XML-RPC option struct, header and index-out option can take
	array as value.
	* src/XmlRpcMethod.cc
pull/1/head
Tatsuhiro Tsujikawa 2009-05-13 15:23:01 +00:00
parent cdd65e8cca
commit dd6d098ccb
2 changed files with 18 additions and 3 deletions

View File

@ -1,3 +1,9 @@
2009-05-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
In XML-RPC option struct, header and index-out option can take
array as value.
* src/XmlRpcMethod.cc
2009-05-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed unused option member from PeerConnection.

View File

@ -48,6 +48,7 @@
#include "array_fun.h"
#include "download_helper.h"
#include "XmlRpcRequest.h"
#include "prefs.h"
namespace aria2 {
@ -182,9 +183,17 @@ void XmlRpcMethod::gatherRequestOption
i != listRequestOptions().end(); ++i) {
if(optionsDict.containsKey(*i)) {
const BDE& value = optionsDict[*i];
if(value.isString()) {
_optionParser->findByName(*i)->parse
(*option.get(), value.s());
SharedHandle<OptionHandler> optionHandler = _optionParser->findByName(*i);
// header and index-out option can take array as value
if((*i == PREF_HEADER || *i == PREF_INDEX_OUT) && value.isList()) {
for(BDE::List::const_iterator argiter = value.listBegin();
argiter != value.listEnd(); ++argiter) {
if((*argiter).isString()) {
optionHandler->parse(*option.get(), (*argiter).s());
}
}
} else if(value.isString()) {
optionHandler->parse(*option.get(), value.s());
}
}
}