From d289f9642981adc8b332a03caf31fe2a93fd313f Mon Sep 17 00:00:00 2001 From: Lucas Di Pentima Date: Wed, 5 Jun 2019 16:59:29 -0300 Subject: [PATCH] 15306: Don't interpret include_trash="false" as include_trash=true. The same goes to include_old_versions params at find_objects_for_index(). If any of those params aren't declared as boolean, assume false. Arvados-DCO-1.1-Signed-off-by: Lucas Di Pentima --- .../api/app/controllers/application_controller.rb | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/services/api/app/controllers/application_controller.rb b/services/api/app/controllers/application_controller.rb index 40c7a8abf2..234e8018c0 100644 --- a/services/api/app/controllers/application_controller.rb +++ b/services/api/app/controllers/application_controller.rb @@ -165,6 +165,13 @@ class ApplicationController < ActionController::Base protected + def bool_param(pname) + if params.include?(pname) && params[pname].is_a?(Boolean) + return params[pname] + end + false + end + def send_error(*args) if args.last.is_a? Hash err = args.pop @@ -189,8 +196,8 @@ class ApplicationController < ActionController::Base def find_objects_for_index @objects ||= model_class.readable_by(*@read_users, { - :include_trash => (params[:include_trash] || 'untrash' == action_name), - :include_old_versions => params[:include_old_versions] + :include_trash => (bool_param(:include_trash) || 'untrash' == action_name), + :include_old_versions => bool_param(:include_old_versions) }) apply_where_limit_order_params end -- 2.30.2