Skip to content

Commit 3435f0c

Browse files
committed
merge revision(s) 21432:
* lib/erb.rb (PercentScanner): remove PercentScanner. fixed % after %> bug. [ruby-dev:37751] [Bug #997] * test/erb/test_erb.rb: ditto git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_6@22581 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
1 parent 214d80f commit 3435f0c

File tree

4 files changed

+15
-32
lines changed

4 files changed

+15
-32
lines changed

ChangeLog

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
Tue Feb 24 02:41:47 2009 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
2+
3+
* lib/erb.rb (PercentScanner): remove PercentScanner. fixed % after
4+
%> bug. [ruby-dev:37751] [Bug #997]
5+
6+
* test/erb/test_erb.rb: ditto
7+
18
Sun Feb 22 22:05:44 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
29

310
* eval.c (stack_extend): streamlined rb_thread_restore_context()

lib/erb.rb

Lines changed: 0 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -422,34 +422,6 @@ def scan
422422
end
423423
Scanner.regist_scanner(SimpleScanner2, nil, false)
424424

425-
class PercentScanner < Scanner # :nodoc:
426-
def scan
427-
new_line = true
428-
stag_reg = /(.*?)(<%%|<%=|<%#|<%|\n|\z)/
429-
etag_reg = /(.*?)(%%>|%>|\n|\z)/
430-
scanner = StringScanner.new(@src)
431-
while ! scanner.eos?
432-
if new_line && @stag.nil?
433-
if scanner.scan(/%%/)
434-
yield('%')
435-
new_line = false
436-
next
437-
elsif scanner.scan(/%/)
438-
yield(PercentLine.new(scanner.scan(/.*?(\n|\z)/).chomp))
439-
next
440-
end
441-
end
442-
scanner.scan(@stag ? etag_reg : stag_reg)
443-
text = scanner[1]
444-
elem = scanner[2]
445-
yield(text) unless text.empty?
446-
yield(elem) unless elem.empty?
447-
new_line = (elem == "\n")
448-
end
449-
end
450-
end
451-
Scanner.regist_scanner(PercentScanner, nil, true)
452-
453425
class ExplicitScanner < Scanner # :nodoc:
454426
def scan
455427
new_line = true

test/erb/test_erb.rb

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -408,6 +408,10 @@ def test_explicit
408408
assert_equal(ans, ERB.new(src, nil, '-').result)
409409
assert_equal(ans, ERB.new(src, nil, '-%').result)
410410
end
411+
412+
def test_percent_after_etag
413+
assert_equal("1%", @erb.new("<%= 1 %>%", nil, "%").result)
414+
end
411415
end
412416

413417
class TestERBCoreWOStrScan < TestERBCore

version.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
#define RUBY_VERSION "1.8.6"
2-
#define RUBY_RELEASE_DATE "2009-02-22"
2+
#define RUBY_RELEASE_DATE "2009-02-24"
33
#define RUBY_VERSION_CODE 186
4-
#define RUBY_RELEASE_CODE 20090222
5-
#define RUBY_PATCHLEVEL 351
4+
#define RUBY_RELEASE_CODE 20090224
5+
#define RUBY_PATCHLEVEL 352
66

77
#define RUBY_VERSION_MAJOR 1
88
#define RUBY_VERSION_MINOR 8
99
#define RUBY_VERSION_TEENY 6
1010
#define RUBY_RELEASE_YEAR 2009
1111
#define RUBY_RELEASE_MONTH 2
12-
#define RUBY_RELEASE_DAY 22
12+
#define RUBY_RELEASE_DAY 24
1313

1414
#ifdef RUBY_EXTERN
1515
RUBY_EXTERN const char ruby_version[];

0 commit comments

Comments
 (0)