View Issue Details

IDProjectCategoryView StatusLast Update
0002893FSSCPFREDpublic2013-06-23 08:44
ReporterFelixJim Assigned ToGoober5000  
PrioritylowSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
Product Version3.7.0 RC2 
Summary0002893: Use of " and ; characters can corrupt mission files
DescriptionThe use of the " and ; characters in sexps at best cause the generation of extra (sometimes nonsense) arguments, and at worst cause the mission file to become unopenable by FRED; text editing is required to remove the offending characters before mission file is usable again.
Steps To ReproduceCreate a show-subtitle-text sexp with the first argument '"' or ';'. Save mission file, observe how an extra argument has been inserted after the first.

Create a script-eval sexp with the argument '"' or ';'. Save mission file, observe error, attempt to load mission file. Observe that this is impossible.
Additional InformationI realise this has been around since retail and people have been surviving with it all this time, but I don't believe a simple slip should be able to render a mission file to become corrupted to the point you need to break out a text editor to fix it.
TagsNo tags attached.

Activities

Goober5000

2013-06-19 02:20

administrator   ~0015131

There are $quote and $semicolon tokens that will allow you to use these characters in sexps. There are functions to convert invalid characters to tokens automatically for briefings and debriefings, but supposedly this doesn't extend to sexps (and it would be worth checking if they extend to messages). I'll take a look.

Goober5000

2013-06-23 08:43

administrator   ~0015143

Fix committed to trunk@9698.

Goober5000

2013-06-23 08:44

administrator   ~0015144

Messages were already handled, but I fixed the sexp tokens. This should work for any sexp tree in any FRED UI dialog.

Related Changesets

fs2open: trunk r9698

2013-06-23 05:45

Goober5000


Ported: N/A

Details Diff
fix Mantis 0002893 (invalid characters in sexp tokens weren't replaced) Affected Issues
0002893
mod - /trunk/fs2_open/code/fred2/sexp_tree.cpp Diff File

Issue History

Date Modified Username Field Change
2013-06-16 21:36 FelixJim New Issue
2013-06-19 02:20 Goober5000 Note Added: 0015131
2013-06-19 02:20 Goober5000 Assigned To => Goober5000
2013-06-19 02:20 Goober5000 Status new => assigned
2013-06-23 08:43 Goober5000 Changeset attached => fs2open trunk r9698
2013-06-23 08:43 Goober5000 Note Added: 0015143
2013-06-23 08:43 Goober5000 Status assigned => resolved
2013-06-23 08:43 Goober5000 Resolution open => fixed
2013-06-23 08:44 Goober5000 Note Added: 0015144