]> sipb.mit.edu Git - ikiwiki.git/blobdiff - IkiWiki/Plugin/meta.pm
meta: Ensure that the url specified by xrds-location is absolute.
[ikiwiki.git] / IkiWiki / Plugin / meta.pm
index ae593555e72010dfea12c248631d7e883d9df6c8..5cfa7283350885181b9e8e194e87a4448c235c10 100644 (file)
@@ -198,8 +198,12 @@ sub preprocess (@) {
                                '" rel="openid2.local_id" />' if $delegate ne 1;
                }
                if (exists $params{"xrds-location"} && safeurl($params{"xrds-location"})) {
+                       # force url absolute
+                       eval q{use URI};
+                       error($@) if $@;
+                       my $url=URI->new_abs($params{"xrds-location"}, $config{url});
                        push @{$metaheaders{$page}}, '<meta http-equiv="X-XRDS-Location" '.
-                               'content="'.encode_entities($params{"xrds-location"}).'" />';
+                               'content="'.encode_entities($url).'" />';
                }
        }
        elsif ($key eq 'redir') {