diff options
author | murphy <murphy@rubychan.de> | 2006-07-09 22:24:43 +0000 |
---|---|---|
committer | murphy <murphy@rubychan.de> | 2006-07-09 22:24:43 +0000 |
commit | 81ee35212774f6d3faacbbce5bcabbf3aaba3064 (patch) | |
tree | cf7cc6f9ef1a2c4d9dafc023f514204592556129 | |
parent | 5fd66b4d7f5eae2ce9ddf68017ddb515104e361c (diff) | |
download | coderay-81ee35212774f6d3faacbbce5bcabbf3aaba3064.tar.gz |
[BUG] Fixed bug in Ruby-Scanner (input ends with unfinished escape in string) (thanks to bovi again.)
Test case added.
-rw-r--r-- | lib/coderay/scanners/ruby.rb | 2 | ||||
-rw-r--r-- | test/ruby/open-string.in.rb | 1 | ||||
-rw-r--r-- | test/ruby/open-string.out.raydebug | 2 |
3 files changed, 5 insertions, 0 deletions
diff --git a/lib/coderay/scanners/ruby.rb b/lib/coderay/scanners/ruby.rb index 6e08a1f..2a415eb 100644 --- a/lib/coderay/scanners/ruby.rb +++ b/lib/coderay/scanners/ruby.rb @@ -118,6 +118,8 @@ module Scanners case m = getch
when state.delim, '\\'
tokens << [match + m, :char]
+ when nil
+ tokens << [match, :error]
else
tokens << [match + m, :content]
end
diff --git a/test/ruby/open-string.in.rb b/test/ruby/open-string.in.rb new file mode 100644 index 0000000..897afad --- /dev/null +++ b/test/ruby/open-string.in.rb @@ -0,0 +1 @@ +'\
diff --git a/test/ruby/open-string.out.raydebug b/test/ruby/open-string.out.raydebug new file mode 100644 index 0000000..f288618 --- /dev/null +++ b/test/ruby/open-string.out.raydebug @@ -0,0 +1,2 @@ +string<delimiter(')content(\\
+)>
\ No newline at end of file |