[LON-CAPA-cvs] cvs: loncom /xml lontexconvert.pm
albertel
lon-capa-cvs@mail.lon-capa.org
Thu, 27 Feb 2003 21:01:39 -0000
albertel Thu Feb 27 16:01:39 2003 EDT
Modified files:
/loncom/xml lontexconvert.pm
Log:
- last of BUG#1276, I think this may bomb if you dont have the latest tth.so
Index: loncom/xml/lontexconvert.pm
diff -u loncom/xml/lontexconvert.pm:1.18 loncom/xml/lontexconvert.pm:1.19
--- loncom/xml/lontexconvert.pm:1.18 Wed Feb 26 15:22:11 2003
+++ loncom/xml/lontexconvert.pm Thu Feb 27 16:01:39 2003
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# TeX Conversion Module
#
-# $Id: lontexconvert.pm,v 1.18 2003/02/26 20:22:11 albertel Exp $
+# $Id: lontexconvert.pm,v 1.19 2003/02/27 21:01:39 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -44,6 +44,7 @@
use strict;
use tth;
use vars qw($errorstring);
+use Apache();
use Apache::lonmsg;
use Apache::lonxml;
use Apache::lonmenu;
@@ -77,12 +78,16 @@
# ================================================================== Conversion
+$Apache::lontexconvert::messedup=0;
sub converted {
my $texstring=shift;
my $xmlstring='[UNDISPLAYABLE]';
+ if ($Apache::lontexconvert::messedup) {
+ return '[Uncoverted Due To Previous Errors]';
+ }
eval(<<'ENDCONV');
- {
- local $SIG{SEGV}=sub { die; };
+ {
+ local $SIG{SEGV}=sub { $Apache::lontexconvert::messedup=1; die; };
if ($ENV{'browser.mathml'}) {
$xmlstring=&tth::ttm($$texstring);
$xmlstring=~s/\<math\>/\<math xmlns=\"\&mathns\;\"\>/g;
@@ -95,6 +100,12 @@
}
}
ENDCONV
+ if ($Apache::lontexconvert::messedup || &tth::tthmessedup()) {
+ &Apache::lonnet::logthis("Trying to kill myself");
+ $Apache::lontexconvert::messedup=1;
+ my $request=Apache->request();
+ $request->child_terminate();
+ }
return $xmlstring;
}