From 67882ec37da6dac2ec0ce69e110014a6fe11882c Mon Sep 17 00:00:00 2001 From: Matt Palmer Date: Tue, 1 Aug 2017 18:03:36 +1000 Subject: [PATCH] Hunt-and-kill a few more mis-encoded params https://meta.discourse.org/t/tags-does-not-work-with-cyrillic/67217/6?u=mpalmer --- app/controllers/tags_controller.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/controllers/tags_controller.rb b/app/controllers/tags_controller.rb index 79e30674894..e65e8494254 100644 --- a/app/controllers/tags_controller.rb +++ b/app/controllers/tags_controller.rb @@ -49,8 +49,8 @@ class TagsController < ::ApplicationController Discourse.filters.each do |filter| define_method("show_#{filter}") do - @tag_id = params[:tag_id] - @additional_tags = params[:additional_tag_ids].to_s.split('/') + @tag_id = params[:tag_id].force_encoding("UTF-8") + @additional_tags = params[:additional_tag_ids].to_s.split('/').map { |t| t.force_encoding("UTF-8") } list_opts = build_topic_list_options @@ -67,7 +67,7 @@ class TagsController < ::ApplicationController @title = @description_meta path_name = url_method(params.slice(:category, :parent_category)) - canonical_url "#{Discourse.base_url_no_prefix}#{public_send(path_name, *(params.slice(:parent_category, :category, :tag_id).values))}" + canonical_url "#{Discourse.base_url_no_prefix}#{public_send(path_name, *(params.slice(:parent_category, :category, :tag_id).values.map { |t| t.force_encoding("UTF-8") }))}" if @list.topics.size == 0 && params[:tag_id] != 'none' && !Tag.where(name: @tag_id).exists? permalink_redirect_or_not_found