Ticket #46544

Infinite recursion: found_new_tech() -> choose_tech() -> tech_researched() -> repeat

Date d'ouverture: 2023-01-19 01:05 Dernière mise à jour: 2023-03-20 03:31

Rapporteur:
Propriétaire:
Type:
État:
Atteints
Composant:
Priorité:
5 - moyen
Sévérité:
5 - moyen
Résolution:
Fixed
Fichier:
1

Détails

Backtrace of a crashed S3_0 autogame reveals recursive loop of found_new_tech() -> choose_tech() -> tech_researched() -> from the beginning

choose_tech() seems to have 201 (which is A_FUTURE, I think) as a parameter.

Ticket History (3/7 Histories)

2023-01-19 01:05 Updated by: cazfi
  • New Ticket "Infinite recursion: found_new_tech() -> choose_tech() -> tech_researched() -> repeat" created
2023-01-19 02:35 Updated by: cazfi
Commentaire

This was caused by a local (-> not yet in repo) patch #45115.

A_FUTURE is a tech has it's requirements set to A_NEVER, yet it's supposed to be in game.

2023-01-19 06:43 Updated by: cazfi
Commentaire

Reply To cazfi

This was caused by a local (-> not yet in repo) patch #45115.

It's possible that A_FUTURE not being considered valid advance causes some other issues, but those would have been there for a long time, not to be a recent regression. As changing it has significant risk of breaking some caller, let's leave this to the next full cycle.

2023-02-14 13:38 Updated by: cazfi
  • Propriétaire Update from (Aucun) to cazfi
  • Résolution Update from Aucun to Accepted
2023-02-17 13:38 Updated by: cazfi
  • État Update from Ouvert to Atteints
  • Résolution Update from Accepted to Fixed
2023-03-20 03:31 Updated by: cazfi
Commentaire

Reply To cazfi

As changing it has significant risk of breaking some caller, let's leave this to the next full cycle.

We now have such a breakage in #47574

Modifier

Please login to add comment to this ticket » Connexion