From b44abbfd0b909731c3a9224444f94efb6cb7b5e5 Mon Sep 17 00:00:00 2001 From: MAEDA Go Date: Wed, 28 Sep 2022 13:42:43 +0900 Subject: [PATCH] Subversion adapter cannot handle filenames containing plus signs --- .../scm/adapters/subversion_adapter.rb | 2 +- .../subversion_repository.dump.gz | Bin 115356 -> 115572 bytes ...repositories_subversion_controller_test.rb | 5 +++-- test/unit/repository_subversion_test.rb | 4 ++-- 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/lib/redmine/scm/adapters/subversion_adapter.rb b/lib/redmine/scm/adapters/subversion_adapter.rb index c3748cadf..4f213ccdb 100644 --- a/lib/redmine/scm/adapters/subversion_adapter.rb +++ b/lib/redmine/scm/adapters/subversion_adapter.rb @@ -115,7 +115,7 @@ module Redmine entries << Entry.new( { - :name => CGI.unescape(name), + :name => Addressable::URI.unescape(name), :path => ((path.empty? ? "" : "#{path}/") + name), :kind => entry['kind'], :size => ((s = entry['size']) ? s['__content__'].to_i : nil), diff --git a/test/fixtures/repositories/subversion_repository.dump.gz b/test/fixtures/repositories/subversion_repository.dump.gz index 0151f83e1163002566430ea73a0b7867bb86ee7b..f0a1e1d2a2aa81dcbad03b45a1ec6209a4d525e3 100644 GIT binary patch delta 13852 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 delta 13635 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 '[folder_with_brackets]' assert_select 'tr.dir td.filename a', :text => 'folder' + assert_select 'tr.file td.filename a', :text => '+.md' assert_select 'tr.file td.filename a', :text => '.project' assert_select 'tr.file td.filename a', :text => 'helloworld.c' assert_select 'tr.file td.filename a', :text => 'textfile.txt' diff --git a/test/unit/repository_subversion_test.rb b/test/unit/repository_subversion_test.rb index 4ee5383bd..90ce785a2 100644 --- a/test/unit/repository_subversion_test.rb +++ b/test/unit/repository_subversion_test.rb @@ -24,7 +24,7 @@ class RepositorySubversionTest < ActiveSupport::TestCase include Redmine::I18n - NUM_REV = 13 + NUM_REV = 14 def setup User.current = nil @@ -100,7 +100,7 @@ class RepositorySubversionTest < ActiveSupport::TestCase @project.reload assert_equal NUM_REV, @repository.changesets.count - assert_equal 23, @repository.filechanges.count + assert_equal 24, @repository.filechanges.count assert_equal 'Initial import.', @repository.changesets.find_by_revision('1').comments end -- 2.34.1