Subject: bug#32588: 27.0.50; ‘default-directory’ not updated

From: Andreas Röhler <[email-masked]>
Date: Thu, 30 Aug 2018 13:09:35 +0200

‘default-directory’ not updated when dir was changed by a program

Recipe from emacs -Q:

M-x shell RET
cd
mkdir newdir
echo "cd \$HOME/newdir/" > tonewdir
chmod 700 tonewdir
. tonewdir
pwd

;;;
`pwd` prints correctly result of $HOME/newdir
while C-h v default-directory RET displays value of $HOME

Thanks,
Andreas

In GNU Emacs 27.0.50 (build 1, i686-pc-linux-gnu, GTK+ Version 3.14.5)
  of 2018-08-29
Repository revision: 190e85b8d286408a88bb611967e658639c48d6c5
Windowing system distributor 'The X.Org Foundation', version 11.0.11604000
System Description: Debian GNU/Linux 8 (jessie)

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
~
Mark set
M-RET is undefined
Type "q" in help window to restore its previous buffer, C-M-v to scroll 
help.

Configured using:
  'configure --with-modules'

Configured features:
XPM JPEG TIFF GIF PNG RSVG SOUND GPM DBUS GSETTINGS NOTIFY ACL GNUTLS
LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11
MODULES THREADS GMP

Important settings:
   value of $LANG: de_DE.utf8
   value of $XMODIFIERS: @im=ibus
   locale-coding-system: utf-8-unix

Major mode: Shell

Minor modes in effect:
   shell-dirtrack-mode: t
   tooltip-mode: t
   global-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 rmc puny seq byte-opt gv
bytecomp byte-compile cconv dired dired-loaddefs format-spec rfc822 mml
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 cl-extra pp cl-print mode-local find-func
thingatpt help-fns radix-tree help-mode easymenu cl-loaddefs cl-lib
shell pcomplete comint ansi-color ring elec-pair time-date mule-util
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 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 threads dbusbind inotify dynamic-setting system-font-setting
font-render-setting move-toolbar gtk x-toolkit x multi-tty
make-network-process emacs)

Memory information:
((conses 8 197517 14501)
  (symbols 24 43324 1)
  (strings 16 77483 2527)
  (string-bytes 1 1273902)
  (vectors 12 16798)
  (vector-slots 4 569731 25214)
  (floats 8 53 147)
  (intervals 28 317 0)
  (buffers 536 13)
  (heap 1024 40460 845))