[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#26317: 26.0.50; Small incompatibility in ibuffer.el (ibuffer-compile
From: |
John Mastro |
Subject: |
bug#26317: 26.0.50; Small incompatibility in ibuffer.el (ibuffer-compile-format) |
Date: |
Thu, 30 Mar 2017 16:07:59 -0700 |
In commit 7e2a8b1, ibuffer.el was change to use `string-width' in a couple
places where it previously used `length'. The result is that custom columns
which can return nil, which worked in Emacs 25, will now cause an error.
To reproduce, run `emacs -Q', yank the following into *scratch*, and evaluate
it:
(require 'ibuffer)
(define-ibuffer-column my-column
(:name "X")
(and (equal (buffer-name) "*scratch*") "Y"))
(setq ibuffer-formats '((mark modified read-only
" " (name 18 18 :left :elide)
" " (my-column 5 5 :left)
" " filename-and-process)))
(ibuffer)
It works in Emacs 25, but in Emacs 26 an error is signaled:
Debugger entered--Lisp error: (wrong-type-argument stringp nil)
string-width(nil)
I came across this because I use the `ibuffer-vc' package, which defines a
column (`vc-status') whose implementation returns nil for some buffers (by
default, non-file-visiting buffers and buffers visiting remote files).
I will follow up with a patch in a separate email (so I can include the bug
number in the commit message).
John
- bug#26317: 26.0.50; Small incompatibility in ibuffer.el (ibuffer-compile-format),
John Mastro <=