> I poked a little around in the bash and cat source code, and this is
> what they are doing here:
> 
> - bash writes the text in the heredoc to a temporary file, unlinks
> that file (so that nobody can mess around it) and sets standard input
> for cat to a file descriptor pointing to that file.
> 
> - cat runs fstat(2) on that file descriptor; it does so for both input
>   and output in order to detect whether they are the same.  However,
>   fstat() fails with ENOENT and cat errors out.
> 
> Why would fstat() ever return ENOENT?  This makes no sense to me.

My current thinking is that it's got something to do with the
disappearing emacs23 directory, based on a similar error with a
directory removal while a program was running (the directory is still
present for some contexts but not others, until all file descriptors
are released).

-- 
<erno> hm. I've lost a machine.. literally _lost_. it responds to ping, 
it works completely, I just can't figure out where in my apartment it
is. 


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]

Reply via email to