shithub: puzzles

Download patch

ref: dc688b1f238fd7c343426b76d120e7ab40aa9668
parent: 87b2758b9c5459eae825d0642eb4c057e8c5c6fd
author: Jonas Kölker <jonaskoelker@yahoo.com>
date: Mon Sep 21 12:41:03 EDT 2015

Unequal: stop ignoring keys 'h' and 'm' while cursor active.

At least, so long as 'h' and 'm' are not "numbers".

--- a/unequal.c
+++ b/unequal.c
@@ -1427,10 +1427,9 @@
         return "";
     }
 
-
-    if (ui->hshow) {
+    n = c2n(button, state->order);
+    if (ui->hshow && n >= 0 && n <= ds->order) {
         debug(("button %d, cbutton %d", button, (int)((char)button)));
-        n = c2n(button, state->order);
 
         debug(("n %d, h (%d,%d) p %d flags 0x%x nums %d",
                n, ui->hx, ui->hy, ui->hpencil,
@@ -1437,8 +1436,6 @@
                GRID(state, flags, ui->hx, ui->hy),
                GRID(state, nums, ui->hx, ui->hy)));
 
-        if (n < 0 || n > ds->order)
-            return NULL;        /* out of range */
         if (GRID(state, flags, ui->hx, ui->hy) & F_IMMUTABLE)
             return NULL;        /* can't edit immutable square (!) */
         if (ui->hpencil && GRID(state, nums, ui->hx, ui->hy) > 0)