mirror of
https://github.com/rakshasa/rtorrent.git
synced 2026-08-14 14:12:31 +00:00
Allow command function lists for dynamically created functions.
This commit is contained in:
@@ -401,7 +401,7 @@ system_method_set_key(const torrent::Object::list_type& args) {
|
||||
return torrent::Object();
|
||||
}
|
||||
|
||||
if (itrArgs->is_dict_key())
|
||||
if (itrArgs->is_dict_key() || itrArgs->is_list())
|
||||
control->object_storage()->set_str_multi_key_obj(key.c_str(), cmd_key, *itrArgs);
|
||||
else
|
||||
control->object_storage()->set_str_multi_key(key, cmd_key, system_method_generate_command(itrArgs, args.end()));
|
||||
|
||||
+2
-2
@@ -266,8 +266,8 @@ main(int argc, char** argv) {
|
||||
|
||||
"method.set_key = event.download.inserted, 1_connect_logs, ((d.initialize_logs))\n"
|
||||
"method.set_key = event.download.inserted, 1_send_scrape, ((d.tracker.send_scrape,30))\n"
|
||||
"method.set_key = event.download.inserted_new, 1_prepare, \"branch=d.state=,view.set_visible=started,view.set_visible=stopped ;d.save_full_session=\"\n"
|
||||
"method.set_key = event.download.inserted_session, 1_prepare, \"branch=d.state=,view.set_visible=started,view.set_visible=stopped\"\n"
|
||||
"method.set_key = event.download.inserted_new, 1_prepare, {(branch,((d.state)),((view.set_visible,started)),((view.set_visible,stopped)) ),(d.save_full_session)}\n"
|
||||
"method.set_key = event.download.inserted_session, 1_prepare, {(branch,((d.state)),((view.set_visible,started)),((view.set_visible,stopped)) )}\n"
|
||||
|
||||
"method.set_key = event.download.inserted, 1_prioritize_toc, \"branch=file.prioritize_toc=,{\\\"f.multicall=(file.prioritize_toc.first),f.prioritize_first.enable=\\\",\\\"f.multicall=(file.prioritize_toc.last),f.prioritize_last.enable=\\\",d.update_priorities=}\"\n"
|
||||
|
||||
|
||||
@@ -218,7 +218,7 @@ object_storage::erase_multi_key(const torrent::raw_string& key, const std::strin
|
||||
|
||||
void
|
||||
object_storage::set_multi_key_obj(const torrent::raw_string& key, const std::string& cmd_key, const torrent::Object& object) {
|
||||
if (!object.is_string() && !object.is_dict_key())
|
||||
if (!object.is_string() && !object.is_dict_key() && !object.is_list())
|
||||
throw torrent::input_error("Object is wrong type.");
|
||||
|
||||
local_iterator itr = find_local_mutable(key, flag_multi_type);
|
||||
|
||||
Reference in New Issue
Block a user