* bug#67006: 30.0.50; w32-shell-execute will freeze Emacs on Windows 10
@ 2023-11-09 2:35 Eason Huang
2023-11-09 19:22 ` Eli Zaretskii
0 siblings, 1 reply; 7+ messages in thread
From: Eason Huang @ 2023-11-09 2:35 UTC (permalink / raw)
To: 67006
Hell Emacs,
I found that when running w32-shell-execute with "open" will cause Emacs
freeze. And I have to kill the process of Emacs to restart.
Steps to reproduce:
1. Start Emacs with `emacs -Q`
2. M-: to eval the code below, you can change the second arg to other folder:
```
(w32-shell-execute "open" "~/.emacs.d/")
```
3. Now the Emacs is frozen, C-Q also can not recover it. So you have to
kill process of Emacs, and restart Emacs again.
Best regards,
Eason Huang
In GNU Emacs 30.0.50 (build 1, x86_64-w64-mingw32) of 2023-11-09 built
on DESKTOP-VIHFE84
Windowing system distributor 'Microsoft Corp.', version 10.0.19045
System Description: Microsoft Windows 10 Pro (v10.0.2009.19045.3570)
Configured using:
'configure --with-native-compilation=aot --without-dbus 'CFLAGS=-O2
-fno-optimize-sibling-calls''
Configured features:
ACL GIF GMP GNUTLS HARFBUZZ JPEG JSON LCMS2 LIBXML2 MODULES NATIVE_COMP
NOTIFY W32NOTIFY PDUMPER PNG RSVG SOUND SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XPM ZLIB
Important settings:
value of $LANG: CHS
locale-coding-system: cp936
Major mode: ELisp/d
Minor modes in effect:
tooltip-mode: t
global-eldoc-mode: t
eldoc-mode: t
show-paren-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
minibuffer-regexp-mode: t
line-number-mode: t
indent-tabs-mode: t
transient-mark-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
Load-path shadows:
None found.
Features:
(shadow sort mail-extr emacsbug message mailcap yank-media puny dired
dired-loaddefs rfc822 mml mml-sec password-cache epa derived epg rfc6068
epg-config gnus-util time-date mm-decode mm-bodies mm-encode mail-parse
rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045
ietf-drums mm-util mail-prsvr mail-utils compile text-property-search
comint ansi-osc ansi-color ring comp cl-seq comp-cstr cl-extra help-mode
warnings icons subr-x rx gv bytecomp byte-compile vc-git diff-mode
easy-mmode vc-dispatcher cl-loaddefs cl-lib china-util rmc iso-transl
tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks
lisp-float-type elisp-mode mwheel dos-w32 ls-lisp disp-table
term/w32-win w32-win w32-vars term/common-win touch-screen tool-bar dnd
fontset image regexp-opt fringe tabulated-list replace newcomment
text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow
isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax
font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic
indonesian philippine 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 emoji-zwj charscript charprop case-table epa-hook
jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs
theme-loaddefs faces cus-face macroexp files window text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget keymap
hashtable-print-readable backquote threads w32notify w32 lcms2 multi-tty
move-toolbar make-network-process native-compile emacs)
Memory information:
((conses 16 98361 13532) (symbols 48 8278 0) (strings 32 24487 1925)
(string-bytes 1 724252) (vectors 16 19580)
(vector-slots 8 431419 16728) (floats 8 48 64) (intervals 56 524 22)
(buffers 992 15))
^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#67006: 30.0.50; w32-shell-execute will freeze Emacs on Windows 10
2023-11-09 2:35 bug#67006: 30.0.50; w32-shell-execute will freeze Emacs on Windows 10 Eason Huang
@ 2023-11-09 19:22 ` Eli Zaretskii
2023-11-10 1:58 ` Eason Huang
0 siblings, 1 reply; 7+ messages in thread
From: Eli Zaretskii @ 2023-11-09 19:22 UTC (permalink / raw)
To: Eason Huang; +Cc: 67006
> From: Eason Huang <aqua0210@foxmail.com>
> Date: Thu, 09 Nov 2023 10:35:09 +0800
>
> I found that when running w32-shell-execute with "open" will cause Emacs
> freeze. And I have to kill the process of Emacs to restart.
>
> Steps to reproduce:
>
> 1. Start Emacs with `emacs -Q`
> 2. M-: to eval the code below, you can change the second arg to other folder:
> ```
> (w32-shell-execute "open" "~/.emacs.d/")
> ```
>
> 3. Now the Emacs is frozen, C-Q also can not recover it. So you have to
> kill process of Emacs, and restart Emacs again.
I cannot reproduce this. I tried this on several Windows systems and
several Emacs versions, including Windows 10 and Emacs 30, and I don't
see the hang. (I don't have a Windows 10 system with Emacs 30, so I
tested there with an older version, but unless you are saying that
this happens only with Emacs 30 and only on Windows 10, I don't think
this matters.)
Tell me, does the directory "~/.emacs.d/" exist on that system? If
you type "C-x C-f ~/.e" and press TAB, do you see ".emacs.d" among the
completion candidates?
Another thing to check is whether you customized your Windows system
in a way that affects the "open" operation on directories.
Also, what happens if you type
M-: (w32-shell-execute nil "~/.emacs.d/")
?
^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#67006: 30.0.50; w32-shell-execute will freeze Emacs on Windows 10
2023-11-09 19:22 ` Eli Zaretskii
@ 2023-11-10 1:58 ` Eason Huang
2023-11-10 7:19 ` Eli Zaretskii
0 siblings, 1 reply; 7+ messages in thread
From: Eason Huang @ 2023-11-10 1:58 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: 67006
Eli Zaretskii <eliz@gnu.org> writes:
> I cannot reproduce this. I tried this on several Windows systems and
> several Emacs versions, including Windows 10 and Emacs 30, and I don't
> see the hang. (I don't have a Windows 10 system with Emacs 30, so I
> tested there with an older version, but unless you are saying that
> this happens only with Emacs 30 and only on Windows 10, I don't think
> this matters.)
agree. actually this issue also happend on Emacs 29.2
I tested this version of Emacs 29:
http://mirrors.syringanetworks.net/gnu/emacs/windows/emacs-29/emacs-29.1_2.zip
> Tell me, does the directory "~/.emacs.d/" exist on that system? If
> you type "C-x C-f ~/.e" and press TAB, do you see ".emacs.d" among the
> completion candidates?
Yes, I can confirm that the .emacs.d folder exist.
> Another thing to check is whether you customized your Windows system
> in a way that affects the "open" operation on directories.
>
> Also, what happens if you type
>
> M-: (w32-shell-execute nil "~/.emacs.d/")
When I try `M-: (w32-shell-execute nil "~/.emacs.d/")`, it works as
expected. the .emacs.d folder will shows in the Windows Explorer.
I also try `M-: (w32-shell-execute "open" "~/.emacs.d/init.el")`,
it aslo works as expected, the init.el will be open with the default
notepad editor.
Another infomation about this issue, may be it is related:
I also tried to reproduce the issue on my other Windows machine with
Windows 10 and Emacs 30.
At the fist time I tried it, every things is working as expected. I also
can not reproduce the issue on that machine.
But after I installed the PowerToys by
`winget installMicrosoft.PowerToys`, and luanch the powertoys then I can
reprodue the issue. Maybe the issue is related to PowerToys?
About the PowerToys: https://github.com/microsoft/PowerToys
But I uninstall the PowerToys, then restart that machine, the issue
still existed.
Best regard,
Eason Huang
^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#67006: 30.0.50; w32-shell-execute will freeze Emacs on Windows 10
2023-11-10 1:58 ` Eason Huang
@ 2023-11-10 7:19 ` Eli Zaretskii
2023-11-10 23:28 ` Eason Huang
0 siblings, 1 reply; 7+ messages in thread
From: Eli Zaretskii @ 2023-11-10 7:19 UTC (permalink / raw)
To: Eason Huang; +Cc: 67006
> From: Eason Huang <aqua0210@foxmail.com>
> Cc: 67006@debbugs.gnu.org
> Date: Fri, 10 Nov 2023 09:58:17 +0800
>
> > Also, what happens if you type
> >
> > M-: (w32-shell-execute nil "~/.emacs.d/")
>
> When I try `M-: (w32-shell-execute nil "~/.emacs.d/")`, it works as
> expected. the .emacs.d folder will shows in the Windows Explorer.
Then at least you have a workaround, since "open" is the default
operation for directories.
> I also tried to reproduce the issue on my other Windows machine with
> Windows 10 and Emacs 30.
>
> At the fist time I tried it, every things is working as expected. I also
> can not reproduce the issue on that machine.
>
> But after I installed the PowerToys by
> `winget installMicrosoft.PowerToys`, and luanch the powertoys then I can
> reprodue the issue. Maybe the issue is related to PowerToys?
>
> About the PowerToys: https://github.com/microsoft/PowerToys
I see that it includes "File Explorer add-ons", which could definitely
be the reason for what you see.
> But I uninstall the PowerToys, then restart that machine, the issue
> still existed.
It is possible that uninstalling PowerToys doesn't clean up the
Registry.
Anyway, I think this is not an Emacs bug, in which case we should
close it.
^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#67006: 30.0.50; w32-shell-execute will freeze Emacs on Windows 10
2023-11-10 7:19 ` Eli Zaretskii
@ 2023-11-10 23:28 ` Eason Huang
2023-11-11 7:12 ` Eli Zaretskii
2023-11-12 2:33 ` Eason Huang
0 siblings, 2 replies; 7+ messages in thread
From: Eason Huang @ 2023-11-10 23:28 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: 67006
Eli Zaretskii <eliz@gnu.org> writes:
> I see that it includes "File Explorer add-ons", which could definitely
> be the reason for what you see.
>
>> But I uninstall the PowerToys, then restart that machine, the issue
>> still existed.
>
> It is possible that uninstalling PowerToys doesn't clean up the
> Registry.
>
> Anyway, I think this is not an Emacs bug, in which case we should
> close it.
>
Sure, feel free to close the bug, if it is not an Emacs bug.
I also find another instresting thing:
1. Eval `(w32-shell-execute "open" "C:/Windows/SysWOW64/")` will freeze
Emacs.
2. Eval `(executable-find "C:/Windows/SysWOW64/explorer")` one time, and
then eval `(w32-shell-execute "open" "C:/Windows/SysWOW64/")` will open
the "C:/Windows/SysWOW64/" folder.
3. And then `(w32-shell-execute "open" "C:/Windows/SysWOW64/")` always
works.
reboot computer, issue exist again.
Do you have any advice on the above case?
--
Eason Huang
^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#67006: 30.0.50; w32-shell-execute will freeze Emacs on Windows 10
2023-11-10 23:28 ` Eason Huang
@ 2023-11-11 7:12 ` Eli Zaretskii
2023-11-12 2:33 ` Eason Huang
1 sibling, 0 replies; 7+ messages in thread
From: Eli Zaretskii @ 2023-11-11 7:12 UTC (permalink / raw)
To: Eason Huang; +Cc: 67006-done
> From: Eason Huang <aqua0210@foxmail.com>
> Cc: 67006@debbugs.gnu.org
> Date: Sat, 11 Nov 2023 07:28:40 +0800
>
> Eli Zaretskii <eliz@gnu.org> writes:
>
> > Anyway, I think this is not an Emacs bug, in which case we should
> > close it.
>
> Sure, feel free to close the bug, if it is not an Emacs bug.
Done.
> I also find another instresting thing:
>
> 1. Eval `(w32-shell-execute "open" "C:/Windows/SysWOW64/")` will freeze
> Emacs.
>
> 2. Eval `(executable-find "C:/Windows/SysWOW64/explorer")` one time, and
> then eval `(w32-shell-execute "open" "C:/Windows/SysWOW64/")` will open
> the "C:/Windows/SysWOW64/" folder.
>
> 3. And then `(w32-shell-execute "open" "C:/Windows/SysWOW64/")` always
> works.
>
> reboot computer, issue exist again.
>
>
> Do you have any advice on the above case?
I cannot reproduce it. Is this again on those systems where you have
PowerToys installed?
In any case, my Emacs is a 32-bit build, so maybe that is a factor
(since SysWOW64 is a special directory for 32-bit programs running on
64-bit Windows).
^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#67006: 30.0.50; w32-shell-execute will freeze Emacs on Windows 10
2023-11-10 23:28 ` Eason Huang
2023-11-11 7:12 ` Eli Zaretskii
@ 2023-11-12 2:33 ` Eason Huang
1 sibling, 0 replies; 7+ messages in thread
From: Eason Huang @ 2023-11-12 2:33 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: 67006
Eason Huang <aqua0210@foxmail.com> writes:
> Eli Zaretskii <eliz@gnu.org> writes:
>
> I cannot reproduce it. Is this again on those systems where you have
> PowerToys installed?
Yes, on the systems with PowerToys installed.
Because I cannot clean the regstry unless reinstall the Windows OS.
> In any case, my Emacs is a 32-bit build, so maybe that is a factor
> (since SysWOW64 is a special directory for 32-bit programs running on
> 64-bit Windows).
Maybe this is the root case of the issue.
Anyway, recently I can add "C:/Windows/SysWOW64" to exec-path as
workaroud.
Add this code to early-init.el works as expected:
```
(add-to-list 'exec-path "C:/Windows/SysWOW64")
```
Best regards,
Eason Huang
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2023-11-12 2:33 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-11-09 2:35 bug#67006: 30.0.50; w32-shell-execute will freeze Emacs on Windows 10 Eason Huang
2023-11-09 19:22 ` Eli Zaretskii
2023-11-10 1:58 ` Eason Huang
2023-11-10 7:19 ` Eli Zaretskii
2023-11-10 23:28 ` Eason Huang
2023-11-11 7:12 ` Eli Zaretskii
2023-11-12 2:33 ` Eason Huang
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).