[LON-CAPA-cvs] cvs: loncom /xml lonxml.pm
albertel
lon-capa-cvs@mail.lon-capa.org
Tue, 02 Mar 2004 22:39:12 -0000
albertel Tue Mar 2 17:39:12 2004 EDT
Modified files:
/loncom/xml lonxml.pm
Log:
- one more try at fixing this variable eval thing,
Index: loncom/xml/lonxml.pm
diff -u loncom/xml/lonxml.pm:1.305 loncom/xml/lonxml.pm:1.306
--- loncom/xml/lonxml.pm:1.305 Tue Mar 2 16:31:22 2004
+++ loncom/xml/lonxml.pm Tue Mar 2 17:39:12 2004
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# XML Parser Module
#
-# $Id: lonxml.pm,v 1.305 2004/03/02 21:31:22 albertel Exp $
+# $Id: lonxml.pm,v 1.306 2004/03/02 22:39:12 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -751,6 +751,7 @@
$safehole->wrap(\&Math::Random::random_get_seed,$safeeval,'&random_get_seed');
$safehole->wrap(\&Math::Random::random_set_seed,$safeeval,'&random_set_seed');
$safehole->wrap(\&Apache::lonxml::error,$safeeval,'&LONCAPA_INTERNAL_ERROR');
+ $safehole->wrap(\&Apache::lonxml::debug,$safeeval,'&DEBUG');
#need to inspect this class of ops
# $safeeval->deny(":base_orig");
@@ -766,18 +767,18 @@
sub __LC_INTERNAL_EVALUATE__ {
my ($__LC__a,$__LC__b,$__LC__c)=@_;
my $__LC__prefix;
- my $__LC__msg;
while(1){
{
- #use strict;
+ use strict;
+ no strict "vars";
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,"");
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
$safeeval->permit("require");