Follow-up Comment #5, bug #19029 (project freeciv):

So that suggests on at least two platforms, including one popular one ;),
there's no actual data loss, just permutation. I checked my savefile and it's
consistent with the numbers from the test progam.

Meanwhile, a question. In the per-player part of the savefile, there's the
saved terrain, playerX.map_tYYYY (saved in sg_save_player_vision()). For each
map tile, this saves a single character representing what the player believes
the terrain to be, *or 'u' for unknown terrain*.

Specifically, it's 'u' if map_get_player_tile(ptile, plr)->terrain is NULL.

Is there any circumstance where that condition isn't identical to
map_is_known(ptile,plr) returning FALSE?

On a quick look, I haven't found any sanity checks or similar asserting that
this is so for every tile every turn, or on loading a savefile, or what have
you, but I haven't thought of a way in which they can come adrift from each
other. I think map_show_tile() is the primary way in which this state
changes.

If so, the state being saved here is redundant. Normally I think we'd remove
it for the next major release, but here we could just switch to generating the
known info from the player map and lose the need for backward compatibility
code?

    _______________________________________________________

Reply to this item at:

  <http://gna.org/bugs/?19029>

_______________________________________________
  Message sent via/by Gna!
  http://gna.org/


_______________________________________________
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev

Reply via email to