Update of bug #21616 (project freeciv):

                 Summary: Event cache memory corruption => Alternative phases
+ diplomacy

    _______________________________________________________

Follow-up Comment #2:

I think I've now found out the core problem.

As treaty is proposed to ai player whose phase it isn't, adv_data_get()
returns the data pointer (in this particular case the data was also
recalculated with adv_data_phase_init() + adv_data_phase_done(), but I think
it's not necessary for bug to occur). Unfortunately all the data isn't there
as static members once phase is closed, but is stored via pointers for which
the memory is free()d. Also other data seems to get invalidated in
adv_data_phase_done().
I think adv_data_phase_done() has changed relatively recently in this respect.

    _______________________________________________________

Reply to this item at:

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

_______________________________________________
  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