Diff for /loncom/xml/lonxml.pm between versions 1.305 and 1.308

version 1.305, 2004/03/02 21:31:22 version 1.308, 2004/03/04 23:01:31
Line 409  sub latex_special_symbols { Line 409  sub latex_special_symbols {
  $string=~s/\~/\\char126 /g;   $string=~s/\~/\\char126 /g;
  #fixup & if it doesn't look like   #fixup & if it doesn't look like
         # { or α          # { or α
  $string=~s/(&(?!((\#[0-9]+)|([a-z]+));))/\\$1/gi;   $string=~s/(&(?!((\#[0-9]+)|([a-z][a-z0-9]*));))/\\$1/gi;
         $string=~s/([^&\\])\#/$1\\#/g;          $string=~s/([^&\\])\#/$1\\#/g;
  $string=~s/\#\#/\#\\#/g;   $string=~s/\#\#/\#\\#/g;
  $string=~s/(\$|_|{|})/\\$1/g;   $string=~s/(\$|_|{|})/\\$1/g;
Line 766  sub init_safespace { Line 766  sub init_safespace {
 sub __LC_INTERNAL_EVALUATE__ {  sub __LC_INTERNAL_EVALUATE__ {
     my ($__LC__a,$__LC__b,$__LC__c)=@_;      my ($__LC__a,$__LC__b,$__LC__c)=@_;
     my $__LC__prefix;      my $__LC__prefix;
     my $__LC__msg;  
     while(1){      while(1){
  {    { 
     #use strict;      use strict;
       no strict "vars";
     if (eval(defined(eval($__LC__a.$__LC__b)))) {      if (eval(defined(eval($__LC__a.$__LC__b)))) {
  return $__LC__msg.$__LC__prefix.eval($__LC__a.$__LC__b.$__LC__c);   return $__LC__prefix.eval($__LC__a.$__LC__b.$__LC__c);
     }      }
  }   }
  $__LC__prefix.=substr($__LC__a,0,1,"");   $__LC__prefix.=substr($__LC__a,0,1,"");
  if ($__LC__a!~/^(\$|&|\#)/) { last; }   if ($__LC__a!~/^(\$|&|\#)/) { last; }
     }      }
     return $__LC__prefix.$__LC__a.$__LC__b.$__LC__c.$__LC__msg;      return $__LC__prefix.$__LC__a.$__LC__b.$__LC__c;
 }  }
 EVALUATESUB  EVALUATESUB
     $safeeval->permit("require");      $safeeval->permit("require");

Removed from v.1.305  
changed lines
  Added in v.1.308


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