stevedlawrence opened a new pull request, #890:
URL: https://github.com/apache/daffodil/pull/890

   When running the CLI performance unparse command with the `-I sax` option, 
we deep copy all SAX events and convert them to array of objects so we can 
replay those events in the actual performance loop. This avoids the overhead of 
parsing the XML infoset when testing SAX.
   
   However, we don't currently deep copy the Attributes parameter in the 
startElement function. So if a SAX XMLReader implementation reuses/mutates the 
same Attributes object for multiple calls to startEvent (which Xerces does), 
then all of our StartElement events will share the same Attributes object with 
mutated values, leading to unexpected failures.
   
   To fix this, this creates an AttributesImpl object from the Attributes 
object passed into the startElement function, which takes a persistent snapshot 
that is safe to store in our array of events.
   
   DAFFODIL-2400


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to