diff --git a/lib/rdoc/code_object/context/section.rb b/lib/rdoc/code_object/context/section.rb index ff4d5a60d8..16b778174f 100644 --- a/lib/rdoc/code_object/context/section.rb +++ b/lib/rdoc/code_object/context/section.rb @@ -1,5 +1,6 @@ # frozen_string_literal: true require 'cgi/escape' +require 'cgi/util' unless defined?(CGI::EscapeExt) ## # A section of documentation like: diff --git a/lib/rdoc/code_object/method_attr.rb b/lib/rdoc/code_object/method_attr.rb index 3dd60719d0..16779fa918 100644 --- a/lib/rdoc/code_object/method_attr.rb +++ b/lib/rdoc/code_object/method_attr.rb @@ -283,6 +283,7 @@ def block_params=(value) def html_name require 'cgi/escape' + require 'cgi/util' unless defined?(CGI::EscapeExt) CGI.escape(@name.gsub('-', '-2D')).gsub('%', '-').sub(/^-/, '') end diff --git a/lib/rdoc/markup/to_html.rb b/lib/rdoc/markup/to_html.rb index d7de9a3ff8..b036dbe53f 100644 --- a/lib/rdoc/markup/to_html.rb +++ b/lib/rdoc/markup/to_html.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'cgi/escape' -# For CGI.unescape on earlier rubies -require 'cgi/util' if RUBY_VERSION < '3.5' +require 'cgi/util' unless defined?(CGI::EscapeExt) ## # Outputs RDoc markup as HTML. diff --git a/lib/rdoc/markup/to_label.rb b/lib/rdoc/markup/to_label.rb index 3982d22083..9d6d5cc324 100644 --- a/lib/rdoc/markup/to_label.rb +++ b/lib/rdoc/markup/to_label.rb @@ -1,5 +1,6 @@ # frozen_string_literal: true require 'cgi/escape' +require 'cgi/util' unless defined?(CGI::EscapeExt) ## # Creates HTML-safe labels suitable for use in id attributes. Tidylinks are