[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: init_buffer PWD fix

From: Eli Zaretskii
Subject: Re: init_buffer PWD fix
Date: Tue, 23 Apr 2002 09:05:07 +0300 (IDT)

On Mon, 22 Apr 2002, Paul Eggert wrote:

> > That would be unreliable, I think: on some Windows filesystems, the time 
> > stamp of a directory is determined when the directory is created, and 
> > then never changes
> I don't see why this would cause a problem.  That code-change would
> make st_mtime be a double-check on st_ino.  I think you're suggesting
> that st_mtime might be a somewhat random number that never changes

No, I'm saying that the probability of several directories to have the 
same time stamp, e.g. if they were created by some program like Tar or 
cp during the same run, is quite high, especially on a fast machine.  And 
since the time stamp doesn't change thereafter, Emacs will forever think 
such two directories are the same.

> The inode comparison is done if (! defined WINDOWSNT && (!defined
> (DOS_NT) || __DJGPP__ > 1)).  Sorry, I don't know the ins and outs of
> the Windows ports, but I assumed that there could be a non-WINDOWSNT
> port out there.

There are no Windows ports of Emacs that don't define WINDOWSNT (even 
though the binary runs on all versions of Windows from Windows 95 and up).
Cygwin simulates inodes in its library, but there's no Cygwin port of 
Emacs yet.  When Emacs is ported to Cygwin, the person who does the port 
will have to take care of all these ifdef's and change them to DTRT; 
that's one of the hardest parts of such a port.

The MS-DOS port defines __DJGPP__ and has a working inode simulation in 
its library (as you know from Diffutils ;-).

reply via email to

[Prev in Thread] Current Thread [Next in Thread]