Subject: | Unitialized value in function stringify_attributes |
Date: | Fri, 14 Apr 2017 10:30:23 +0000 |
To: | "bug-GraphViz2 [...] rt.cpan.org" <bug-GraphViz2 [...] rt.cpan.org> |
From: | Raphael Crochet <raphael.crochet [...] actia.fr> |
Perl throws errors through error stream but doesn't fail. So, there is no emergency, it is usable but not pretty.
Here is an example log of the error:
Added edge: "12" -- "39" [ label="No" ]
Use of uninitialized value in substitution (s///) at D:/str64perl/perl/site/lib/GraphViz2.pm line 889.
Use of uninitialized value in substitution (s///) at D:/str64perl/perl/site/lib/GraphViz2.pm line 890.
Use of uninitialized value in pattern match (m//) at D:/str64perl/perl/site/lib/GraphViz2.pm line 891.
Use of uninitialized value in concatenation (.) or string at D:/str64perl/perl/site/lib/GraphViz2.pm line 891.
Added node: "31" [ fillcolor="red:white" label="31" style="filled" tooltip="" ]
Added edge: "33" -- "31"
The lines (889,890,891) are:
$$option{$key} =~ s/^\s+(<)/$1/;
$$option{$key} =~ s/(>)\s+$/$1/;
$dot .= ($$option{$key} =~ /^<.+>$/s) ? qq|$key=$$option{$key} | : qq|$key="$$option{$key}" |;
Here is what I get in debug:
[cid:image001.jpg@01D2B51A.E23113D0]
An automatic loop computes data from a stream, and sometimes, data lack.
In this case, $$option($key) is not defined.
So a test should be added before performing operations.
Raphaël CROCHET
ACTIA Automotive (siège social)
5, rue Jorge Semprun
B.P. 74215 - 31432 TOULOUSE cedex 4 (FRANCE)
Tel. +33 (0)5 61 17 61 61
Fax + 33 (0)5 61 55 42 31
http://www.actia.com<http://www.actia.com/>
....................................
[youTube_icon]<http://www.youtube.com/ActiaOfficialCom> [Linkedin_icon] <http://www.linkedin.com/company/actia>
[signature_electronique_actia_v3]<http://www.actia.com/>
Avant d' imprimer ce mail, demandez-vous si ceci est nécessaire.
Before printing this email, assess if it is really needed.
Ce courrier électronique est destiné exclusivement aux personnes ou institutions dont le nom figure ci-dessus et peut contenir des informations protégées par le secret professionnel, dont la divulgation est strictement prohibée.Tout message électronique est susceptible d'altération. Actia décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié.Si vous n'êtes pas destinataire, nous vous avisons que sa lecture, sa reproduction ou sa distribution sont strictement interdites.Nous vous prions en conséquence de nous aviser immédiatement par retour de ce courrier.
This email message is for the sole use of the intended recipient(s) and may contain confidential and privileged information. Any unauthorized review, use, disclosure or
distribution is prohibited. If you are not the intended recipient, please contact the sender by reply
e-mail and destroy all copies of the original message. Thank you.
Message body is not shown because it is too large.