void
SetHighlights (int fromX, int fromY, int toX, int toY)
{
- int arrow = hi2X > 0 && IsDrawArrowEnabled();
+ int arrow = hi2X >= 0 && hi1Y >= 0 && IsDrawArrowEnabled();
if (hi1X != fromX || hi1Y != fromY) {
if (hi1X >= 0 && hi1Y >= 0) {
hi2X = toX;
hi2Y = toY;
- if(arrow || toX < 0 && IsDrawArrowEnabled())
+ if(arrow || toX >= 0 && fromY >= 0 && IsDrawArrowEnabled())
DrawPosition(FALSE, NULL); // repair any arrow damage, or draw a new one
}
static int lastBoardValid[2] = {0, 0};
static Board lastBoard[2];
static char lastMarker[BOARD_RANKS][BOARD_FILES];
- Arg args[16];
int rrow, rcol;
int nr = twoBoards*partnerUp;