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
}