[vim/vim] Regression in patch 9.1.2002: `URLOpen` doesn't work in gvim when `zsh` is the underlying shell (Issue #19594)

1 view
Skip to first unread message

Olivia (Zoe)

unread,
7:33 PM (3 hours ago) 7:33 PM
to vim/vim, Subscribed
LunarWatcher created an issue (vim/vim#19594)

Steps to reproduce

Install or otherwise acquire zsh, such that echo &shell points to zsh. gx will now not work in gvim. I have reproduced this from a gvim -u DEFAULTS instance with some commands I did not save to load openPlugin manually at runtime.

I have let g:Openprg = "setsid xdg-open" after migrating from the previous netrw setup. Some observations:

Both of these are as expected, per #18977 (among other issues and sources). In addition:

Interestingly, #18977 reported this same bug, and introduced a fix in 83fd754 (9.1.2002), which seems to be the reason it broke for me.

I booted up an older version (9.1.1917), where :Launch firefox does work, and so does gx. It was broken in the next version I installed (9.1.2094), and still broken in 9.2.112.

Without understanding much about the inner workings of :Launch, it might be a difference in how zsh and bash handle disowned processes. Using :!setsid xdg-open & does nothing, but :!setsid xdg-open & sleep 1 works.

That said, the non-& version works for me in both zsh and in bash. I don't know why it was introduced in the first place, but it seems unnecessary? At least for zsh and bash

Expected behaviour

gx should work

Version of Vim

9.2.112

Environment

OS: Linux Mint 22.3 (Cinnamon ed.)

Terminal: Gnome terminal 3.52.0

Shells: zsh 5.9, bash 5.2.21

❯ gvim --version
VIM - Vi IMproved 9.2 (2026 Feb 14, compiled Mar  7 2026 00:45:30)
Included patches: 1-112
Compiled by Olivia (LunarWatcher/upm)
Huge version with GTK3 GUI.  Features included (+) or not (-):
+acl                 +jumplist            -sodium
+arabic              +keymap              -sound
+autocmd             +lambda              +spell
+autochdir           +langmap             +startuptime
-autoservername      +libcall             +statusline
+balloon_eval        +linebreak           -sun_workshop
+balloon_eval_term   +lispindent          +syntax
+browse              +listcmds            +tabpanel
++builtin_terms      +localmap            +tag_binary
+byte_offset         +lua                 -tag_old_static
+channel             +menu                -tag_any_white
+cindent             +mksession           -tcl
+clientserver        +modify_fname        +termguicolors
+clipboard           +mouse               +terminal
+clipboard_provider  +mouseshape          +terminfo
+cmdline_compl       +mouse_dec           +termresponse
+cmdline_hist        -mouse_gpm           +textobjects
+cmdline_info        -mouse_jsbterm       +textprop
+comments            +mouse_netterm       +timers
+conceal             +mouse_sgr           +title
+cryptv              -mouse_sysmouse      +toolbar
+cscope              +mouse_urxvt         +user_commands
+cursorbind          +mouse_xterm         +vartabs
+cursorshape         +multi_byte          +vertsplit
+dialog_con_gui      +multi_lang          +vim9script
+diff                -mzscheme            +viminfo
+digraphs            +netbeans_intg       +virtualedit
+dnd                 +num64               +visual
-ebcdic              +packages            +visualextra
+emacs_tags          +path_extra          +vreplace
+eval                +perl                +wayland
+ex_extra            +persistent_undo     +wayland_clipboard
+extra_search        +popupwin            +wayland_focus_steal
-farsi               +postscript          +wildignore
+file_in_path        +printer             +wildmenu
+find_in_path        +profile             +windows
+float               -python              +writebackup
+folding             +python3             +X11
-footer              +quickfix            +xattr
+fork()              +reltime             -xfontset
+gettext             +rightleft           +xim
-hangul_input        +ruby                +xpm
+iconv               +scrollbind          +xsmp_interact
+insert_expand       +signs               +xterm_clipboard
+ipv6                +smartindent         -xterm_save
+job                 +socketserver        
   system vimrc file: "$VIM/vimrc"
     user vimrc file: "$HOME/.vimrc"
 2nd user vimrc file: "~/.vim/vimrc"
 3rd user vimrc file: "~/.config/vim/vimrc"
      user exrc file: "$HOME/.exrc"
  system gvimrc file: "$VIM/gvimrc"
    user gvimrc file: "$HOME/.gvimrc"
2nd user gvimrc file: "~/.vim/gvimrc"
3rd user gvimrc file: "~/.config/vim/gvimrc"
       defaults file: "$VIMRUNTIME/defaults.vim"
    system menu file: "$VIMRUNTIME/menu.vim"
  fall-back for $VIM: "/opt/upm/packages/vim-v9.2.0112/share/vim"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/x86_64-linux-gnu -I/usr/include/webp -I/usr/include/gio-unix-2.0 -I/usr/include/atk-1.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -g -O2 -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 
Linking: gcc -Wl,-E -L/usr/local/lib -Wl,--as-needed -o vim -lgtk-3 -lgdk-3 -lz -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lSM -lICE -lXpm -lXt -lX11 -lwayland-client -lXdmcp -lSM -lICE -lm -ltinfo -lselinux -lacl -lattr -L/usr/lib -llua5.3 -Wl,-E -fstack-protector-strong -L/usr/local/lib -L/usr/lib/x86_64-linux-gnu/perl/5.38/CORE -lperl -ldl -lm -lpthread -lcrypt -L/usr/lib/python3.12/config-3.12-x86_64-linux-gnu -lpython3.12 -ldl -lm -lruby-3.2 -lm -lpthread -L/usr/lib 

Logs and stack traces

None, the problem produces no noticeable logs


Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.Message ID: <vim/vim/issues/19594@github.com>

Reply all
Reply to author
Forward
0 new messages