abort channel sync when a store is fubar
this got lost in d5a5da947
.
this also simplifies a nested condition, where the logic has previously
been, but isn't applicable any more.
REFMAIL: 87fsjloz05.fsf@wavexx.thregr.org
This commit is contained in:
parent
92faccc639
commit
460bfbb8ac
|
@ -668,7 +668,7 @@ static void
|
||||||
do_sync_boxes( main_vars_t *mvars )
|
do_sync_boxes( main_vars_t *mvars )
|
||||||
{
|
{
|
||||||
mvars->box_cben = 0;
|
mvars->box_cben = 0;
|
||||||
for (;;) {
|
while (mvars->state[F] == ST_OPEN && mvars->state[N] == ST_OPEN) {
|
||||||
if (mvars->chanptr->boxlist) {
|
if (mvars->chanptr->boxlist) {
|
||||||
box_ent_t *mbox = mvars->boxptr;
|
box_ent_t *mbox = mvars->boxptr;
|
||||||
if (!mbox)
|
if (!mbox)
|
||||||
|
@ -730,13 +730,11 @@ done_sync( int sts, void *aux )
|
||||||
stats();
|
stats();
|
||||||
if (sts) {
|
if (sts) {
|
||||||
mvars->cvars->ret = 1;
|
mvars->cvars->ret = 1;
|
||||||
if (sts & (SYNC_BAD(F) | SYNC_BAD(N))) {
|
|
||||||
if (sts & SYNC_BAD(F))
|
if (sts & SYNC_BAD(F))
|
||||||
mvars->state[F] = ST_CLOSED;
|
mvars->state[F] = ST_CLOSED;
|
||||||
if (sts & SYNC_BAD(N))
|
if (sts & SYNC_BAD(N))
|
||||||
mvars->state[N] = ST_CLOSED;
|
mvars->state[N] = ST_CLOSED;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
mvars->box_done = 1;
|
mvars->box_done = 1;
|
||||||
if (mvars->box_cben)
|
if (mvars->box_cben)
|
||||||
do_sync_boxes( mvars );
|
do_sync_boxes( mvars );
|
||||||
|
|
Loading…
Reference in New Issue
Block a user