URL: <http://gna.org/bugs/?21410>
Summary: Gen-road unit orders not loaded correctly from savefile? Project: Freeciv Submitted by: jtn Submitted on: Wed Jan 1 23:59:17 2014 Category: None Severity: 3 - Normal Priority: 5 - Normal Status: None Assigned to: None Originator Email: Open/Closed: Open Release: trunk/S2_5 r23971 Discussion Lock: Any Operating System: Any Planned Release: 2.5.0,2.6.0 _______________________________________________________ Details: Noticed in passing when reading the code: When a unit has saved orders (such as a connect-with-road path), those are saved in the savegame with single-character codes. Traditionally 'r' has been 'road'. This is now ACTIVITY_OLD_ROAD, and upper-case version 'R' has been allocated for ACTIVITY_GEN_ROAD (with the road type elsewhere). Unfortunately, savegame2.c:char2activity() matches case-insensitively, so on loading, both 'r' and 'R' will be interpreted as ACTIVITY_OLD_ROAD (and the road type will be ignored). I couldn't conveniently set up a good test case -- with the classic ruleset and basic roads, I think the OLD_ROAD order gets converted back into the appropriate gen-road equivalent so the round-trip works for basic roads, but presumably not for exotic roads. Probably the simplest solution is to retrospectively declare that activity codes are case-sensitive in savegame2 format files (after some checking that they always have been, of course). _______________________________________________________ Reply to this item at: <http://gna.org/bugs/?21410> _______________________________________________ Message sent via/by Gna! http://gna.org/ _______________________________________________ Freeciv-dev mailing list Freeciv-dev@gna.org https://mail.gna.org/listinfo/freeciv-dev