zsh-users
 help / color / mirror / code / Atom feed
From: Bart Schaefer <schaefer@brasslantern.com>
To: zsh-users@zsh.org
Subject: Re: `cd .` in non-existent directory leads into weird corner case
Date: Tue, 03 Apr 2012 07:06:05 -0700	[thread overview]
Message-ID: <120403070605.ZM11132@torch.brasslantern.com> (raw)
In-Reply-To: <CAHYJk3T+k3zEgm=1LYt0r=dz0WszFpBp9_PAw2fz76J__eLi_w@mail.gmail.com>

On Apr 3, 12:16pm, Mikael Magnusson wrote:
}
} I don't know if this is something that works on all systems, but on
} linux at least, it seems that the directory inode sticks around while
} a process still has it, or any subdirectory of it, as its current
} directory (or otherwise open i suppose). This means that it is still
} possible to access the . and .. entries in it, and follow them

In order to do this even remotely portably, though, zsh would have to
open ".." with readdir() as soon as it cd's into a directory, and then
hold open that descriptor until it cd's out again; plus the system
would have to support fchdir() -- I don't know how portable that is
compared to /proc/*/cwd but I'm pretty sure neither of them is going
to be available on every platform where zsh can be compiled.


  parent reply	other threads:[~2012-04-03 14:06 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-27  0:56 Richard Hartmann
2012-03-27  5:13 ` Daniel Shahaf
2012-03-27 14:34 ` Bart Schaefer
2012-03-27 15:25   ` Richard Hartmann
2012-04-02  9:52   ` Richard Hartmann
2012-04-02 10:12     ` Peter Stephenson
2012-04-02 10:56       ` Mikael Magnusson
2012-04-02 11:00         ` Peter Stephenson
2012-04-02 11:10           ` Mikael Magnusson
2012-04-02 11:39             ` Peter Stephenson
2012-04-03  9:51             ` Richard Hartmann
2012-04-03  9:57             ` Peter Stephenson
2012-04-03 10:16               ` Mikael Magnusson
2012-04-03 11:11                 ` Richard Hartmann
2012-04-03 14:06                 ` Bart Schaefer [this message]
2012-04-02 10:15     ` Mikael Magnusson
2012-04-02 10:33       ` Peter Stephenson
2012-04-02 10:46         ` Mikael Magnusson
2012-04-02 11:07       ` Vincent Lefevre
2012-04-02 12:59       ` Richard Hartmann
2012-04-03  4:04         ` Jun T.
2012-04-03 14:43           ` Vincent Lefevre
2012-04-04 17:03             ` Jun T.
2012-04-05 14:20               ` Vincent Lefevre
2012-04-05 16:17                 ` Jun T.
2012-04-15  1:17                   ` Vincent Lefevre
2012-04-15 18:07                     ` Bart Schaefer

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

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=120403070605.ZM11132@torch.brasslantern.com \
    --to=schaefer@brasslantern.com \
    --cc=zsh-users@zsh.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.vuxu.org/mirror/zsh/

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 NNTP newsgroup(s).