alphapapa/magit-todos

Wrong type argument: number-or-marker-p when magit-todos-auto-group-items is non-numeric

hlissner opened this issue · 1 comments

When magit-todos-auto-group-items is set to 'always or 'never, which its definition suggests is valid, then magit-todos-list-refresh-buffer throws this error (borrowed from doomemacs/doomemacs#2155) when invoking magit-todos-list.

Debugger entered--Lisp error: (wrong-type-argument number-or-marker-p always)
  *(always 10)
  (set (make-local-variable (quote magit-todos-auto-group-items)) (* magit-todos-auto-group-items magit-todos-buffer-item-factor))
  magit-todos-list-refresh-buffer()
  apply(magit-todos-list-refresh-buffer nil)
  magit-refresh-buffer()
  magit-setup-buffer-internal(magit-todos-list-mode nil nil)
  (let ((default-directory directory)) (magit-setup-buffer-internal (function magit-todos-list-mode) nil (list)))
  magit-todos-list-internal("/home/brightone/dev/rust/rusteam/")
  (let ((magit--refresh-cache (list (cons 0 0)))) (setq directory (if directory (file-name-as-directory (expand-file-name directory)) default-directory)) (magit-todos-list-internal directory))
  (condition-case nil (let ((magit--refresh-cache (list (cons 0 0)))) (setq directory (if directory (file-name-as-directory (expand-file-name directory)) default-directory)) (magit-todos-list-internal directory)) ((quote magit-outside-git-repo) (let* ((vnew (function (lambda (&rest _) default-directory))) (old (symbol-function (quote magit-toplevel)))) (unwind-protect (progn (fset (quote magit-toplevel) vnew) (call-interactively (function magit-todos-list))) (fset (quote magit-toplevel) old)))))
  magit-todos-list(nil)
  funcall-interactively(magit-todos-list nil)
  call-interactively(magit-todos-list nil nil)
  command-execute(magit-todos-list)

The cause: in magit-todos-list-refresh-buffer, magit-todos-auto-group-items is used as though it will always have a numerical value.

That should do it. Thanks for forwarding the bug report!