diff options
Diffstat (limited to 'nest/proto.c')
-rw-r--r-- | nest/proto.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/nest/proto.c b/nest/proto.c index 2e1eb8f0..0ad7229c 100644 --- a/nest/proto.c +++ b/nest/proto.c @@ -605,6 +605,9 @@ proto_notify_state(struct proto *p, unsigned ps) switch (ps) { case PS_DOWN: + if ((cs = FS_FEEDING) || (cs == FS_HAPPY)) + proto_schedule_flush(p); + neigh_prune(); // FIXME convert neighbors to resource? rfree(p->pool); p->pool = NULL; @@ -614,9 +617,6 @@ proto_notify_state(struct proto *p, unsigned ps) proto_fell_down(p); return; /* The protocol might have ceased to exist */ } - /* Otherwise, we have something to flush... */ - else if (cs != FS_FLUSHING) - proto_schedule_flush(p); break; case PS_START: ASSERT(ops == PS_DOWN); |