Very occasionally, Emacs hangs on exit. For example, this happens sometimes when bootstrapping Emacs (which involves starting emacs.exe multiple times). Here is a set of backtraces from attaching gdb to one of the stuck processes: Thread 3 (Thread 13168.0x19ec): #0 0x00007ff80b6f8d61 in ntdll!DbgBreakPoint () from C:\WINDOWS\SYSTEM32\ntdll.dll #1 0x00007ff80b72536b in ntdll!DbgUiRemoteBreakin () from C:\WINDOWS\SYSTEM32\ntdll.dll #2 0x00007ff80ac72774 in KERNEL32!BaseThreadInitThunk () from C:\WINDOWS\System32\kernel32.dll #3 0x00007ff80b6c0d51 in ntdll!RtlUserThreadStart () from C:\WINDOWS\SYSTEM32\ntdll.dll #4 0x0000000000000000 in ?? () Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 2 (Thread 13168.0x25a8): #0 0x00007ff80b6f5424 in ntdll!ZwWaitForSingleObject () from C:\WINDOWS\SYSTEM32\ntdll.dll #1 0x00007ff80b6986ee in ntdll!RtlGetNtProductType () from C:\WINDOWS\SYSTEM32\ntdll.dll #2 0x00007ff80b6720ce in ntdll!LdrShutdownThread () from C:\WINDOWS\SYSTEM32\ntdll.dll #3 0x00007ff80b6c9bb9 in ntdll!LdrInitializeThunk () from C:\WINDOWS\SYSTEM32\ntdll.dll #4 0x00007ff80b6c9b1b in ntdll!LdrInitializeThunk () from C:\WINDOWS\SYSTEM32\ntdll.dll #5 0x00007ff80b6c9ace in ntdll!LdrInitializeThunk () from C:\WINDOWS\SYSTEM32\ntdll.dll #6 0x0000000000000000 in ?? () Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 1 (Thread 13168.0x310): #0 0x00007ff80b6f5424 in ntdll!ZwWaitForSingleObject () from C:\WINDOWS\SYSTEM32\ntdll.dll #1 0x00007ff80b6986ee in ntdll!RtlGetNtProductType () from C:\WINDOWS\SYSTEM32\ntdll.dll #2 0x00007ff80b69d26f in ntdll!RtlExitUserProcess () from C:\WINDOWS\SYSTEM32\ntdll.dll #3 0x00007ff80ac7c0da in KERNEL32!FatalExit () from C:\WINDOWS\System32\kernel32.dll #4 0x00007ff80adca045 in msvcrt!_exit () from C:\WINDOWS\System32\msvcrt.dll #5 0x00007ff80adca68d in msvcrt!_initterm_e () from C:\WINDOWS\System32\msvcrt.dll #6 0x00000004000de21c in Fkill_emacs (arg=...) at emacs.c:2045 #7 0x000000040017a6d6 in funcall_subr (subr=0x400281110 , numargs=numargs@entry=1, args=args@entry=0xbfdb20) at eval.c:2841 #8 0x0000000400178cf1 in Ffuncall (nargs=nargs@entry=2, args=args@entry=0xbfdb18) at eval.c:2766 #9 0x00000004001c6095 in exec_byte_code (bytestr=..., vector=..., maxdepth=..., args_template=..., args_template@entry=..., nargs=, nargs@entry=0, args=, args@entry=0xbfdf18) at bytecode.c:629 #10 0x0000000400178503 in funcall_lambda (fun=..., fun@entry=..., nargs=nargs@entry=0, arg_vector=arg_vector@entry=0xbfdf18) at eval.c:2967 #11 0x0000000400178c20 in Ffuncall (nargs=nargs@entry=1, args=args@entry=0xbfdf10) at eval.c:2780 #12 0x00000004001c6095 in exec_byte_code (bytestr=..., vector=..., maxdepth=..., args_template=..., args_template@entry=..., nargs=, nargs@entry=1, args=, args@entry=0xbfe690) at bytecode.c:629 #13 0x0000000400178503 in funcall_lambda (fun=..., fun@entry=..., nargs=nargs@entry=1, arg_vector=arg_vector@entry=0xbfe690) at eval.c:2967 #14 0x0000000400178c20 in Ffuncall (nargs=nargs@entry=2, args=args@entry=0xbfe688) at eval.c:2780 #15 0x00000004001c6095 in exec_byte_code (bytestr=..., vector=..., maxdepth=..., args_template=..., args_template@entry=..., nargs=, nargs@entry=0, args=, args@entry=0xbff0b8) at bytecode.c:629 #16 0x0000000400178503 in funcall_lambda (fun=..., fun@entry=..., nargs=nargs@entry=0, arg_vector=arg_vector@entry=0xbff0b8) at eval.c:2967 #17 0x0000000400178c20 in Ffuncall (nargs=nargs@entry=1, args=args@entry=0xbff0b0) at eval.c:2780 #18 0x00000004001c6095 in exec_byte_code (bytestr=..., vector=..., maxdepth=..., args_template=..., args_template@entry=..., nargs=, nargs@entry=0, args=, args@entry=0xbff4c0) at bytecode.c:629 #19 0x0000000400178503 in funcall_lambda (fun=..., fun@entry=..., nargs=nargs@entry=0, arg_vector=arg_vector@entry=0xbff4c0) at eval.c:2967 #20 0x000000040017b7dc in apply_lambda (fun=fun@entry=..., args=..., count=4, count@entry=3) at eval.c:2903 #21 0x0000000400177aa3 in eval_sub (form=form@entry=...) at eval.c:2306 #22 0x000000040017bc9f in Feval (form=..., lexical=...) at eval.c:2051 #23 0x00000004001768d6 in internal_condition_case ( bfun=0x4005c0000 , bfun@entry=0x4000de980 , handlers=..., handlers@entry=..., hfun=0xf490, hfun@entry=0x4000e1600 ) at eval.c:1332 #24 0x00000004000de93d in top_level_1 (ignore=...) at keyboard.c:1131 #25 0x000000040017676a in internal_catch (tag=..., tag@entry=..., func=0x0, func@entry=0x4000de8e0 , arg=..., arg@entry=...) at eval.c:1097 #26 0x00000004000de845 in command_loop () at keyboard.c:1092 #27 0x0000000000000000 in ?? () Backtrace stopped: previous frame inner to this frame (corrupt stack?) In GNU Emacs 26.0.50 (build 1, x86_64-w64-mingw32) of 2017-09-14 built on MACHINE Repository revision: 0d5f0a8d56bb7e15607c77a7d5d6e36776eff94d Windowing system distributor 'Microsoft Corp.', version 10.0.15063 Recent messages: For information about GNU Emacs and the GNU system, type C-h C-a. mwheel-scroll: Beginning of buffer Configured using: 'configure --with-modules --without-pop 'CFLAGS=-O3 -ggdb3'' Configured features: XPM JPEG TIFF GIF PNG RSVG SOUND NOTIFY ACL GNUTLS LIBXML2 ZLIB TOOLKIT_SCROLL_BARS MODULES LCMS2 Important settings: value of $EMACSLOADPATH: c:\emacs-lisp; value of $LANG: ENG locale-coding-system: cp1252 Major mode: Lisp Interaction Minor modes in effect: tooltip-mode: t global-eldoc-mode: t eldoc-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 auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t line-number-mode: t transient-mark-mode: t Load-path shadows: None found. Features: (shadow sort mail-extr emacsbug message subr-x puny seq byte-opt gv bytecomp byte-compile cconv cl-loaddefs cl-lib dired dired-loaddefs format-spec rfc822 mml easymenu mml-sec password-cache epa derived epg epg-config gnus-util rmail rmail-loaddefs mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils elec-pair time-date mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel dos-w32 ls-lisp disp-table term/w32-win w32-win w32-vars term/common-win tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow isearch timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core term/tty-colors frame 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 minibuffer 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 w32notify w32 lcms2 multi-tty make-network-process emacs) Memory information: ((conses 16 97046 10925) (symbols 56 20144 1) (miscs 48 39 87) (strings 32 29581 1047) (string-bytes 1 746755) (vectors 16 13998) (vector-slots 8 482061 7969) (floats 8 50 79) (intervals 56 232 0) (buffers 992 11))