]> git.eshelyaron.com Git - emacs.git/commitdiff
Avoid recomputing the whole table in 'vtable--recompute-numerical'
authorAdam Porter <adam@alphapapa.net>
Thu, 21 Mar 2024 07:13:28 +0000 (02:13 -0500)
committerEshel Yaron <me@eshelyaron.com>
Sun, 24 Mar 2024 14:14:12 +0000 (15:14 +0100)
Each element of LINE being tested is a list, the first element of
which is the value actually being represented in the table.
Previously, the 'numberp' test would always fail, because it was
being compared with the list rather than the intended value in it;
that could cause the whole table to be recomputed, sometimes
unnecessarily.
* lisp/emacs-lisp/vtable.el (vtable--recompute-numerical): Test the
car of ELEM, not ELEM itself, which is a list.  (Bug#69927)

(cherry picked from commit b3f04eb68499f285e05b5b74e9cbd67f3140fb3c)

lisp/emacs-lisp/vtable.el

index 15a430f5c262e89a78af4776b49024116409f825..5f7d3ae5210f82dd51ba9faf324bd919cbb47c35 100644 (file)
@@ -743,7 +743,7 @@ If NEXT, do the next column."
     (seq-do-indexed
      (lambda (elem index)
        (when (and (vtable-column--numerical (elt columns index))
-                  (not (numberp elem)))
+                  (not (numberp (car elem))))
          (setq recompute t)))
      line)
     (when recompute