In trying to parse some very simple, but large XML files, I've found that XML::Simple hangs. The following example demonstrates the problem:
#!/usr/bin/perl use warnings; use strict; use XML::Simple qw/XMLin/; my $file = shift || die "Must supply xml file"; open FH, '<', $file or die "Cannot open $file for reading: $!"; my $document = do { local $/; <FH> }; XMLin($document);
You can down load a compressed (6.2 Meg) version of the XML that causes this to choke. The XML itself is rather simple. It's a huge base64 encoded mp3 that is causing problems. As near as I can tell, the actual problem is an infinite loop in XML::Parser::Style::Tree.
XML::Simple is the latest version and expat is 1.95.5.
Anyone seen this problem before? (Wrapping the base64 encoded data in a CDATA section has no effect).
Cheers,
Ovid
New address of my CGI Course.
In reply to XML::Simple hangs by Ovid
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |