unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#45800: 27.1; ibuffer sort by filename/process fails with Dired
@ 2021-01-11 20:02 Fabrice BAUZAC-STEHLY
  2021-01-17 15:27 ` Basil L. Contovounesios
  0 siblings, 1 reply; 5+ messages in thread
From: Fabrice BAUZAC-STEHLY @ 2021-01-11 20:02 UTC (permalink / raw)
  To: 45800

Hello,

In ibuffer, the sort by filename/process (s f) does not sort according
to the (useful) displayed filename/process column.

To reproduce:

mkdir test
cd test
(a=b; for i in {1..3}; do mkdir $a; touch $a/a; a+=/b; done)
find
emacs -Q `find`
C-x 1
M-x ibuffer RET
s f

The result is that the dired buffers are grouped together, and the files
are grouped together, while they should be interspersed according to
lexicographical order of their "filename/process" column.

Looking at the sorter in ibuf-ext.el:

(define-ibuffer-sorter filename/process
 "Sort the buffers by their file name/process name."
  (:description "file name")
  (string-lessp
   ;; FIXME: For now just compare the file name and the process name
   ;; (if it exists).  Is there a better way to do this?
   (or (buffer-file-name (car a))
       (let ((pr-a (get-buffer-process (car a))))
	 (and (processp pr-a) (process-name pr-a))))
   (or (buffer-file-name (car b))
       (let ((pr-b (get-buffer-process (car b))))
	 (and (processp pr-b) (process-name pr-b))))))

To fix this on my side, I have replaced both occurrences of
  (buffer-file-name (car X))
with
  (with-current-buffer (car X) (ibuffer-buffer-file-name))
which seems to work:

(define-ibuffer-sorter filename/process
 "Sort the buffers by their file name/process name."
  (:description "file name")
  (string-lessp
   ;; FIXME: For now just compare the file name and the process name
   ;; (if it exists).  Is there a better way to do this?
   (or (with-current-buffer (car a) (ibuffer-buffer-file-name))
       (let ((pr-a (get-buffer-process (car a))))
	 (and (processp pr-a) (process-name pr-a))))
   (or (with-current-buffer (car b) (ibuffer-buffer-file-name))
       (let ((pr-b (get-buffer-process (car b))))
	 (and (processp pr-b) (process-name pr-b))))))

In GNU Emacs 27.1 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.23, cairo version 1.16.0)
 of 2020-11-08, modified by Debian built on x86-ubc-01
Windowing system distributor 'The X.Org Foundation', version 11.0.12010000
System Description: Debian GNU/Linux bullseye/sid

Recent messages:
Quit [2 times]
C-x C-g is undefined
Making completion list...
Quit
Mark saved where search started
Auto-saving...done
Making completion list...
Quit
Mark set
Making completion list...

Configured using:
 'configure --build x86_64-linux-gnu --prefix=/usr
 --sharedstatedir=/var/lib --libexecdir=/usr/lib
 --localstatedir=/var/lib --infodir=/usr/share/info
 --mandir=/usr/share/man --enable-libsystemd --with-pop=yes
 --enable-locallisppath=/etc/emacs:/usr/local/share/emacs/27.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/27.1/site-lisp:/usr/share/emacs/site-lisp
 --with-sound=alsa --without-gconf --with-mailutils --build
 x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib
 --libexecdir=/usr/lib --localstatedir=/var/lib
 --infodir=/usr/share/info --mandir=/usr/share/man --enable-libsystemd
 --with-pop=yes
 --enable-locallisppath=/etc/emacs:/usr/local/share/emacs/27.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/27.1/site-lisp:/usr/share/emacs/site-lisp
 --with-sound=alsa --without-gconf --with-mailutils --with-cairo
 --with-x=yes --with-x-toolkit=gtk3 --with-toolkit-scroll-bars
 'CFLAGS=-g -O2
 -fdebug-prefix-map=/build/emacs-6jKC2B/emacs-27.1+1=. -fstack-protector-strong
 -Wformat -Werror=format-security -Wall' 'CPPFLAGS=-Wdate-time
 -D_FORTIFY_SOURCE=2' LDFLAGS=-Wl,-z,relro'

Configured features:
XPM JPEG TIFF GIF PNG RSVG CAIRO SOUND GPM DBUS GSETTINGS GLIB NOTIFY
INOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE HARFBUZZ M17N_FLT LIBOTF
ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS LIBSYSTEMD
JSON PDUMPER LCMS2 GMP

Important settings:
  value of $LC_ALL: C
  value of $LC_MONETARY: fr_FR.UTF-8
  value of $LC_NUMERIC: fr_FR.UTF-8
  value of $LC_TIME: fr_FR.UTF-8
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: nil

Major mode: Emacs-Lisp

Minor modes in effect:
  global-magit-file-mode: t
  magit-auto-revert-mode: t
  global-git-commit-mode: t
  async-bytecomp-package-mode: t
  shell-dirtrack-mode: t
  show-paren-mode: t
  electric-pair-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  global-prettify-symbols-mode: t
  prettify-symbols-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  buffer-read-only: t
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
/usr/share/emacs/site-lisp/llvm-11/tablegen-mode hides /usr/share/emacs/site-lisp/llvm-9/tablegen-mode
/usr/share/emacs/site-lisp/llvm-11/llvm-mode hides /usr/share/emacs/site-lisp/llvm-9/llvm-mode
/usr/share/emacs/site-lisp/llvm-11/emacs hides /usr/share/emacs/site-lisp/llvm-9/emacs
/home/noon/.emacs.d/elpa/dash-20190814.2006/dash hides /usr/share/emacs/site-lisp/elpa/dash-2.17.0/dash
/home/noon/.emacs.d/elpa/dash-20190814.2006/dash-pkg hides /usr/share/emacs/site-lisp/elpa/dash-2.17.0/dash-pkg
/home/noon/.emacs.d/elpa/dash-20190814.2006/dash-autoloads hides /usr/share/emacs/site-lisp/elpa/dash-2.17.0/dash-autoloads
/usr/share/emacs/site-lisp/elpa/debian-el-37/debian-autoloads hides /usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.0/debian-autoloads
/home/noon/.emacs.d/elpa/git-commit-20190717.29/git-commit hides /usr/share/emacs/site-lisp/elpa/git-commit-2.99.0/git-commit
/home/noon/.emacs.d/elpa/git-commit-20190717.29/git-commit-pkg hides /usr/share/emacs/site-lisp/elpa/git-commit-2.99.0/git-commit-pkg
/home/noon/.emacs.d/elpa/git-commit-20190717.29/git-commit-autoloads hides /usr/share/emacs/site-lisp/elpa/git-commit-2.99.0/git-commit-autoloads
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-worktree hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-worktree
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-wip hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-wip
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-utils hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-utils
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-transient hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-transient
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-tag hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-tag
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-subtree hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-subtree
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-submodule hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-submodule
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-status hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-status
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-stash hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-stash
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-sequence hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-sequence
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-section hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-section
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-reset hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-reset
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-repos hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-repos
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-remote hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-remote
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-refs hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-refs
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-reflog hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-reflog
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-push hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-push
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-pull hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-pull
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-process hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-process
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-pkg hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-pkg
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-patch hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-patch
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-obsolete hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-obsolete
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-notes hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-notes
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-mode hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-mode
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-merge hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-merge
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-margin hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-margin
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-log hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-log
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-imenu hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-imenu
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-gitignore hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-gitignore
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-git hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-git
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-files hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-files
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-fetch hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-fetch
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-extras hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-extras
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-ediff hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-ediff
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-diff hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-diff
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-core hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-core
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-commit hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-commit
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-clone hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-clone
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-branch hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-branch
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-bookmark hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-bookmark
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-blame hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-blame
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-bisect hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-bisect
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-autorevert hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-autorevert
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-apply hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-apply
/home/noon/.emacs.d/elpa/magit-20190902.1343/git-rebase hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/git-rebase
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-autoloads hides /usr/share/emacs/site-lisp/elpa/magit-2.99.0/magit-autoloads
/home/noon/.emacs.d/elpa/transient-20190831.802/transient hides /usr/share/emacs/site-lisp/elpa/transient-0.2.0.30/transient
/home/noon/.emacs.d/elpa/transient-20190831.802/transient-pkg hides /usr/share/emacs/site-lisp/elpa/transient-0.2.0.30/transient-pkg
/home/noon/.emacs.d/elpa/transient-20190831.802/transient-autoloads hides /usr/share/emacs/site-lisp/elpa/transient-0.2.0.30/transient-autoloads
/home/noon/.emacs.d/elpa/with-editor-20190715.2007/with-editor-pkg hides /usr/share/emacs/site-lisp/elpa/with-editor-3.0.2/with-editor-pkg
/home/noon/.emacs.d/elpa/with-editor-20190715.2007/with-editor hides /usr/share/emacs/site-lisp/elpa/with-editor-3.0.2/with-editor
/home/noon/.emacs.d/elpa/with-editor-20190715.2007/with-editor-autoloads hides /usr/share/emacs/site-lisp/elpa/with-editor-3.0.2/with-editor-autoloads
/home/noon/.emacs.d/elpa/yaml-mode-20170727.1531/yaml-mode hides /usr/share/emacs/site-lisp/elpa/yaml-mode-0.0.15/yaml-mode
/home/noon/.emacs.d/elpa/yaml-mode-20170727.1531/yaml-mode-pkg hides /usr/share/emacs/site-lisp/elpa/yaml-mode-0.0.15/yaml-mode-pkg
/home/noon/.emacs.d/elpa/yaml-mode-20170727.1531/yaml-mode-autoloads hides /usr/share/emacs/site-lisp/elpa/yaml-mode-0.0.15/yaml-mode-autoloads
/home/noon/.emacs.d/elpa/dash-20190814.2006/dash hides /usr/share/emacs/site-lisp/elpa-src/dash-2.17.0/dash
/home/noon/.emacs.d/elpa/dash-20190814.2006/dash-pkg hides /usr/share/emacs/site-lisp/elpa-src/dash-2.17.0/dash-pkg
/home/noon/.emacs.d/elpa/dash-20190814.2006/dash-autoloads hides /usr/share/emacs/site-lisp/elpa-src/dash-2.17.0/dash-autoloads
/usr/share/emacs/site-lisp/elpa/debian-el-37/preseed hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37/preseed
/usr/share/emacs/site-lisp/elpa/debian-el-37/gnus-BTS hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37/gnus-BTS
/usr/share/emacs/site-lisp/elpa/debian-el-37/debian-el hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37/debian-el
/usr/share/emacs/site-lisp/elpa/debian-el-37/debian-el-pkg hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37/debian-el-pkg
/usr/share/emacs/site-lisp/elpa/debian-el-37/debian-el-autoloads hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37/debian-el-autoloads
/usr/share/emacs/site-lisp/elpa/debian-el-37/debian-bug hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37/debian-bug
/usr/share/emacs/site-lisp/elpa/debian-el-37/debian-autoloads hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37/debian-autoloads
/usr/share/emacs/site-lisp/elpa/debian-el-37/deb-view hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37/deb-view
/usr/share/emacs/site-lisp/elpa/debian-el-37/apt-utils hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37/apt-utils
/usr/share/emacs/site-lisp/elpa/debian-el-37/apt-sources hides /usr/share/emacs/site-lisp/elpa-src/debian-el-37/apt-sources
/usr/share/emacs/site-lisp/elpa/dockerfile-mode-1.2/dockerfile-mode hides /usr/share/emacs/site-lisp/elpa-src/dockerfile-mode-1.2/dockerfile-mode
/usr/share/emacs/site-lisp/elpa/dockerfile-mode-1.2/dockerfile-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/dockerfile-mode-1.2/dockerfile-mode-pkg
/usr/share/emacs/site-lisp/elpa/dockerfile-mode-1.2/dockerfile-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/dockerfile-mode-1.2/dockerfile-mode-autoloads
/usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.0/readme-debian hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.0/readme-debian
/usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.0/dpkg-dev-el hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.0/dpkg-dev-el
/usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.0/dpkg-dev-el-pkg hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.0/dpkg-dev-el-pkg
/usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.0/dpkg-dev-el-autoloads hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.0/dpkg-dev-el-autoloads
/usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.0/debian-copyright hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.0/debian-copyright
/usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.0/debian-control-mode hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.0/debian-control-mode
/usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.0/debian-changelog-mode hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.0/debian-changelog-mode
/usr/share/emacs/site-lisp/elpa/dpkg-dev-el-37.0/debian-bts-control hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.0/debian-bts-control
/usr/share/emacs/site-lisp/elpa/debian-el-37/debian-autoloads hides /usr/share/emacs/site-lisp/elpa-src/dpkg-dev-el-37.0/debian-autoloads
/home/noon/.emacs.d/elpa/git-commit-20190717.29/git-commit hides /usr/share/emacs/site-lisp/elpa-src/git-commit-2.99.0/git-commit
/home/noon/.emacs.d/elpa/git-commit-20190717.29/git-commit-pkg hides /usr/share/emacs/site-lisp/elpa-src/git-commit-2.99.0/git-commit-pkg
/home/noon/.emacs.d/elpa/git-commit-20190717.29/git-commit-autoloads hides /usr/share/emacs/site-lisp/elpa-src/git-commit-2.99.0/git-commit-autoloads
/usr/share/emacs/site-lisp/elpa/go-mode-1.5.0/go-rename hides /usr/share/emacs/site-lisp/elpa-src/go-mode-1.5.0/go-rename
/usr/share/emacs/site-lisp/elpa/go-mode-1.5.0/go-mode hides /usr/share/emacs/site-lisp/elpa-src/go-mode-1.5.0/go-mode
/usr/share/emacs/site-lisp/elpa/go-mode-1.5.0/go-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/go-mode-1.5.0/go-mode-pkg
/usr/share/emacs/site-lisp/elpa/go-mode-1.5.0/go-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/go-mode-1.5.0/go-mode-autoloads
/usr/share/emacs/site-lisp/elpa/go-mode-1.5.0/go-guru hides /usr/share/emacs/site-lisp/elpa-src/go-mode-1.5.0/go-guru
/usr/share/emacs/site-lisp/elpa/let-alist-1.0.6/let-alist hides /usr/share/emacs/site-lisp/elpa-src/let-alist-1.0.6/let-alist
/usr/share/emacs/site-lisp/elpa/let-alist-1.0.6/let-alist-pkg hides /usr/share/emacs/site-lisp/elpa-src/let-alist-1.0.6/let-alist-pkg
/usr/share/emacs/site-lisp/elpa/let-alist-1.0.6/let-alist-autoloads hides /usr/share/emacs/site-lisp/elpa-src/let-alist-1.0.6/let-alist-autoloads
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-worktree hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-worktree
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-wip hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-wip
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-utils hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-utils
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-transient hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-transient
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-tag hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-tag
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-subtree hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-subtree
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-submodule hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-submodule
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-status hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-status
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-stash hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-stash
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-sequence hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-sequence
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-section hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-section
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-reset hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-reset
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-repos hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-repos
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-remote hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-remote
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-refs hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-refs
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-reflog hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-reflog
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-push hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-push
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-pull hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-pull
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-process hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-process
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-pkg hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-pkg
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-patch hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-patch
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-obsolete hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-obsolete
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-notes hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-notes
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-mode hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-mode
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-merge hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-merge
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-margin hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-margin
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-log hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-log
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-imenu hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-imenu
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-gitignore hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-gitignore
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-git hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-git
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-files hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-files
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-fetch hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-fetch
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-extras hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-extras
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-ediff hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-ediff
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-diff hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-diff
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-core hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-core
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-commit hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-commit
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-clone hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-clone
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-branch hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-branch
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-bookmark hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-bookmark
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-blame hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-blame
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-bisect hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-bisect
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-autorevert hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-autorevert
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-autoloads hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-autoloads
/home/noon/.emacs.d/elpa/magit-20190902.1343/magit-apply hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/magit-apply
/home/noon/.emacs.d/elpa/magit-20190902.1343/git-rebase hides /usr/share/emacs/site-lisp/elpa-src/magit-2.99.0/git-rebase
/usr/share/emacs/site-lisp/elpa/pdf-tools-1.0/pdf-virtual hides /usr/share/emacs/site-lisp/elpa-src/pdf-tools-1.0/pdf-virtual
/usr/share/emacs/site-lisp/elpa/pdf-tools-1.0/pdf-view hides /usr/share/emacs/site-lisp/elpa-src/pdf-tools-1.0/pdf-view
/usr/share/emacs/site-lisp/elpa/pdf-tools-1.0/pdf-util hides /usr/share/emacs/site-lisp/elpa-src/pdf-tools-1.0/pdf-util
/usr/share/emacs/site-lisp/elpa/pdf-tools-1.0/pdf-tools hides /usr/share/emacs/site-lisp/elpa-src/pdf-tools-1.0/pdf-tools
/usr/share/emacs/site-lisp/elpa/pdf-tools-1.0/pdf-tools-pkg hides /usr/share/emacs/site-lisp/elpa-src/pdf-tools-1.0/pdf-tools-pkg
/usr/share/emacs/site-lisp/elpa/pdf-tools-1.0/pdf-tools-autoloads hides /usr/share/emacs/site-lisp/elpa-src/pdf-tools-1.0/pdf-tools-autoloads
/usr/share/emacs/site-lisp/elpa/pdf-tools-1.0/pdf-sync hides /usr/share/emacs/site-lisp/elpa-src/pdf-tools-1.0/pdf-sync
/usr/share/emacs/site-lisp/elpa/pdf-tools-1.0/pdf-outline hides /usr/share/emacs/site-lisp/elpa-src/pdf-tools-1.0/pdf-outline
/usr/share/emacs/site-lisp/elpa/pdf-tools-1.0/pdf-occur hides /usr/share/emacs/site-lisp/elpa-src/pdf-tools-1.0/pdf-occur
/usr/share/emacs/site-lisp/elpa/pdf-tools-1.0/pdf-misc hides /usr/share/emacs/site-lisp/elpa-src/pdf-tools-1.0/pdf-misc
/usr/share/emacs/site-lisp/elpa/pdf-tools-1.0/pdf-loader hides /usr/share/emacs/site-lisp/elpa-src/pdf-tools-1.0/pdf-loader
/usr/share/emacs/site-lisp/elpa/pdf-tools-1.0/pdf-links hides /usr/share/emacs/site-lisp/elpa-src/pdf-tools-1.0/pdf-links
/usr/share/emacs/site-lisp/elpa/pdf-tools-1.0/pdf-isearch hides /usr/share/emacs/site-lisp/elpa-src/pdf-tools-1.0/pdf-isearch
/usr/share/emacs/site-lisp/elpa/pdf-tools-1.0/pdf-info hides /usr/share/emacs/site-lisp/elpa-src/pdf-tools-1.0/pdf-info
/usr/share/emacs/site-lisp/elpa/pdf-tools-1.0/pdf-history hides /usr/share/emacs/site-lisp/elpa-src/pdf-tools-1.0/pdf-history
/usr/share/emacs/site-lisp/elpa/pdf-tools-1.0/pdf-dev hides /usr/share/emacs/site-lisp/elpa-src/pdf-tools-1.0/pdf-dev
/usr/share/emacs/site-lisp/elpa/pdf-tools-1.0/pdf-cache hides /usr/share/emacs/site-lisp/elpa-src/pdf-tools-1.0/pdf-cache
/usr/share/emacs/site-lisp/elpa/pdf-tools-1.0/pdf-annot hides /usr/share/emacs/site-lisp/elpa-src/pdf-tools-1.0/pdf-annot
/usr/share/emacs/site-lisp/elpa/rust-mode-0.3.0/rust-mode hides /usr/share/emacs/site-lisp/elpa-src/rust-mode-0.3.0/rust-mode
/usr/share/emacs/site-lisp/elpa/rust-mode-0.3.0/rust-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/rust-mode-0.3.0/rust-mode-pkg
/usr/share/emacs/site-lisp/elpa/rust-mode-0.3.0/rust-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/rust-mode-0.3.0/rust-mode-autoloads
/usr/share/emacs/site-lisp/elpa/tablist-1.0/tablist hides /usr/share/emacs/site-lisp/elpa-src/tablist-1.0/tablist
/usr/share/emacs/site-lisp/elpa/tablist-1.0/tablist-pkg hides /usr/share/emacs/site-lisp/elpa-src/tablist-1.0/tablist-pkg
/usr/share/emacs/site-lisp/elpa/tablist-1.0/tablist-filter hides /usr/share/emacs/site-lisp/elpa-src/tablist-1.0/tablist-filter
/usr/share/emacs/site-lisp/elpa/tablist-1.0/tablist-autoloads hides /usr/share/emacs/site-lisp/elpa-src/tablist-1.0/tablist-autoloads
/home/noon/.emacs.d/elpa/transient-20190831.802/transient hides /usr/share/emacs/site-lisp/elpa-src/transient-0.2.0.30/transient
/home/noon/.emacs.d/elpa/transient-20190831.802/transient-pkg hides /usr/share/emacs/site-lisp/elpa-src/transient-0.2.0.30/transient-pkg
/home/noon/.emacs.d/elpa/transient-20190831.802/transient-autoloads hides /usr/share/emacs/site-lisp/elpa-src/transient-0.2.0.30/transient-autoloads
/home/noon/.emacs.d/elpa/with-editor-20190715.2007/with-editor hides /usr/share/emacs/site-lisp/elpa-src/with-editor-3.0.2/with-editor
/home/noon/.emacs.d/elpa/with-editor-20190715.2007/with-editor-pkg hides /usr/share/emacs/site-lisp/elpa-src/with-editor-3.0.2/with-editor-pkg
/home/noon/.emacs.d/elpa/with-editor-20190715.2007/with-editor-autoloads hides /usr/share/emacs/site-lisp/elpa-src/with-editor-3.0.2/with-editor-autoloads
/home/noon/.emacs.d/elpa/yaml-mode-20170727.1531/yaml-mode hides /usr/share/emacs/site-lisp/elpa-src/yaml-mode-0.0.15/yaml-mode
/home/noon/.emacs.d/elpa/yaml-mode-20170727.1531/yaml-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/yaml-mode-0.0.15/yaml-mode-pkg
/home/noon/.emacs.d/elpa/yaml-mode-20170727.1531/yaml-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/yaml-mode-0.0.15/yaml-mode-autoloads
/usr/share/emacs/site-lisp/elpa/let-alist-1.0.6/let-alist hides /usr/share/emacs/27.1/lisp/emacs-lisp/let-alist

Features:
(shadow sort emacsbug mail-extr executable copyright my-present
my-timeline ert pp ewoc calc-arith ibuf-macs cl-print debug backtrace
char-fold misearch multi-isearch eieio-opt speedbar sb-image ezimage
dframe help-fns radix-tree ibuf-ext ibuffer ibuffer-loaddefs dired-aux
epa-file secrets dbus tramp-cache pcase cal-china lunar solar cal-dst
cal-islam holidays hol-loaddefs vc-git appt diary-lib diary-loaddefs
find-lisp filecache my-magit magit-submodule magit-obsolete magit-popup
magit-blame magit-stash magit-reflog magit-bisect magit-push magit-pull
magit-fetch magit-clone magit-remote magit-commit magit-sequence
magit-notes magit-worktree magit-tag magit-merge magit-branch
magit-reset magit-files magit-refs magit-status magit magit-repos
magit-apply magit-wip magit-log which-func imenu magit-diff smerge-mode
diff diff-mode magit-core magit-autorevert autorevert filenotify
magit-margin magit-transient magit-process magit-mode transient
git-commit magit-git magit-section magit-utils crm log-edit pcvs-util
add-log with-editor cl-extra help-mode async-bytecomp async dash
pdf-loader my-bazel my-skeletons skeleton python tramp-sh tramp
tramp-loaddefs trampver tramp-integration files-x tramp-compat shell
ls-lisp cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align
cc-engine cc-vars cc-defs calc-prog calc-ext calc calc-loaddefs
calc-macs paren elec-pair mu4e desktop frameset mu4e-org mu4e-main
mu4e-headers mu4e-view gnus-art mm-uu mml2015 mm-view mml-smime smime
dig gnus-sum url url-proxy url-privacy url-expand url-methods
url-history mailcap shr url-cookie url-domsuf url-util svg xml dom
gnus-group gnus-undo gnus-start gnus-cloud nnimap nnmail mail-source
utf7 netrc nnoo parse-time iso8601 gnus-spec gnus-int gnus-range
gnus-win gnus nnheader mu4e-compose mu4e-context mu4e-draft mu4e-actions
org-capture ido rfc2368 smtpmail sendmail mu4e-mark mu4e-message
flow-fill mu4e-proc mu4e-utils doc-view jka-compr image-mode exif
mu4e-lists org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro
org-footnote org-src ob-comint org-pcomplete pcomplete comint ansi-color
ring org-list org-faces org-entities org-version ob-emacs-lisp ob-core
ob-eval org-table ol org-keys org-compat advice org-macs org-loaddefs
find-func cal-menu calendar cal-loaddefs mule-util hl-line mu4e-vars
message rmc puny dired dired-loaddefs format-spec rfc822 mml mml-sec epa
epg epg-config gnus-util rmail rmail-loaddefs text-property-search
time-date mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047
rfc2045 mm-util ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils
mailheader mu4e-meta server jira-markup-mode derived thingatpt edmacro
kmacro cl noutline outline easy-mmode cus-edit cus-start cus-load
wid-edit dpkg-dev-el info debian-el go-mode-autoloads package easymenu
browse-url url-handlers url-parse auth-source cl-seq eieio eieio-core
cl-macs eieio-loaddefs password-cache json subr-x map url-vars seq
byte-opt gv bytecomp byte-compile cconv cl-loaddefs cl-lib tooltip eldoc
electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/x-win
x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode elisp-mode lisp-mode
prog-mode register page tab-bar menu-bar rfn-eshadow isearch timer
select scroll-bar mouse jit-lock font-lock syntax facemenu font-core
term/tty-colors frame minibuffer cl-generic cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms
cp51932 hebrew greek romanian slovak czech european ethiopic indian
cyrillic chinese composite charscript charprop case-table epa-hook
jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice loaddefs
button faces cus-face macroexp files text-properties overlay sha1 md5
base64 format env code-pages mule custom widget hashtable-print-readable
backquote threads dbusbind inotify lcms2 dynamic-setting
system-font-setting font-render-setting cairo move-toolbar gtk x-toolkit
x multi-tty make-network-process emacs)

Memory information:
((conses 16 392944 65623)
 (symbols 48 35677 1)
 (strings 32 129566 6245)
 (string-bytes 1 4194337)
 (vectors 16 59039)
 (vector-slots 8 1499052 252428)
 (floats 8 865 227)
 (intervals 56 4575 554)
 (buffers 1000 27))

-- 
Fabrice Bauzac-Stehly
PGP 01EEACF8244E9C14B551C5256ADA5F189BD322B6
old PGP 015AE9B25DCB0511D200A75DE5674DEA514C891D





^ permalink raw reply	[flat|nested] 5+ messages in thread

* bug#45800: 27.1; ibuffer sort by filename/process fails with Dired
  2021-01-11 20:02 bug#45800: 27.1; ibuffer sort by filename/process fails with Dired Fabrice BAUZAC-STEHLY
@ 2021-01-17 15:27 ` Basil L. Contovounesios
  2021-01-18 22:05   ` Fabrice BAUZAC-STEHLY
  2021-01-19 21:37   ` Fabrice BAUZAC-STEHLY
  0 siblings, 2 replies; 5+ messages in thread
