--- loncom/xml/lonxml.pm	2006/04/18 22:35:55	1.410
+++ loncom/xml/lonxml.pm	2006/09/14 21:52:36	1.416
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # XML Parser Module 
 #
-# $Id: lonxml.pm,v 1.410 2006/04/18 22:35:55 albertel Exp $
+# $Id: lonxml.pm,v 1.416 2006/09/14 21:52:36 albertel Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -123,9 +123,6 @@ $evaluate = 1;
 # stores the list of active tag namespaces
 @namespace=();
 
-# has the dynamic menu been updated to know about this resource
-$Apache::lonxml::registered=0;
-
 # a pointer the the Apache request object
 $Apache::lonxml::request='';
 
@@ -369,13 +366,14 @@ sub latex_special_symbols {
 	return $string;
     }
     if ($where eq 'header') {
-	$string =~ s/(\\|_|\^)/ /g;
+	$string =~ s/\\/\$\\backslash\$/g; # \  -> $\backslash$ per LaTex line by line pg  10.
 	$string =~ s/(\$|%|\{|\})/\\$1/g;
-	$string =~ s/_/ /g;
 	$string=&Apache::lonprintout::character_chart($string);
 	# any & or # leftover should be safe to just escape
         $string=~s/([^\\])\&/$1\\\&/g;
         $string=~s/([^\\])\#/$1\\\#/g;
+	$string =~ s/_/\\_/g;              # _ -> \_
+	$string =~ s/\^/\\\^{}/g;          # ^ -> \^{} 
     } else {
 	$string=~s/\\/\\ensuremath{\\backslash}/g;
 	$string=~s/\\\%|\%/\\\%/g;
@@ -603,7 +601,6 @@ sub callsub {
 sub setup_globals {
   my ($request,$target)=@_;
   $Apache::lonxml::request=$request;
-  $Apache::lonxml::registered = 0;
   $errorcount=0;
   $warningcount=0;
   $Apache::lonxml::default_homework_loaded=0;
@@ -1423,7 +1420,7 @@ sub handler {
     my $filecontents=&Apache::lonnet::getfile($file);
     if ($filecontents eq -1) {
 	my $start_page=&Apache::loncommon::start_page('File Error');
-	my $end_page=&Apache::loncommon::end_page('File Error');
+	my $end_page=&Apache::loncommon::end_page();
 	my $fnf=&mt('File not found');
 	$result=(<<ENDNOTFOUND);
 $start_page
@@ -1543,7 +1540,8 @@ sub error {
 	    #public or browsers
 	    $errormsg=&mt("An error occured while processing this resource. The author has been notified.");
 	}
-	my $msg = join('<br />',@_);
+	my $host=$Apache::lonnet::perlvar{'lonHostID'};
+	my $msg = join('<br />',(@_,"The error occurred on host <tt>$host</tt>"));
 	#notify author
 	&Apache::lonmsg::author_res_msg($env{'request.filename'},$msg);
 	#notify course