Project

General

Profile

Feature #1724

Updated by jeremyevans0 (Jeremy Evans) over 4 years ago

=begin 
  
  Certain language specific chars like the german "Umlaute" are represented in HTML with "ä" (ä), "ü" (ü) etc. 
  Since ERB::Util.html_escape escapes the & to become "&" one cannot use these HTML codes. 
 
  To work around this problem I modified ERB::Util.html_escape like this: 
 
      def html_escape(s) 
        s.to_s.gsub(/&(?!.uml)/, "&amp;").gsub(/\"/, "&quot;").gsub(/>/, "&gt;").gsub(/</, "&lt;") 
      end 
 
  The modification is in the first call of gsub where I added the condition (?!.uml). 
  it forces the function to ignore the "&" if it is followed by a pattern that indicates one of the aforementiond HTML-codes. 
 
  I consider this being a safe modification. 
 
 =end 
 

Back