From 286e7e985d27ce657da7e8318a9b61ecc0b9878b Mon Sep 17 00:00:00 2001 From: Thomas White Date: Mon, 20 Oct 2014 12:23:03 +0200 Subject: Fix up broken series after out-of-order arrival of frames --- src/whirligig.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'src/whirligig.c') diff --git a/src/whirligig.c b/src/whirligig.c index 568094f6..861c2d01 100644 --- a/src/whirligig.c +++ b/src/whirligig.c @@ -338,7 +338,16 @@ static void try_connect(struct image *win, signed int *ser, IntegerMatrix **m, { /* Try to connect to the left */ if ( (pos > 0) && (win[pos-1].serial != 0) ) { - try_join(win, ser, m, ws, pos, pos-1); + + if ( try_join(win, ser, m, ws, pos, pos-1) ) { + /* If this one connects to the left, any frames to the + * right might be affected */ + int i; + for ( i=pos+1; i