http://www.perlmonks.org?node_id=1204940

Boldra has asked for the wisdom of the Perl Monks concerning the following question:

My YAML being read is
--- NODE: match: !!perl/regexp (?^ui:OK\ Server\ Connection\ 1\.001)
After loading/dumping it looks like this
--- NODE: match: !!perl/regexp (?^u:(?^ui:OK\ Server\ Connection\ 1\.001))
After 20 load/dump cycles it looks like this:
--- NODE: match: !!perl/regexp (?^u:(?^u:(?^u:(?^u:(?^u:(?^u:(?^u:(?^u:(?^u:(? +^u:(?^u:(?^u:(?^u:(?^u:(?^u:(?^u:(?^u:(?^u:(?^u:(?^u:(?^ui:OK\ Server\ Connection\ 1\.001)))))))))))))))))))))
My test:
perl -MYAML::XS -E 'my $y=YAML::XS::Load(q{---\nNODE:\n match: !!perl +/regexp (?i-xsm:OK\ Server\ Connection\ 1\.001)}); for(1..20) { $y=Lo +ad(Dump($y)) }; say Dump($y)'
$YAML::XS::VERSION = 0.66
perl v5.24.3

If I let it run long enough, eventually the parser breaks down. Does anyone have any suggestions?



- Boldra