Skip Menu |

This queue is for tickets about the CGI-FormBuilder CPAN distribution.

Report information
The Basics
Id: 41465
Status: rejected
Priority: 0/
Queue: CGI-FormBuilder

People
Owner: Nobody in particular
Requestors: ZIMAGE [...] cpan.org
Cc:
AdminCc:

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



Subject: here document parser doesn't allow colons in the here document.
When placing a here-document in a CGI::FormBuilder::Source::File file, any content after a line that contains a colon is removed within the here-document. This is due to an error in the here-document parsing. This problem can be verified with the attached formbuilder file. This error can be fixed by changing line 86 of CGI/FormBuilder/Source/File.pm from $line = $term; to $line = $_; Another way to fix it would be to put the here-document test before the split and to include the split at the top of the else block. This fix is nice since the split isn't necessary when parsing a here-document, only when parsing term : line pairs. here's this change. my($term, $line) = split /\s*:\s*/, $_, 2; # here string term-inator (har) if ($here) { if ($term eq $here) { undef $here; next; } else { $line = $_; $term = $lterm; } } else { # count leading space if it's there to my($term, $line); # here string term-inator (har) if ($here) { if ($_ eq $here) { undef $here; next; } else { $line = $_; $term = $lterm; } } else { ($term, $line) = split /\s*:\s*/, $_, 2; # count leading space if it's there Thanks for listening.
Subject: edit.fb
Download edit.fb
application/octet-stream 2.6k

Message body not shown because it is not plain text.

My description of the problem was incorrect in the original report. If a line in a here-document contains a colon, then the content after the colon is discarded.
I am no longer accepting any bug reports for CGI::FormBuilder that don't have patches and tests. The idea behind Open Source Software is that the COMMUNITY of developers contributes to its development.