summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorStan Hu <stanhu@gmail.com>2018-03-30 15:15:31 -0700
committerStan Hu <stanhu@gmail.com>2018-03-30 15:23:44 -0700
commit6fd1d07cfc5244e518e3ee94bf6b796cfe38c3b0 (patch)
tree5a30f71029aac0a7236453f5c20cd6a32cd99684 /lib
parentd2ad0bcc0254524c71c7422935f53c267b5b6923 (diff)
downloadgitlab-ce-sh-cleanup-crlf-gitmodules.tar.gz
Handle CR-LFs properly in .gitmodules filesh-cleanup-crlf-gitmodules
Any submodule lines that had a CR-LF ending would be ignored by the parser. Closes gitlab-org/gitlab-ce#2262
Diffstat (limited to 'lib')
-rw-r--r--lib/gitlab/git/gitmodules_parser.rb4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/gitlab/git/gitmodules_parser.rb b/lib/gitlab/git/gitmodules_parser.rb
index 4a43b9b444d..4b505312f60 100644
--- a/lib/gitlab/git/gitmodules_parser.rb
+++ b/lib/gitlab/git/gitmodules_parser.rb
@@ -46,6 +46,8 @@ module Gitlab
iterator = State.new
@content.split("\n").each_with_object(iterator) do |text, iterator|
+ text.chomp!
+
next if text =~ /^\s*#/
if text =~ /\A\[submodule "(?<name>[^"]+)"\]\z/
@@ -55,7 +57,7 @@ module Gitlab
next unless text =~ /\A\s*(?<key>\w+)\s*=\s*(?<value>.*)\z/
- value = $~[:value].chomp
+ value = $~[:value]
iterator.set_attribute($~[:key], value)
end
end