From: Basil L. Contovounesios @ 2021-01-17 15:27 UTC (permalink / raw)
  To: Fabrice BAUZAC-STEHLY; +Cc: 45800

Fabrice BAUZAC-STEHLY <noon@mykolab.com> writes:

> To fix this on my side, I have replaced both occurrences of
>   (buffer-file-name (car X))
> with
>   (with-current-buffer (car X) (ibuffer-buffer-file-name))
> which seems to work:

Thanks, that looks correct.  Would you like to provide a patch against
master to that effect?

I think your cumulative changes would still be exempt of copyright
paperwork, but would you be willing to start the copyright assignment
process for future changes that exceed the limit, if you haven't
already?

-- 
Basil





^ permalink raw reply	[flat|nested] 5+ messages in thread

* bug#45800: 27.1; ibuffer sort by filename/process fails with Dired
  2021-01-17 15:27 ` Basil L. Contovounesios
@ 2021-01-18 22:05   ` Fabrice BAUZAC-STEHLY
  2021-01-19 21:37   ` Fabrice BAUZAC-STEHLY
  1 sibling, 0 replies; 5+ messages in thread
From: Fabrice BAUZAC-STEHLY @ 2021-01-18 22:05 UTC (permalink / raw)
  To: Basil L. Contovounesios; +Cc: 45800

"Basil L. Contovounesios" <contovob@tcd.ie> writes:

> Fabrice BAUZAC-STEHLY <noon@mykolab.com> writes:
>
>> To fix this on my side, I have replaced both occurrences of
>>   (buffer-file-name (car X))
>> with
>>   (with-current-buffer (car X) (ibuffer-buffer-file-name))
>> which seems to work:
>
> Thanks, that looks correct.  Would you like to provide a patch against
> master to that effect?

Sure, here it is:

diff --git a/lisp/ibuf-ext.el b/lisp/ibuf-ext.el
index ed5c9c0211..44574abd46 100644
--- a/lisp/ibuf-ext.el
+++ b/lisp/ibuf-ext.el
@@ -1497,10 +1497,10 @@ filename/process
   (string-lessp
    ;; FIXME: For now just compare the file name and the process name
    ;; (if it exists).  Is there a better way to do this?
-   (or (buffer-file-name (car a))
+   (or (with-current-buffer (car a) (ibuffer-buffer-file-name))
        (let ((pr-a (get-buffer-process (car a))))
 	 (and (processp pr-a) (process-name pr-a))))
-   (or (buffer-file-name (car b))
+   (or (with-current-buffer (car b) (ibuffer-buffer-file-name))
        (let ((pr-b (get-buffer-process (car b))))
 	 (and (processp pr-b) (process-name pr-b))))))

> I think your cumulative changes would still be exempt of copyright
> paperwork, but would you be willing to start the copyright assignment
> process for future changes that exceed the limit, if you haven't
> already?

Yes, no problem for that.

-- 
Fabrice Bauzac-Stehly
PGP 01EEACF8244E9C14B551C5256ADA5F189BD322B6
old PGP 015AE9B25DCB0511D200A75DE5674DEA514C891D





^ permalink raw reply related	[flat|nested] 5+ messages in thread

* bug#45800: 27.1; ibuffer sort by filename/process fails with Dired
  2021-01-17 15:27 ` Basil L. Contovounesios
  2021-01-18 22:05   ` Fabrice BAUZAC-STEHLY
@ 2021-01-19 21:37   ` Fabrice BAUZAC-STEHLY
  2021-01-20 14:21     ` Basil L. Contovounesios
  1 sibling, 1 reply; 5+ messages in thread
From: Fabrice BAUZAC-STEHLY @ 2021-01-19 21:37 UTC (permalink / raw)
  To: Basil L. Contovounesios; +Cc: 45800

[-- Attachment #1: Type: text/plain, Size: 53 bytes --]

Here is the patch, hopefully in the correct format.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Patch --]
[-- Type: text/x-diff, Size: 1165 bytes --]

From b8ea8fed4729297bb22416893ac6369abdb51ee1 Mon Sep 17 00:00:00 2001
From: Fabrice Bauzac <noon@mykolab.com>
Date: Mon, 18 Jan 2021 23:02:21 +0100
Subject: [PATCH] Sort according to filename/process as displayed

* ibuf-ext.el (ibuffer-do-sort-by-filename/process): use the same
function for sorting and for displaying the
filename/process (Bug#45800).
---
 lisp/ibuf-ext.el | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/lisp/ibuf-ext.el b/lisp/ibuf-ext.el
index ed5c9c0211..44574abd46 100644
--- a/lisp/ibuf-ext.el
+++ b/lisp/ibuf-ext.el
@@ -1497,10 +1497,10 @@ filename/process
   (string-lessp
    ;; FIXME: For now just compare the file name and the process name
    ;; (if it exists).  Is there a better way to do this?
-   (or (buffer-file-name (car a))
+   (or (with-current-buffer (car a) (ibuffer-buffer-file-name))
        (let ((pr-a (get-buffer-process (car a))))
 	 (and (processp pr-a) (process-name pr-a))))
-   (or (buffer-file-name (car b))
+   (or (with-current-buffer (car b) (ibuffer-buffer-file-name))
        (let ((pr-b (get-buffer-process (car b))))
 	 (and (processp pr-b) (process-name pr-b))))))
 
-- 
2.29.2


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* bug#45800: 27.1; ibuffer sort by filename/process fails with Dired
  2021-01-19 21:37   ` Fabrice BAUZAC-STEHLY
@ 2021-01-20 14:21     ` Basil L. Contovounesios
  0 siblings, 0 replies; 5+ messages in thread
From: Basil L. Contovounesios @ 2021-01-20 14:21 UTC (permalink / raw)
  To: Fabrice BAUZAC-STEHLY; +Cc: 45800-done

tags 45800 fixed patch
close 45800 28.1
quit

Fabrice BAUZAC-STEHLY <noon@mykolab.com> writes:

> Here is the patch, hopefully in the correct format.

Thanks, pushed to master with just a couple of minor tweaks to the
change log.

Sort Ibuffer filename/process column as displayed
849fe71de7 2021-01-20 14:10:09 +0000
https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=849fe71de7b041c21cb776c7428c39e0ce67df14

-- 
Basil





^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-01-20 14:21 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-11 20:02 bug#45800: 27.1; ibuffer sort by filename/process fails with Dired Fabrice BAUZAC-STEHLY
2021-01-17 15:27 ` Basil L. Contovounesios
2021-01-18 22:05   ` Fabrice BAUZAC-STEHLY
2021-01-19 21:37   ` Fabrice BAUZAC-STEHLY
2021-01-20 14:21     ` Basil L. Contovounesios

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).