in reply to IO::Zlib with XML::Twig/XML::Parser::Expat

Can you post a minimal test case?

I'm sorry to say that yes, your IO::Handle::Zlib wrapper is bogus (doesn't work now does it ;).

IO::Zlib provides an interface much like which means it's not exactly like, which is what needs to happen. You could go investingating XML::Parser to figure out all the IO::Handle methods it calls, and in turn, make sure IO::Zlib complies, cause it's not someplace.

It's obviously not handling the reading of the file well. I doubt the file is being decompressed past the original size (highly unlikely), I just think the wrapper is bogus.

You should try IO::Filter.

update:
BTW, do you pass ErrorContext to new XML::Twig? You should.

Whoa, I just checked my XML::Parser::Expat's sub parse, and it has if (ref($arg) and UNIVERSAL::isa($arg, 'IO::Handler')) {. It's version 2.27. How stupid. http://search.cpan.org/src/COOPERCL/XML-Parser-2.27/Expat/Expat.pm confirms it.

____________________________________________________
** The Third rule of perl club is a statement of fact: pod is sexy.