Follow-up Comment #8, patch #3826 (project freeciv):

Hrm?  maphand.c:destroy_base() unconditionally calls tile_remove_base() as the
last operation.  On the server, fc_funcs->destroy_base is set to
maphand.c:destroy_base(), and on the client, fc_funcs->destroy_base is set to
NULL.  I don't see any other callers.  Even in the event that
fc_funcs->destroy_base fails to remove it, shouldn't tile_change_terrain()
either double-check by calling tile_remove_base within the conditional or
dropping the else clause and calling it unconditionally, rather than somewhere
between these options?

I had thought that there might be some difference in the application of
fc_funcs related to the nature of the build (like fc_assert), which might
cause the entire conditional to be meaningless, but if it is just caller
tracking, I suspect this is a bug (although one with very little impact, as
BV_CLR() is safe to call repeatedly without unexpected behaviour).

    _______________________________________________________

Reply to this item at:

  <http://gna.org/patch/?3826>

_______________________________________________
  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