#!/usr/local/bin/perl
use v5.6.0;
use PLP;
+use strict;
-die 'Wrong module version' if $PLP::VERSION ne '3.03';
-
-use vars qw($DEBUG);
+die 'Wrong module version' if $PLP::VERSION ne '3.06';
-use strict;
{
+ @PLP::END = ();
$PLP::code = '';
$PLP::sentheaders = 0;
$PLP::inA = 0;
$PLP::inB = 0;
+ $PLP::DEBUG = 1;
delete @ENV{ grep /^PLP_/, keys %ENV };
}
-$DEBUG = 1;
-
PLP::start();
{
*cookies = \%cookie;
PLP::Functions->import();
# No lexicals may exist at this point.
- eval qq{package PLP::Script; $PLP::code};
+ eval qq{ package PLP::Script; $PLP::code; };
+ PLP::error($@, 1) if $@ and $@ !~ /\cS\cT\cO\cP/;
+ eval { package PLP::Script; $_->() for reverse @PLP::END };
+ PLP::error($@, 1) if $@ and $@ !~ /\cS\cT\cO\cP/;
}
- PLP::error($@, 1) if $@;
+ PLP::sendheaders() unless $PLP::sentheaders;
select STDOUT;
undef *{"PLP::Script::$_"} for keys %PLP::Script::;
- PLP::sendheaders() unless $PLP::sentheaders;
}