Skip Menu |

This queue is for tickets about the XML-Mini CPAN distribution.

Report information
The Basics
Id: 6403
Status: resolved
Priority: 0/
Queue: XML-Mini

People
Owner: Nobody in particular
Requestors: martin [...] run.montefiore.ulg.ac.be
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: (no value)
Fixed in: (no value)



Subject: Deep recursion on subroutine "XML::Mini::Document::fromSubStringBT"
when trying to open the attached document, i get a message saying: Deep recursion on subroutine "XML::Mini::Document::fromSubStringBT" at /usr/lib/perl5/site_perl/5.8.0/XML/Mini/Document.pm line 485. [code] my $meta= XML::Mini::Document->new(); $XML::Mini::AutoEscapeEntities=0; $meta->fromFile(".meta-document.xml"); $XML::Mini::AutoEscapeEntities=1; my @regions=@{$meta->getRoot->getElement("meta-data") ->getAllChildren("region")}; print STDERR "sweeping $#regions regions for $objid\n"; [code] Same kind of errors occur with various lengthy documents, including staroffice documents. It looks like the problem comes from the fact the "# not a <tag> ... </tag>" test is too fuzzy and incorrectly allows things not on the start of the $XMLString to be matched. [code, in Document.pm, around line 490] $XMLString =~ s/>\s*\n/>/gsm; if ($XMLString =~ m/^\s*<\s*([^\s>]+)([^>]*>)(.*)<\s*\/\1\s*>/osm) [/code] should rather be [code] $XMLString =~ s/>\s*\n/>/gsm; if ($XMLString =~ m/^\s*<\s*([^\s>]+)([^>]*>)(.*)<\s*\/\1\s*>/os) [/code] imvho...
<?xml version = '1.0' encoding = 'ISO-8859-1'?> <meta-data> <title> Run network </title> <summary> using UML,Network [UML]: Note, [Network]: Cloud,Router Symbol,General Computer (Tower),Bus,General Printer,General Monitor (With Stand),General Monitor (With Stand),General Monitor (With Stand),General Monitor (With Stand),General Monitor (With Stand),General Monitor (With Stand),General Monitor (With Stand),General Monitor (With Stand),General Monitor (With Stand),General Computer (Tower),General Monitor (With Stand),General Monitor (With Stand),General Monitor (With Stand),WAN Connection,General Monitor (With Stand),General Monitor (With Stand),General Monitor (With Stand),General Monitor (With Stand),General Monitor (With Stand),General Monitor (With Stand),General Monitor (With Stand), 0 sentences and 9 isolated words |HELL , MILADY , dartagnan, athos, porthos, aramis, 4Mbps, 4Mbps, 4Mbps </summary> <region by="META_CAST" shape="rect" id="O72" coords="958,521,1025,578" > [Network::General Monitor With Stand]morgoth <IP>222.34</IP> <use> MPLS </use> </region> <region by="META_CAST" shape="rect" id="O56" coords="736,558,784,577" > [Standard::Text]4Mbps </region> <region by="META_CAST" shape="rect" id="O47" coords="650,598,670,617" > [Standard::Text]S0 </region> <region by="META_CAST" shape="rect" id="O5" coords="104,360,180,376" > [Standard::Text]MILADY </region> <region by="META_CAST" shape="rect" id="O28" coords="387,391,455,450" > [Network::General Monitor With Stand]shaitan <IP> 223.21 </IP> <use/> </region> <region by="META_CAST" shape="rect" id="O19" coords="47,523,114,596" > [Network::General Computer Tower]xantium </region> <region by="META_CAST" shape="rect" id="O76" coords="953,681,1031,740" > [Network::General Monitor With Stand]astaroth <IP> 222.66 </IP> <use> MPLS </use> </region> <region by="META_CAST" shape="rect" id="O8" coords="305,91,421,148" > [Network::General Printer] lp4200 </region> <region by="META_CAST" shape="rect" id="O60" coords="469,770,578,802" > [UML::Note]139.165.222.96/27 </region> <region by="META_CAST" shape="rect" id="O42" coords="668,620,881,722" > [Standard::Line] </region> <region by="META_CAST" shape="rect" id="O34" coords="296,542,345,599" > [Network::General Printer]lprun <IP> 223.3 </IP> <use/> </region> <region by="META_CAST" shape="rect" id="O10" coords="522,91,563,149" > [Network::General Monitor With Stand]baal <IP> 222.132 </IP> <use> Simulation chercheur + ISIR </use> </region> <region by="META_CAST" shape="rect" id="O9" coords="436,91,504,149" > [Network::General Monitor With Stand]asmodan <IP> 223.16 </IP> <use> Sylvain Martin </use> </region> <region by="META_CAST" shape="rect" id="O13" coords="313,291,380,343" > [Network::General Monitor With Stand]phoenix <IP/> <use> Olivier Delcourt </use> </region> <region by="META_CAST" shape="rect" id="O40" coords="334,628,421,647" > [Standard::Text]dartagnan <IP> 222.130 + 222.97 </IP> <use/> </region> <region by="META_CAST" shape="rect" id="O49" coords="622,648,681,667" > [Standard::Text]aramis <IP> 222.254 </IP> <use/> </region> <region by="META_CAST" shape="rect" id="O46" coords="826,748,894,767" > [Standard::Text]porthos </region> <region by="META_CAST" shape="rect" id="O30" coords="554,390,603,452" > [Network::WAN Connection]w-ap2 <IP> 222.151 </IP> <use/> </region> <region by="META_CAST" shape="rect" id="O7" coords="140,60,162,103" > [Standard::Line] </region> <region by="META_CAST" shape="rect" id="O35" coords="429,600,471,642" > [Network::Router Symbol] </region> <region by="META_CAST" shape="rect" id="O31" coords="614,390,663,452" > [Network::WAN Connection]w-ap3 <IP> 222.152 </IP> <use/> </region> <region by="META_CAST" shape="rect" id="O4" coords="96,99,145,134" > [Standard::Text]|HELL </region> <region by="META_CAST" shape="rect" id="O12" coords="219,291,296,343" > [Network::General Monitor With Stand]naberius <IP/> <use> Simon Balon </use> </region> <region by="META_CAST" shape="rect" id="O70" coords="1106,560,1108,722" > [Standard::Line] </region> <region by="META_CAST" shape="rect" id="O18" coords="559,221,662,253" > [UML::Note]139.165.223.0/24 </region> <region by="META_CAST" shape="rect" id="O62" coords="858,550,860,702" > [Standard::Line] </region> <region by="META_CAST" shape="rect" id="O68" coords="878,720,940,777" > [Standard::ZigZagLine] </region> <region by="META_CAST" shape="rect" id="O61" coords="546,598,595,617" > [Standard::Text]4Mbps </region> <region by="META_CAST" shape="rect" id="O74" coords="1202,521,1260,578" > [Network::General Monitor With Stand]sauron <IP> 222.36 </IP> <use> MPLS </use> </region> <region by="META_CAST" shape="rect" id="O65" coords="928,430,1037,462" > [UML::Note]139.165.222.32/27 </region> <region by="META_CAST" shape="rect" id="O16" coords="555,291,622,343" > [Network::General Monitor With Stand]abaddon <IP> 223.23 </IP> <use> Jean Marc Francois </use> </region> <region by="META_CAST" shape="rect" id="O73" coords="1063,521,1150,578" > [Network::General Monitor With Stand]leviathan <IP> 222.35 </IP> <use> MPLS </use> </region> <region by="META_CAST" shape="rect" id="O22" coords="69,571,221,632" > [Network::Bus] </region> <region by="META_CAST" shape="rect" id="O21" coords="59,490,211,531" > [Network::Bus] </region> <region by="META_CAST" shape="rect" id="O14" coords="397,291,454,343" > [Network::General Monitor With Stand]abigor <IP> 223.26 </IP> <use> Portable - Fabian Skivée </use> </region> <region by="META_CAST" shape="rect" id="O11" coords="581,91,639,149" > [Network::General Monitor With Stand]belial <IP> 223.20 </IP> <use> Olivier Delcourt </use> </region> <region by="META_CAST" shape="rect" id="O38" coords="430,648,450,667" > [Standard::Text]E0 </region> <region by="META_CAST" shape="rect" id="O75" coords="1188,681,1276,740" > [Network::General Monitor With Stand]belzebuth <IP> 222.68 </IP> <use> MPLS </use> </region> <region by="META_CAST" shape="rect" id="O71" coords="1230,560,1232,722" > [Standard::Line] </region> <region by="META_CAST" shape="rect" id="O67" coords="878,445,930,532" > [Standard::ZigZagLine] </region> <region by="META_CAST" shape="rect" id="O32" coords="659,470,774,502" > [UML::Note]139.165.222.128/27 </region> <region by="META_CAST" shape="rect" id="O1" coords="139,101,181,143" > [Network::Router Symbol] </region> <region by="META_CAST" shape="rect" id="O20" coords="167,531,234,588" > [Network::General Monitor With Stand]lucifer <IP> 222.10 </IP> <use> Atrium </use> </region> <region by="META_CAST" shape="rect" id="O3" coords="159,370,201,412" > [Network::Router Symbol] </region> <region by="META_CAST" shape="rect" id="O37" coords="480,598,500,617" > [Standard::Text]S0 </region> <region by="META_CAST" shape="rect" id="O44" coords="838,510,880,552" > [Network::Router Symbol] </region> <region by="META_CAST" shape="rect" id="O25" coords="79,390,162,525" > [Standard::ZigZagLine] </region> <region by="META_CAST" shape="rect" id="O15" coords="471,291,538,343" > [Network::General Monitor With Stand]astarte <IP> 223.24 </IP> <use> Sandrine Calomme </use> </region> <region by="META_CAST" shape="rect" id="O39" coords="469,620,671,622" > [Standard::Line] </region> <region by="META_CAST" shape="rect" id="O36" coords="450,578,470,597" > [Standard::Text]E1 </region> <region by="META_CAST" shape="rect" id="O63" coords="878,450,1250,561" > [Network::Bus] </region> <region by="META_CAST" shape="rect" id="O59" coords="439,830,481,890" > [Network::General Monitor With Stand]loki <IP> 222.100 </IP> <use> CADP + ISIR </use> </region> <region by="META_CAST" shape="rect" id="O55" coords="860,678,880,697" > [Standard::Text]S1 </region> <region by="META_CAST" shape="rect" id="O0" coords="66,0,235,64" > [Network::Cloud]Internet </region> <region by="META_CAST" shape="rect" id="O54" coords="860,548,880,567" > [Standard::Text]S1 </region> <region by="META_CAST" shape="rect" id="O77" coords="1083,681,1132,740" > [Network::General Monitor With Stand]satan <IP> 222.67 </IP> <use> MPLS </use> </region> <region by="META_CAST" shape="rect" id="O52" coords="810,528,830,547" > [Standard::Text]S0 </region> <region by="META_CAST" shape="rect" id="O69" coords="990,560,993,722" > [Standard::Line] </region> <region by="META_CAST" shape="rect" id="O53" coords="810,708,830,727" > [Standard::Text]S0 </region> <region by="META_CAST" shape="rect" id="O58" coords="409,641,511,871" > [Network::Bus] </region> <region by="META_CAST" shape="rect" id="O29" coords="484,390,533,452" > [Network::WAN Connection]w-ap1 <IP> 222.150 </IP> <use/> </region> <region by="META_CAST" shape="rect" id="O45" coords="835,478,884,497" > [Standard::Text]athos <IP> 222.33 </IP> <use/> </region> <region by="META_CAST" shape="rect" id="O33" coords="199,390,661,492" > [Standard::ZigZagLine] </region> <region by="META_CAST" shape="rect" id="O64" coords="878,721,1250,772" > [Network::Bus] </region> <region by="META_CAST" shape="rect" id="O51" coords="700,648,720,667" > [Standard::Text]S2 </region> <region by="META_CAST" shape="rect" id="O48" coords="669,600,711,642" > [Network::Router Symbol] </region> <region by="META_CAST" shape="rect" id="O23" coords="209,620,295,652" > [UML::Note]10.3.100.0/24 </region> <region by="META_CAST" shape="rect" id="O41" coords="668,530,881,622" > [Standard::Line] </region> <region by="META_CAST" shape="rect" id="O24" coords="249,431,639,601" > [Network::Bus] </region> <region by="META_CAST" shape="rect" id="O2" coords="237,81,296,156" > [Network::General Computer Tower] bru <IP> 223.2 </IP> <use> Serveur </use> </region> <region by="META_CAST" shape="rect" id="O26" coords="0,470,103,502" > [UML::Note]139.165.222.0/27 </region> <region by="META_CAST" shape="rect" id="O50" coords="700,578,720,597" > [Standard::Text]S1 </region> <region by="META_CAST" shape="rect" id="O66" coords="938,760,1047,792" > [UML::Note]139.165.222.64/27 </region> <region by="META_CAST" shape="rect" id="O17" coords="638,291,696,343" > [Network::General Monitor With Stand]moloch <IP> 223.22 </IP> <use> Ybitisam El Khayat </use> </region> <region by="META_CAST" shape="rect" id="O43" coords="838,700,880,742" > [Network::Router Symbol] </region> <region by="META_CAST" shape="rect" id="O57" coords="865,618,914,637" > [Standard::Text]4Mbps </region> <region by="META_CAST" shape="rect" id="O27" coords="291,391,350,451" > [Network::General Monitor With Stand]azrael <IP> 222.131 </IP> <use> Serveur NIS </use> </region> <region by="META_CAST" shape="rect" id="O6" coords="119,129,681,371" > [Network::Bus] </region> </meta-data>
Deep recursion warnings were harmless but quite annoying. Quashed in 1.38. Regards, Pat D