diff --git a/src/api/app/controllers/webui/package_controller.rb b/src/api/app/controllers/webui/package_controller.rb index 74154e37569..3f1d6a30288 100644 --- a/src/api/app/controllers/webui/package_controller.rb +++ b/src/api/app/controllers/webui/package_controller.rb @@ -1079,7 +1079,7 @@ def require_package unless @package flash[:error] = "Package \"#{params[:package]}\" not found in project \"#{params[:project]}\"" - redirect_to controller: :project, action: :show, project: @project, nextstatus: 404 + redirect_to project_show_path(project: @project, nextstatus: 404) end end diff --git a/src/api/app/controllers/webui/patchinfo_controller.rb b/src/api/app/controllers/webui/patchinfo_controller.rb index ae70014ac35..e8ec261fb2b 100644 --- a/src/api/app/controllers/webui/patchinfo_controller.rb +++ b/src/api/app/controllers/webui/patchinfo_controller.rb @@ -311,7 +311,13 @@ def get_binaries def require_exists unless params[:package].blank? - @package = Package.get_by_project_and_name(params[:project], params[:package], use_source: false) + begin + @package = Package.get_by_project_and_name(params[:project], params[:package], use_source: false) + rescue Package::UnknownObjectError + flash[:error] = "Patchinfo '#{params[:package]}' not found in project '#{params[:project]}'" + redirect_to project_show_path(project: params[:project]) + return + end end unless @package && @package.patchinfo