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 Freecivfirstname.lastname@example.org https://mail.gna.org/listinfo/freeciv-dev