The following testcast fails under 1.20.  Basically, if there is a hash
deref inside an HREF tag, without quotes, you get the following error:

[27723]ERR: 13: Line 4: Missing right +]

If you quote the HREF or create a temporary variable to hold the hash deref
everything works fine.

What follows is the testcase cgi script and the associated template file.


#!/usr/local/bin/perl -T

use strict;
use HTML::Embperl ();
use CGI ();

use vars qw( $cgi $EMBPERL_OPTIONS );

$EMBPERL_OPTIONS    = HTML::Embperl::optRawInput;
$cgi                = new CGI;

print $cgi->header();

HTML::Embperl::Execute(
    {
        inputfile   => "testcase.html",
        options     => $EMBPERL_OPTIONS,
    }
);

exit;


And here is the template file:


[- $topic->{TOPICID} = "hello" -]

<html><body>

[# uncomment the next statement and change the hash deref in the HREF to
"$tmp"
    to see things work with the variable version

    Note that the testcase still fails even if you do not pre-set
    $topic->{TOPICID} and its contents appear irrelevant.
#]

[# $tmp = $topic->{TOPICID} #]

<A HREF=[+ $topic->{TOPICID} +]>Link</A>
</body></html>


--
James Sheridan-Peters
Sr. Application Developer
Community of Science
(410) 563-2378  x297
[EMAIL PROTECTED]

Reply via email to