]> source.dussan.org Git - redmine.git/commitdiff
Fixed: CVS connexion string may not contain @.
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Sat, 6 Dec 2008 17:40:54 +0000 (17:40 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Sat, 6 Dec 2008 17:40:54 +0000 (17:40 +0000)
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2096 e93f8b46-1217-0410-a6f0-8f06a7374b81

lib/redmine/scm/adapters/cvs_adapter.rb

index 089a6b153fbb37fe72aae099a3ac947c12b0bf92..77a300b60218f7d6880ec14f74dd0800cefbb25b 100644 (file)
@@ -133,8 +133,7 @@ module Redmine
               
               if state=="entry_start"
                 branch_map=Hash.new
-                # gsub(/^:.*@[^:]+:\d*/, '') is here to remove :pserver:anonymous@foo.bar: string if present in the url
-                if /^RCS file: #{Regexp.escape(root_url.gsub(/^:.*@[^:]+:\d*/, ''))}\/#{Regexp.escape(path_with_project)}(.+),v$/ =~ line
+                if /^RCS file: #{Regexp.escape(root_url_path)}\/#{Regexp.escape(path_with_project)}(.+),v$/ =~ line
                   entry_path = normalize_cvs_path($1)
                   entry_name = normalize_path(File.basename($1))
                   logger.debug("Path #{entry_path} <=> Name #{entry_name}")
@@ -273,6 +272,13 @@ module Redmine
         end
          
         private
+        
+        # Returns the root url without the connexion string
+        # :pserver:anonymous@foo.bar:/path => /path
+        # :ext:cvsservername:/path => /path
+        def root_url_path
+          root_url.to_s.gsub(/^:.+:\d*/, '')
+        end
 
         # convert a date/time into the CVS-format
         def time_to_cvstime(time)