STDOUT nicht neu aufmachen
authorSven Schöling <s.schoeling@linet-services.de>
Fri, 23 Sep 2011 14:15:16 +0000 (16:15 +0200)
committerSven Schöling <s.schoeling@linet-services.de>
Fri, 23 Sep 2011 14:15:16 +0000 (16:15 +0200)
SL/Form.pm

index 68b1681..2116adb 100644 (file)
@@ -1323,7 +1323,7 @@ sub parse_template {
   if ($self->{OUT}) {
     open(OUT, ">", $self->{OUT}) or $self->error("$self->{OUT} : $!");
   } else {
-    open(OUT, ">&", \*STDOUT) or $self->error("STDOUT : $!");
+    *OUT = ($::dispatcher->get_standard_filehandles)[1];
     $self->header;
   }
 
@@ -1332,7 +1332,7 @@ sub parse_template {
     $self->error("$self->{IN} : " . $template->get_error());
   }
 
-  close OUT;
+  close OUT if $self->{OUT};
 
   if ($self->{media} eq 'file') {
     copy(join('/', $self->{cwd}, $userspath, $self->{tmpfile}), $out =~ m|^/| ? $out : join('/', $self->{cwd}, $out)) if $template->uses_temp_file;