Using some code very similar to the samples/SerializeNodeSet example, I 
currently get a core dump which shows that NodeRefList::operator= tried to 
dereference a null. (This is Xalan C++ 1.9).

The preceding call to selectSingleNode returned a non-null contextNode for a 
non-null XalanDocument but the selectNodeList call which is given that 
contextNode and an empty (getLength=0) NodeRefList dumps core.

I gather that the internal evaluate call is returning an XObjectPtr whose 
member pointer is 0. Then when operator= tries to copy theResult->nodeset() 
into the NodeRefList& which I pass in, the null derefence "fires".

Now, it may be that there is a scoping or a memory manager issue which I've 
overlooked while reading the Xalan C++ API, sample code, and mailing lists.

My XPathEvaluator, the NodeRefList, the source XalanDocument, and the context 
node all have greater, outer scope when selectNodeList gets called. Also, I 
can dereference the passed in NodeRefList& (via myNodeRefList.getLength()) 
safely immediately before the selectNodeList call within the same scope.

Has this (likely pilot) error been encountered before?

Perhaps my XalanDocument, constructed via the parserLiaison parseXMLStream 
method is somehow malformed? (The original source XML is assuredly 
well-formed because a peer XalanTransformer has no problems translating it 
from its original XSLTInputSource...)


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to