<URL: http://bugs.freeciv.org/Ticket/Display.html?id=40236 >

...except waste CPU cycles. :(

This was found while testing terrain changes with the editor
(so unfortunately the only way to reproduce is to use the lastest
editor patch in PR#40184 or make a lot of engineers ;)).

In particular this looks very suspicious:

server/citytools.c +2228
          if (VUT_TERRAIN == preq->source.kind
              && !is_req_active(city_owner(pcity), pcity, NULL,
                                NULL, NULL, NULL, NULL,
                                preq, TRUE)) {

The reqs in the building rulesets use TerrainClass, so
why is there VUT_TERRAIN here?

Isn't it necessary to pass ptile into is_req_active (argument
target_tile) so that the VUT_TERRAIN/VUT_TERRAINCLASS test
can have a possibility of returning TRUE? (By passing NULL
the test will always fail, so why call is_req_active anyway?)

Why is the last argument "TRUE" instead of an enum req_problem_type?



Freeciv-dev mailing list

Reply via email to