[Dot] HTML string is interpreted twice
Ported Issue from Mantis Original ID: 2323 Reported By: zub
SEVERITY: MINOR Submitted: 2013-08-07 13:29:19
OS: LINUX
OS BUILD: DEBIAN SID
PLATFORM: X86_64
DESCRIPTION
Asking dot, neato or twopi to parse the following:
digraph MarkupBug { testNode1 [label=<
<1> |
A |
results in:
Error - pango_parse_markup: Error on line 1 char 33: '1' is not a valid name
An output file is produced despite the error message. It seems the HTML string is unescaped twice. If pango_parse_markup() fails to parse it, the result turns out as expected. Otherwise pango interprets the string again.
In the example testNode1 doesn't parse and produces the error message. testNode2 does parse as pango markup and results in underlined text, which is wrong.
Furthermore the location of the error (line 1 char 33) doesn't seem to be related to the actual input file.
STEPS TO REPRODUCE
Run dot, neat or twopi on the attached input file:
dot test-markup-bug.dot
ADDITIONAL INFORMATION
Reproducible also with 2.30.1 and with git master (6b520d8f).
Not reproducible with 2.26.3 from Debian.
The double unescaping doesn't happen if the enclosing tag is omitted.