This is needed to be able to load external DTD definitions without blocking, as well as external scripts (if a <script src=""> tag is encountered, parsing should pause until the file has loaded and then resume.
Created attachment 8925 [details] Patch Unfortunately there's no way to pause/resume the libxml SAX parser (it's possible with expat) so a rather kludgey workaround is used. I've verified that it works by calling pause before parsing and resume inside ::finish.
Comment on attachment 8925 [details] Patch On the substance this looks ok, but I think it would be better to use subclasses instead of just a tagged union for PendingCallbacks, this would allow elimination of most of the switch statements also. Suggest rewriting along theselines.
Created attachment 8933 [details] Address comments
Comment on attachment 8933 [details] Address comments union gone. band happy. r me.