You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by mi...@apache.org on 2004/01/15 17:09:33 UTC
cvs commit: xml-xalan/java/src/org/apache/xalan/templates ElemLiteralResult.java ElemTextLiteral.java
minchau 2004/01/15 08:09:33
Modified: java/src/org/apache/xalan/templates ElemLiteralResult.java
ElemTextLiteral.java
Log:
PR: 26169
Submitted by: Brian Minchau
Flushed serialier before emitting trace event in ElemeTextLiteral and
ElemLiteralResult.
Revision Changes Path
1.41 +31 -23 xml-xalan/java/src/org/apache/xalan/templates/ElemLiteralResult.java
Index: ElemLiteralResult.java
===================================================================
RCS file: /home/cvs/xml-xalan/java/src/org/apache/xalan/templates/ElemLiteralResult.java,v
retrieving revision 1.40
retrieving revision 1.41
diff -u -r1.40 -r1.41
--- ElemLiteralResult.java 25 Nov 2003 00:03:12 -0000 1.40
+++ ElemLiteralResult.java 15 Jan 2004 16:09:32 -0000 1.41
@@ -242,9 +242,9 @@
public boolean containsExcludeResultPrefix(String prefix, String uri)
{
if (uri == null ||
- (null == m_excludeResultPrefixes &&
- null == m_ExtensionElementURIs)
- )
+ (null == m_excludeResultPrefixes &&
+ null == m_ExtensionElementURIs)
+ )
return super.containsExcludeResultPrefix(prefix, uri);
if (prefix.length() == 0)
@@ -252,18 +252,18 @@
// This loop is ok here because this code only runs during
// stylesheet compile time.
- if(m_excludeResultPrefixes!=null)
- for (int i =0; i< m_excludeResultPrefixes.size(); i++)
- {
- if (uri.equals(getNamespaceForPrefix(m_excludeResultPrefixes.elementAt(i))))
- return true;
- }
-
- // JJK Bugzilla 1133: Also check locally-scoped extensions
+ if(m_excludeResultPrefixes!=null)
+ for (int i =0; i< m_excludeResultPrefixes.size(); i++)
+ {
+ if (uri.equals(getNamespaceForPrefix(m_excludeResultPrefixes.elementAt(i))))
+ return true;
+ }
+
+ // JJK Bugzilla 1133: Also check locally-scoped extensions
if(m_ExtensionElementURIs!=null && m_ExtensionElementURIs.contains(uri))
return true;
- return super.containsExcludeResultPrefix(prefix, uri);
+ return super.containsExcludeResultPrefix(prefix, uri);
}
/**
@@ -343,8 +343,8 @@
boolean needToCheckExclude()
{
if (null == m_excludeResultPrefixes && null == m_prefixTable
- && m_ExtensionElementURIs==null // JJK Bugzilla 1133
- )
+ && m_ExtensionElementURIs==null // JJK Bugzilla 1133
+ )
return false;
else
{
@@ -451,7 +451,7 @@
{
return m_rawName;
}
-
+
/**
* Get the prefix part of the raw name of the Literal Result Element.
*
@@ -459,10 +459,10 @@
*/
public String getPrefix()
{
- int len=m_rawName.length()-m_localName.length()-1;
+ int len=m_rawName.length()-m_localName.length()-1;
return (len>0)
- ? m_rawName.substring(0,len)
- : "";
+ ? m_rawName.substring(0,len)
+ : "";
}
@@ -644,13 +644,17 @@
public void execute(TransformerImpl transformer)
throws TransformerException
{
-
- if (TransformerImpl.S_DEBUG)
- transformer.getTraceManager().fireTraceEvent(this);
SerializationHandler rhandler = transformer.getSerializationHandler();
try
{
+ if (TransformerImpl.S_DEBUG) {
+ // flush any buffered pending processing before
+ // the trace event.
+ rhandler.flushPending();
+ transformer.getTraceManager().fireTraceEvent(this);
+ }
+
// JJK Bugzilla 3464, test namespace85 -- make sure LRE's
// namespace is asserted even if default, since xsl:element
// may have changed the context.
@@ -731,9 +735,13 @@
* successful startElement() call even if
* there was an exception in the middle.
* Otherwise an exception in the middle could cause a system to hang.
- */
- if (TransformerImpl.S_DEBUG)
+ */
+ if (TransformerImpl.S_DEBUG) {
+ // flush any buffered pending processing before
+ // the trace event.
+ //rhandler.flushPending();
transformer.getTraceManager().fireTraceEndEvent(this);
+ }
rhandler.endElement(getNamespace(), getLocalName(), getRawName());
}
catch (SAXException se)
1.15 +18 -4 xml-xalan/java/src/org/apache/xalan/templates/ElemTextLiteral.java
Index: ElemTextLiteral.java
===================================================================
RCS file: /home/cvs/xml-xalan/java/src/org/apache/xalan/templates/ElemTextLiteral.java,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- ElemTextLiteral.java 17 Oct 2003 20:59:20 -0000 1.14
+++ ElemTextLiteral.java 15 Jan 2004 16:09:32 -0000 1.15
@@ -238,11 +238,15 @@
TransformerImpl transformer)
throws TransformerException
{
- if (TransformerImpl.S_DEBUG)
- transformer.getTraceManager().fireTraceEvent(this);
try
{
SerializationHandler rth = transformer.getResultTreeHandler();
+ if (TransformerImpl.S_DEBUG) {
+ // flush any pending cached processing before the trace event.
+ rth.flushPending();
+ transformer.getTraceManager().fireTraceEvent(this);
+ }
+
if (m_disableOutputEscaping)
{
rth.processingInstruction(javax.xml.transform.Result.PI_DISABLE_OUTPUT_ESCAPING, "");
@@ -261,8 +265,18 @@
}
finally
{
- if (TransformerImpl.S_DEBUG)
- transformer.getTraceManager().fireTraceEndEvent(this);
+ if (TransformerImpl.S_DEBUG) {
+ try
+ {
+ // flush any pending cached processing before sending the trace event
+ transformer.getResultTreeHandler().flushPending();
+ transformer.getTraceManager().fireTraceEndEvent(this);
+ }
+ catch (SAXException se)
+ {
+ throw new TransformerException(se);
+ }
+ }
}
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-cvs-help@xml.apache.org