version 1.28, 2002/05/23 21:12:44
|
version 1.29, 2002/05/23 21:15:34
|
Line 43 sub evaluate {
|
Line 43 sub evaluate {
|
if (!$Apache::lonxml::evaluate) { return $expression; } |
if (!$Apache::lonxml::evaluate) { return $expression; } |
my $result = ''; |
my $result = ''; |
$@=''; |
$@=''; |
|
if ($Apache::lonxml::request) { |
|
$Apache::lonxml::request->hard_timeout("Apache::run::run, evaluation $code"); |
|
} |
$safeeval->reval('{'.$decls.';$_=<<\'EXPRESSION\';'."\n".$expression. |
$safeeval->reval('{'.$decls.';$_=<<\'EXPRESSION\';'."\n".$expression. |
"\n".'EXPRESSION'."\n".$EVALUATE_STRING.'}'); |
"\n".'EXPRESSION'."\n".$EVALUATE_STRING.'}'); |
|
if ($Apache::lonxml::request) { $Apache::lonxml::request->kill_timeout; } |
# $safeeval->reval('{'.$decls.';<< &evaluate(q|'.$expression.'|);}'); |
# $safeeval->reval('{'.$decls.';<< &evaluate(q|'.$expression.'|);}'); |
my $error=$@; |
my $error=$@; |
if ($@ eq '') { |
if ($@ eq '') { |
Line 62 sub run {
|
Line 66 sub run {
|
my ($code,$safeeval,$hideerrors) = @_; |
my ($code,$safeeval,$hideerrors) = @_; |
# print "inside run\n"; |
# print "inside run\n"; |
$@=''; |
$@=''; |
$Apache::lonxml::request->hard_timeout("Apache::run::run, evaluation $code"); |
if ($Apache::lonxml::request) { |
|
$Apache::lonxml::request->hard_timeout("Apache::run::run, evaluation $code"); |
|
} |
my (@result)=$safeeval->reval($code); |
my (@result)=$safeeval->reval($code); |
$Apache::lonxml::request->kill_timeout; |
if ($Apache::lonxml::request) { $Apache::lonxml::request->kill_timeout; } |
my $error=$@; |
my $error=$@; |
if ($error ne '' && !$hideerrors) { |
if ($error ne '' && !$hideerrors) { |
&Apache::lonxml::error('<pre>'.&HTML::Entities::encode($error). |
&Apache::lonxml::error('<pre>'.&HTML::Entities::encode($error). |