mirror of
https://github.com/rakshasa/rtorrent.git
synced 2026-08-07 02:32:32 +00:00
* Fix potential buffer overflows in case snprintf buffer is too
small. Patch by Josef Drexler. * Added 'view.persistance' command that makes downloads inserted into that view persist across sessions. Only call on user-created views. * Added 'ratio.*' commands that call the 'group.seeding.ratio.*' equivalents. git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1080 e378c898-3ddf-0310-93e7-cc216c733640
This commit is contained in:
@@ -394,6 +394,21 @@ cmd_view_size_not_visible(__UNUSED rpc::target_type target, const torrent::Objec
|
||||
return (*control->view_manager()->find_throw(rawArgs.as_string()))->size_not_visible();
|
||||
}
|
||||
|
||||
torrent::Object
|
||||
cmd_view_persistent(__UNUSED rpc::target_type target, const torrent::Object& rawArgs) {
|
||||
const std::string& args = rawArgs.as_string();
|
||||
core::View* view = *control->view_manager()->find_throw(args);
|
||||
|
||||
if (!view->get_filter().empty() || !view->get_event_added().empty() || !view->get_event_removed().empty())
|
||||
throw torrent::input_error("Cannot set modified views as persitent.");
|
||||
|
||||
view->set_filter("d.views.has=" + args);
|
||||
view->set_event_added("d.views.push_back_unique=" + args);
|
||||
view->set_event_removed("d.views.remove=" + args);
|
||||
|
||||
return torrent::Object();
|
||||
}
|
||||
|
||||
torrent::Object
|
||||
cmd_ui_set_view(__UNUSED rpc::target_type target, const torrent::Object& rawArgs) {
|
||||
control->ui()->download_list()->set_current_view(rawArgs.as_string());
|
||||
@@ -451,6 +466,8 @@ initialize_command_ui() {
|
||||
|
||||
CMD_G_STRING("view.size", rak::ptr_fn(&cmd_view_size));
|
||||
CMD_G_STRING("view.size_not_visible", rak::ptr_fn(&cmd_view_size_not_visible));
|
||||
CMD_G_STRING("view.persistent", rak::ptr_fn(&cmd_view_persistent));
|
||||
|
||||
CMD_D_STRING("view.filter_download", rak::ptr_fn(&cmd_view_filter_download));
|
||||
CMD_D_STRING("view.set_visible", rak::ptr_fn(&cmd_view_set_visible));
|
||||
CMD_D_STRING("view.set_not_visible", rak::ptr_fn(&cmd_view_set_not_visible));
|
||||
|
||||
Reference in New Issue
Block a user