my $page=shift;
my ($filename, $tpage, $untrusted)=template_file($name);
+ if (! defined $filename) {
+ error(sprintf(gettext("template %s not found"), $name))
+ }
+
if (defined $page && defined $tpage) {
add_depends($page, $tpage);
}
-
- return unless defined $filename;
-
+
my @opts=(
filter => sub {
my $text_ref = shift;
sub derel ($$) {
my $path=shift;
my $from=shift;
- if ($path eq '.') {
- $path = $from;
- }
- if ($path =~ m!^\./!) {
- $from=~s#/?[^/]+$## if defined $from;
- $path=~s#^\./##;
- $path="$from/$path" if defined $from && length $from;
+ if ($path =~ m!^\.(/|$)!) {
+ if ($1) {
+ $from=~s#/?[^/]+$## if defined $from;
+ $path=~s#^\./##;
+ $path="$from/$path" if defined $from && length $from;
+ }
+ else {
+ $path = $from;
+ $path = "" unless defined $path;
+ }
}
return $path;