diff --git a/lib/redmine/wiki_formatting/common_mark/external_links_filter.rb b/lib/redmine/wiki_formatting/common_mark/external_links_filter.rb
index d2ea3fafa..c52029552 100644
--- a/lib/redmine/wiki_formatting/common_mark/external_links_filter.rb
+++ b/lib/redmine/wiki_formatting/common_mark/external_links_filter.rb
@@ -31,7 +31,11 @@ module Redmine
next unless url
next if url.starts_with?("/") || url.starts_with?("#") || !url.include?(':')
- scheme = URI.parse(url).scheme
+ begin
+ scheme = URI.parse(url).scheme
+ rescue URI::InvalidURIError
+ scheme = nil
+ end
next if scheme.blank?
klass = node["class"].presence
diff --git a/public/stylesheets/application.css b/public/stylesheets/application.css
index 6a043ff2f..f4223305a 100644
--- a/public/stylesheets/application.css
+++ b/public/stylesheets/application.css
@@ -45,6 +45,7 @@ pre, code {font-family: Consolas, Menlo, "Liberation Mono", Courier, monospace;}
#quick-search {float:right;}
#quick-search #q {width:130px; height:24px; box-sizing:border-box; vertical-align:middle; border:1px solid #ccc; border-radius:3px;}
+#quick-search form {display: inline-block;}
#main-menu {position: absolute; bottom: 0px; left: 10px; margin-right: -500px; width: 100%;}
#main-menu ul {margin: 0; padding: 0; width: 100%; white-space: nowrap;}
diff --git a/test/unit/lib/redmine/wiki_formatting/common_mark/external_links_filter_test.rb b/test/unit/lib/redmine/wiki_formatting/common_mark/external_links_filter_test.rb
index fcfc3156b..d4b76c401 100644
--- a/test/unit/lib/redmine/wiki_formatting/common_mark/external_links_filter_test.rb
+++ b/test/unit/lib/redmine/wiki_formatting/common_mark/external_links_filter_test.rb
@@ -44,5 +44,11 @@ if Object.const_defined?(:CommonMarker)
def test_mailto_links_should_have_email_class
assert_equal %(user), filter(%(user))
end
+
+ def test_malformed_uri_should_not_cause_exception
+ assert_nothing_raised do
+ filter(%(Malformed URI))
+ end
+ end
end
end