Explorar o código

fix propagation of flagged oversized messages

... when not syncing flags and the target is not being expunged, as in
that case flags were not queried in time.
Oswald Buddenhagen %!s(int64=5) %!d(string=hai) anos
pai
achega
96afe8d0c2
Modificáronse 1 ficheiros con 2 adicións e 2 borrados
  1. 2 2
      src/sync.c

+ 2 - 2
src/sync.c

@@ -1252,9 +1252,9 @@ box_opened2( sync_vars_t *svars, int t )
 				opts[1-t] |= OPEN_FLAGS;
 			if (chan->stores[t]->max_size != INT_MAX) {
 				if (chan->ops[t] & OP_RENEW)
-					opts[1-t] |= OPEN_OLD_SIZE;
+					opts[1-t] |= OPEN_FLAGS|OPEN_OLD_SIZE;
 				if (chan->ops[t] & OP_NEW)
-					opts[1-t] |= OPEN_NEW_SIZE;
+					opts[1-t] |= OPEN_FLAGS|OPEN_NEW_SIZE;
 			}
 		}
 		if (chan->ops[t] & OP_EXPUNGE) {