sub template {
my ( $self, $r ) = @_;
- my $view_options = $r->config->view_options || {};
- $self->{provider} ||= Template::Provider->new();
- $self->{tt} ||= Template->new({
- COMPILE_DIR => catdir(tmpdir(), $r->config->application_name),
- %$view_options,
- LOAD_TEMPLATES => [ $self->{provider} ],
- });
+ unless ($self->{tt}) {
+ my $view_options = $r->config->view_options || {};
+ $self->{provider} = Template::Provider->new($view_options);
+ $self->{tt} = Template->new({
+ %$view_options,
+ LOAD_TEMPLATES => [ $self->{provider} ],
+ });
+ }
$self->{provider}->include_path([ $self->paths($r) ]);