Project Red - Fabrication

Project Red - Fabrication

19M Downloads

Routes list is empty under some conditions

target-san opened this issue ยท 3 comments

commented

List of available routes cannot be properly retrieved before certain time point in server tick processing. Patch with logging to reproduce: http://pastebin.com/6M2AtPnq
Logging received (two junction pipes connected via two stone pipes):

2014-03-25 16:02:12 [INFO] [STDOUT] Route query packet:
2014-03-25 16:02:12 [INFO] [STDOUT] 
2014-03-25 16:02:12 [INFO] [STDOUT] Server-side activate:
2014-03-25 16:02:12 [INFO] [STDOUT] 9c9cec72-9f05-4517-8bdc-38efd99ace6e
2014-03-25 16:02:12 [INFO] [STDOUT] c6022f94-f865-4fba-9883-01f441476bdc
2014-03-25 16:02:12 [INFO] [STDOUT] 

As you can see, the first packet processed is the one sent from client during activation, and the activation packet is the second one.
Multiple activations show the same result.
Debugger shows that routes list is zero-sized array inside list query packet processor.

commented

UPD: For some reason, local router got via getRouter and the one got via RouterServices are different objects.

commented

UPD: seems that Router and RouterServices objects are just a bit inconsistent. Will try to squash them both into single object and make their behavior consistent.

commented

Best wait until i push the rewrite, its mostly rewritten, your changes will likely be purged