File tree Expand file tree Collapse file tree 2 files changed +5
-2
lines changed
Expand file tree Collapse file tree 2 files changed +5
-2
lines changed Original file line number Diff line number Diff line change @@ -49,7 +49,7 @@ optimized_escape_html(VALUE str)
4949 const unsigned char c = * cstr ++ ;
5050 uint8_t len = html_escape_table [c ].len ;
5151 if (len ) {
52- uint16_t segment_len = cstr - segment_start - 1 ;
52+ size_t segment_len = cstr - segment_start - 1 ;
5353 if (!buf ) {
5454 buf = ALLOCV_N (char , vbuf , escaped_length (str ));
5555 dest = buf ;
@@ -64,7 +64,7 @@ optimized_escape_html(VALUE str)
6464 }
6565 }
6666 if (buf ) {
67- uint16_t segment_len = cstr - segment_start ;
67+ size_t segment_len = cstr - segment_start ;
6868 if (segment_len ) {
6969 memcpy (dest , segment_start , segment_len );
7070 dest += segment_len ;
Original file line number Diff line number Diff line change @@ -77,6 +77,9 @@ def test_html_escape
7777
7878 assert_equal ( "" , ERB ::Util . html_escape ( nil ) )
7979 assert_equal ( "123" , ERB ::Util . html_escape ( 123 ) )
80+
81+ assert_equal ( 65536 +5 , ERB ::Util . html_escape ( "x" *65536 + "&" ) . size )
82+ assert_equal ( 65536 +5 , ERB ::Util . html_escape ( "&" + "x" *65536 ) . size )
8083 end
8184
8285 def test_html_escape_to_s
You can’t perform that action at this time.
0 commit comments