Bug #3901
closedunescaped & in <entity name="a & b"> on line 4
0%
Description
XP Pro x64 SP2, Java 1.6.0_11, Kepler 1.0.0 from kepler-project.org
If a workflow is saved with an & in the file name, even though the file name is valid in the file system, Kepler throws an exception because the name attribute is unescaped in the outermost TypedCompositeActor entity. If Kepler is trying to re-open the workflow similar to how a save as is handled, then it's choking while attempting to parse the file. The & should be escaped as & in the name attribute, I think.
Updated by Christopher Brooks almost 16 years ago
I partially fixed this by modifying PtolemyEffigy so that we escape for xml
the username. Models can now be saved with names like "This & That.xml".
However, the name in the title bar will look like "file:/tmp/This%20&%20That.xml"
The reason is that Ptolemy uses URLs or URIs to represent model names.
Trying to change the title bar so that it shows "file:/tmp/This & That.xml"
initially seems desirable, but spaces are not legitimate characters in URLs
or URIs. If I hacked in something that changed %20 to space, then that
would look better, but it would technically be a lie, since the URL or
URI has %20s in it, not spaces.
Interestingly, if I open /tmp/This & That.xml and then do Save As, then
the file browser shows the initial file name as "This & That.xml", which correct. It would have been wrong to show "This%20&%20That.xml".