> Tim Pushor wrote:
>
> Is there a way to use local script variables in your cleanup code? Whatabout
>variables/functions declared in global.ini?
>
> I would think you could use your session or application object if you can, but I
>don't have any need for either in this app.
>
> I specifically need to be able to call a function declared in global.ini, and would
>like to somehow be able to operate on objects defined in the asp
> page before it goes out of scope - i.e.
>
> <%
> sub handler {
> my $n=some_magic;
> $n->unlock
> log failure;
> }
>
> $n=new object;
> $Server->RegisterCleanup (&handler);
> $n->lock;
> .. do stuff ..
> $n->unlock;
> log success;
>
I believe you are on the right track, how about:
# in script
<%
my $n = new object;
$Server->RegisterCleanup(sub { &handler($n) });
%>
# in global.asa
sub handler {
my $n = shift || die("need \$n to handle");
...
}
Even if originally declared with my($n), the $n should stay in
scope until after the script ends because it was being used
in the runtime sub {} that was installed for RegisterCleanup
Also, make sure to turn on PerlSetVar UseStrict if you have
not done so already, as this will save you many headaches
down the road.
-- Josh
_________________________________________________________________
Joshua Chamas Chamas Enterprises Inc.
NodeWorks Founder Huntington Beach, CA USA
http://www.nodeworks.com 1-714-625-4051
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]