1/
  If a template includes itself, Sablotron will crash rather than
  reporting an error. There seems to be no attempt in the code to
  deal with this, so perhaps it's a missing feature rather than a
  bug.

2/
  If a template declares an output method of "text", and includes
  another template; and if that other template includes a DTD, then
  Sablotron will die with "Assertion `method == OUTPUT_XML || method == OUTPUT_HTML' 
failed."

Perhaps this patch fixes (2):

--- Sablot-0.40/Sablot/output.cpp       Fri Jun 30 11:23:25 2000
+++ output.cpp  Tue Jul  4 13:15:29 2000
@@ -846,7 +846,10 @@
                 E( reportXMLDeclIfMust() );
                 E( reportFront() );
             };
-            E( reportDTDIfMust( name ) );
+            // If this is an included stylesheet, output method cd be TEXT here
+            if (method == OUTPUT_XML || method == OUTPUT_HTML) {
+                E( reportDTDIfMust( name ) );
+            }
         };
     }
     switch(state)


 .robin.

Reply via email to