From: Yuwei Tian <fishtai0@gmail.com>
To: 71270@debbugs.gnu.org
Subject: bug#71270: 30.0.50; Execute dired-do-shell-command will encounter 'wrong-type-argument stringp nil' error
Date: Thu, 30 May 2024 14:24:35 +0800 [thread overview]
Message-ID: <CAC9=Ainz+nC53v-FELP01sDGJ2bWeDNa2ctiXR9y_nLfgKqngw@mail.gmail.com> (raw)
After commit 74f15ad72d937b309dafecba872bccd1a880181e, it will
encounter 'wrong-type-argument string nil' error when executing
dired-do-shell-command.
Here is the backtrace:
string-match("/" nil 0)
split-string(nil "/")
xdg-mime-apps(nil)
shell-command-guess-xdg(nil ("xxxxxxx"))
The shell-command-guess-xdg is being called in the chain of
shell-command-guess-functions. Here is the definition of
shell-command-guess-xdg function:
(defun shell-command-guess-xdg (commands files)
"Populate COMMANDS by XDG configuration for FILES."
(require 'xdg)
(let* ((xdg-mime (when (executable-find "xdg-mime")
(string-trim-right
(shell-command-to-string
(concat "xdg-mime query filetype "
(shell-quote-argument (car files)))))))
(xdg-mime-apps (unless (string-empty-p xdg-mime)
(xdg-mime-apps xdg-mime)))
(xdg-commands
(mapcar (lambda (desktop)
(setq desktop (xdg-desktop-read-file desktop))
(propertize
(replace-regexp-in-string
" .*" "" (gethash "Exec" desktop))
'name (gethash "Name" desktop)))
xdg-mime-apps)))
(append xdg-commands commands)))
xdg-mime will be nil if xdg-mime not found, string-empty-p returns
nil and xdg-mime-apps will be called with nil.
In GNU Emacs 30.0.50 (build 1, x86_64-apple-darwin23.5.0, NS
appkit-2487.60 Version 14.5 (Build 23F79)) of 2024-05-30 built on
fishtai0-mac.local
Windowing system distributor 'Apple', version 10.3.2487
System Description: macOS 14.5
Configured using:
'configure --disable-dependency-tracking --disable-silent-rules
--enable-locallisppath=/usr/local/share/emacs/site-lisp
--infodir=/usr/local/Cellar/emacs-plus@30/30.0.50/share/info/emacs
--prefix=/usr/local/Cellar/emacs-plus@30/30.0.50 --with-xml2
--with-gnutls --without-compress-install --without-dbus
--without-imagemagick --with-modules --with-rsvg --with-webp --with-ns
--disable-ns-self-contained 'CFLAGS=-Os -w -pipe -march=westmere
-mmacosx-version-min=14
-isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk
-DFD_SETSIZE=10000 -DDARWIN_UNLIMITED_SELECT'
'CPPFLAGS=-I/usr/local/opt/icu4c/include
-I/usr/local/opt/sqlite/include -I/usr/local/opt/readline/include
-F/usr/local/Frameworks
-isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk'
'LDFLAGS=-L/usr/local/opt/icu4c/lib -L/usr/local/opt/sqlite/lib
-L/usr/local/opt/readline/lib -L/usr/local/lib -F/usr/local/Frameworks
-Wl,-headerpad_max_install_names
-isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk''
Configured features:
ACL GIF GLIB GMP GNUTLS JPEG LCMS2 LIBXML2 MODULES NOTIFY KQUEUE NS
PDUMPER PNG RSVG SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER
WEBP XIM ZLIB
Important settings:
value of $LC_CTYPE: UTF-8
value of $LANG: en_US.UTF-8
locale-coding-system: utf-8
Major mode: Debugger
Minor modes in effect:
winner-mode: t
recentf-mode: t
delete-selection-mode: t
auto-image-file-mode: t
server-mode: t
savehist-mode: t
global-so-long-mode: t
desktop-save-mode: t
which-key-mode: t
eldoc-in-minibuffer-mode: t
global-subword-mode: t
subword-mode: t
lisp-extra-font-lock-global-mode: t
auto-compile-on-load-mode: t
auto-compile-on-save-mode: t
yas-global-mode: t
yas-minor-mode: t
global-auto-revert-mode: t
save-place-mode: t
global-hl-line-mode: t
global-hl-todo-mode: t
electric-pair-mode: t
windmove-mode: t
override-global-mode: t
tooltip-mode: t
global-eldoc-mode: t
show-paren-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
minibuffer-regexp-mode: t
buffer-read-only: t
column-number-mode: t
line-number-mode: t
transient-mark-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
auto-save-visited-mode: t
Load-path shadows:
...
Features:
(... emacs)
Memory information:
((conses 16 705553 1556771) (symbols 48 73143 53) (strings 32 201452 108982)
(string-bytes 1 5941470) (vectors 16 82573) (vector-slots 8 880792 726985)
(floats 8 835 1609) (intervals 56 5527 1489) (buffers 992 20))
next reply other threads:[~2024-05-30 6:24 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-30 6:24 Yuwei Tian [this message]
2024-05-30 6:46 ` bug#71270: 30.0.50; Execute dired-do-shell-command will encounter 'wrong-type-argument stringp nil' error Juri Linkov
2024-05-30 6:52 ` Eli Zaretskii
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAC9=Ainz+nC53v-FELP01sDGJ2bWeDNa2ctiXR9y_nLfgKqngw@mail.gmail.com' \
--to=fishtai0@gmail.com \
--cc=71270@debbugs.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).