|
@ -590,7 +590,9 @@ void iguana_statemachineupdate(struct supernet_info *myinfo,struct exchange_info |
|
|
portable_mutex_lock(&exchange->mutex); |
|
|
portable_mutex_lock(&exchange->mutex); |
|
|
DL_FOREACH_SAFE(exchange->statemachines,swap,tmp) |
|
|
DL_FOREACH_SAFE(exchange->statemachines,swap,tmp) |
|
|
{ |
|
|
{ |
|
|
instantdex_statemachine_iter(myinfo,exchange,swap); |
|
|
if ( swap->dead != 0 || swap->mine.dead == 0 || swap->other.dead == 0 ) |
|
|
|
|
|
DL_DELETE(exchange->statemachines,swap); |
|
|
|
|
|
else instantdex_statemachine_iter(myinfo,exchange,swap); |
|
|
} |
|
|
} |
|
|
portable_mutex_unlock(&exchange->mutex); |
|
|
portable_mutex_unlock(&exchange->mutex); |
|
|
while ( (req= queue_dequeue(&exchange->recvQ,0)) != 0 ) |
|
|
while ( (req= queue_dequeue(&exchange->recvQ,0)) != 0 ) |
|
|