View Issue Details

IDProjectCategoryView StatusLast Update
0002791FSSCPFREDpublic2020-05-05 02:05
ReporterFUBAR-BDHR Assigned ToGoober5000  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
Product Version3.6.16 
Summary0002791: Error checking and better handling of invalid wing arrival anchors needed
DescriptionI've hit an int3() twice in the last couple of days just by changing ship classes in FRED and resaving the mission. If you have ships set to arrive via docking bay and you change the ship class they are arriving from to one that doesn't have a docking bay it FRED does not catch it. All you get is a program has stopped responding and if you break into the debugger you are at an int3() in mission_set_arrival_location() line 6366 in missionparse.cpp. This should be changed to a warning and handled gracefully.

Also hit the same int3() by having 2 bay paths with the same name which is another thing that should be checked for.
Steps To ReproduceDrop a cap ship with fighterbay in FRED. Add a couple of fighter, create a wing, assign them to arrive via the fighterbay with a n second delay. Save mission. Test to make sure it works. Open ships editor, change cap ship to one without a fighterbay or anything else like a sentry gun. Save mission again. Run. Wait n seconds, Crash.


For the duplicate name part just edit any pof and rename one of the bays to be the same as any other. Will show up with the correct number of bays in FRED (if there are 6 bays and 2 are named the same you still get 6 in FRED). Set the wing to arrive via the modified cap ship. Run, wait n seconds, crash.
TagsNo tags attached.

Activities

Goober5000

2020-04-28 06:21

administrator   ~0016986

This is a pretty easy fix; sorry it took seven years!

https://github.com/scp-fs2open/fs2open.github.com/pull/2345

Goober5000

2020-05-05 02:05

administrator   ~0016990

PR merged.

Issue History

Date Modified Username Field Change
2013-02-08 21:55 FUBAR-BDHR New Issue
2013-02-20 01:54 Goober5000 Assigned To => Goober5000
2013-02-20 01:54 Goober5000 Status new => assigned
2020-04-28 06:21 Goober5000 Status assigned => code review
2020-04-28 06:21 Goober5000 Note Added: 0016986
2020-05-05 02:05 Goober5000 Status code review => resolved
2020-05-05 02:05 Goober5000 Resolution open => fixed
2020-05-05 02:05 Goober5000 Note Added: 0016990