From 98bdd121d049fd254d425684199e58e9947b08c1 Mon Sep 17 00:00:00 2001 From: H.G.Muller Date: Tue, 7 Oct 2014 08:20:06 +0200 Subject: [PATCH] Preserve other Betza mode bits on setting default modality --- moves.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/moves.c b/moves.c index d1b6508..647aa44 100644 --- a/moves.c +++ b/moves.c @@ -359,7 +359,7 @@ MovesFromString (Board board, int flags, int f, int r, int tx, int ty, int angle mode |= 1024; dy = 1; } if(!cont) { - if(!(mode & 15)) mode = his + 4; // no mode spec, use default = mc + if(!(mode & 15)) mode |= his + 4; // no mode spec, use default = mc } else { strncpy(buf, cont, 80); cont = buf; // copy next leg(s), so we can modify atom = buf; while(islower(*atom)) atom++; // skip to atom @@ -371,7 +371,7 @@ MovesFromString (Board board, int flags, int f, int r, int tx, int ty, int angle atom[1] = atom[2] = '\0'; // make sure any old range is stripped off if(expo == 1) atom[1] = '0'; // turn other leapers into riders } - if(!(mode & 0x30F)) mode = 4; // and default of this leg = m + if(!(mode & 0x30F)) mode |= 4; // and default of this leg = m } if(dy == 1) skip = jump - 1, jump = 1; // on W & F atoms 'j' = skip first square do { -- 1.7.0.4