Diff for /loncom/xml/run.pm between versions 1.39 and 1.43

version 1.39, 2003/06/18 21:04:42 version 1.43, 2004/01/29 18:46:25
Line 62  sub evaluate { Line 62  sub evaluate {
     } else {      } else {
  if ($Apache::run::timeout) {   if ($Apache::run::timeout) {
     $error = 'Code ran too long. It ran for more than '.      $error = 'Code ran too long. It ran for more than '.
  Apache->request->server->timeout.' seconds';   $Apache::lonnet::perlvar{'lonScriptTimeout'}.' seconds';
  }   }
  &Apache::lonxml::error('substitution on <pre>'.   &Apache::lonxml::error('substitution on <pre>'.
        &HTML::Entities::encode($expression).         &HTML::Entities::encode($expression).
Line 96  sub run { Line 96  sub run {
     if (($Apache::run::timeout || $error ne '' || $innererror ne '') && !$hideerrors) {      if (($Apache::run::timeout || $error ne '' || $innererror ne '') && !$hideerrors) {
  if ($Apache::run::timeout) {   if ($Apache::run::timeout) {
     $error = 'Code ran too long. It ran for more than '.      $error = 'Code ran too long. It ran for more than '.
  Apache->request->server->timeout.' seconds';   $Apache::lonnet::perlvar{'lonScriptTimeout'}.' seconds';
  }   }
  &Apache::lonxml::error('<pre>'.&HTML::Entities::encode($error).' '.   my $errormsg='<pre>'.&HTML::Entities::encode($error).' '.
        &HTML::Entities::encode($innererror).      &HTML::Entities::encode($innererror).
        '</pre> occured while running <pre>'.      '</pre> occured while running <pre>';
        &HTML::Entities::encode($code).'</pre>');   $code=&HTML::Entities::encode($code);
    if ($innererror=~/line (\d+)/) {
       my $linenumber=$1;
       my @code=split("\n",$code);
       $code[$linenumber-1]='<b><font color="red">'.
    $code[$linenumber-1].'</font></b>';
       $code=join("\n",@code);
    }
    &Apache::lonxml::error($errormsg.$code.'</pre>');
     }      }
     if ( $#result < '1') {      if ( $#result < '1') {
  return $result[0];   return $result[0];
Line 112  sub run { Line 120  sub run {
 }  }
   
 sub dump {  sub dump {
   my ($target,$safeeval)=@_;      my ($target,$safeeval)=@_;
   my $dump='';      my $dump='';
   foreach my $symname (sort keys %{$safeeval->varglob('main::')}) {      foreach my $symname (sort keys %{$safeeval->varglob('main::')}) {
     if (($symname!~/^\_/) && ($symname!~/\:$/)) {   if (($symname!~/^\_/) && ($symname!~/\:$/)) {
       my $line;      my $line;
       if ($safeeval->reval('defined($'.$symname.')')) {      if ($safeeval->reval('defined($'.$symname.')')) {
  $line='$'.$symname.'='.$safeeval->reval('$'.$symname);   $line='$'.$symname.'='.$safeeval->reval('$'.$symname);
       }      }
       if ($safeeval->reval('defined(@'.$symname.')')) {      if ($safeeval->reval('defined(@'.$symname.')')) {
  $line='@'.$symname.'=('.   $line='@'.$symname.'=('.
   $safeeval->reval('join(",",@'.$symname.')').")";      $safeeval->reval('join(",",@'.$symname.')').")";
       }      }
       if ($safeeval->reval('defined(%'.$symname.')')) {      if ($safeeval->reval('defined(%'.$symname.')')) {
  $line='%'.$symname.'=(';   $line='%'.$symname.'=(';
  $line.=$safeeval->reval('join(",",map { $_."=>".$'.   $line.=$safeeval->reval('join(",",map { $_."=>".$'.
  $symname.'{$_} } sort keys %'.   $symname.'{$_} } sort keys %'.
  $symname.')').")"   $symname.')').")"
       }      }
       if ($line ne '') { $dump.=&HTML::Entities::encode($line)."<br />"; }      if ($line ne '') {$dump.=&HTML::Entities::encode($line)."<br />";}
    }
     }      }
   }      $dump.='';
   $dump.='';      return $dump;
   return $dump;  
 }  }
   
 1;  1;

Removed from v.1.39  
changed lines
  Added in v.1.43


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>