unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Keiichiro Nagano" <knagano@sodan.org>
Cc: emacs-devel@gnu.org
Subject: Re: init_buffer PWD fix
Date: Mon, 22 Apr 2002 16:20:48 +0900	[thread overview]
Message-ID: <m3znzwci7j.wl@omni-engine.com> (raw)
In-Reply-To: <200204220618.g3M6Icg23696@sic.twinsun.com>

[-- Attachment #1: Type: text/plain, Size: 842 bytes --]

At Sun, 21 Apr 2002 23:18:38 -0700 (PDT),
Paul Eggert wrote:
> > init_buffer uses environmental variable PWD to identify current
> > working directory.  I think we should not use it on Windows.  On
> > Windows with Cygwin, PWD is unreliable and confusing
> 
> PWD is unreliable on all platforms, but Emacs works around the problem
> with a similar method on all platforms by statting $PWD and ".", and
> using $PWD only if stat results agree.  What is the problem with
> this workaround on Windows?

You cannot get st_ino which makes sence (without cygwin1.dll).
Compile stattest.c on Windows by MSVC (cl.exe), and you will see:

----
$ ./stattest
stattest.c: 0
stattest.exe: 0
.: 0
..: 0
C:\: 0
C:\WINNT: 0
nonexist: stat failed
----

I wrote, compiled and run this code on Windows 2000 SP2 SRP1 with NTFS
partition.

-- 
Keiichiro Nagano



[-- Attachment #2: stattest.c --]
[-- Type: text/plain, Size: 468 bytes --]

/* compile: cl stattest.c */

#include <stdio.h>
#include <sys/stat.h>

void
print_ino (char *target)
{
  struct stat statbuf;
  if (stat (target, &statbuf) == 0)
    printf ("%s: %d\n", target, statbuf.st_ino);
  else
    printf ("%s: stat failed\n", target);
}

int
main (void)
{
  print_ino ("stattest.c");
  print_ino ("stattest.exe");
  print_ino (".");
  print_ino ("..");
  print_ino ("C:\\");
  print_ino ("C:\\WINNT");
  print_ino ("nonexist");
  return 0;
}

  reply	other threads:[~2002-04-22  7:20 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-04-21 20:15 init_buffer PWD fix Keiichiro Nagano
2002-04-21 23:00 ` Keiichiro Nagano
2002-04-22  6:18 ` Paul Eggert
2002-04-22  7:20   ` Keiichiro Nagano [this message]
2002-04-22 11:15     ` Eli Zaretskii
2002-04-22 21:16     ` Jason Rumney
2002-04-22  7:53   ` Eli Zaretskii
2002-04-22  7:01     ` Paul Eggert
2002-04-22  8:10       ` Eli Zaretskii
2002-04-22  7:22         ` Paul Eggert
2002-04-22 11:14           ` Eli Zaretskii
2002-04-22 23:21             ` Paul Eggert
2002-04-23  6:05               ` Eli Zaretskii
2002-04-22 21:21         ` Jason Rumney
2002-04-23  5:56           ` Eli Zaretskii
2002-04-23  6:14   ` MIYASHITA Hisashi
2002-04-23 11:00     ` Eli Zaretskii
2002-04-24 17:55       ` Richard Stallman
2002-04-24 18:14         ` MIYASHITA Hisashi
2002-04-23 17:45     ` Paul Eggert
2002-04-24  6:52       ` MIYASHITA Hisashi
2002-04-24  7:13         ` Paul Eggert
2002-04-24  7:45           ` MIYASHITA Hisashi
2002-04-24 11:12             ` Eli Zaretskii
2002-04-24 10:30               ` MIYASHITA Hisashi
2002-04-24 16:03                 ` Eli Zaretskii
2002-04-24 17:13                   ` MIYASHITA Hisashi
2002-04-24 18:10                     ` Eli Zaretskii
2002-04-24 18:25                       ` MIYASHITA Hisashi
2002-04-24 19:19                     ` Paul Eggert
2002-04-24 19:41                       ` MIYASHITA Hisashi
2002-04-24 19:59                         ` MIYASHITA Hisashi
2002-04-24 20:21                         ` Paul Eggert
2002-04-24 20:41                           ` MIYASHITA Hisashi
2002-04-24 21:01                             ` Paul Eggert
2002-04-24 21:23                               ` MIYASHITA Hisashi
2002-04-24 21:35                                 ` MIYASHITA Hisashi
2002-04-25 22:52                                 ` Stefan Monnier
2002-04-25  3:42                             ` Eli Zaretskii
2002-04-24 16:47                 ` Paul Eggert
2002-04-24 17:55                   ` MIYASHITA Hisashi
2002-04-24 10:38               ` MIYASHITA Hisashi
2002-04-24 16:08                 ` Eli Zaretskii
2002-04-24 16:10                 ` Eli Zaretskii
2002-04-24  7:55           ` MIYASHITA Hisashi
2002-04-24 11:07           ` Eli Zaretskii
2002-04-24 11:05         ` Eli Zaretskii
2002-04-24 10:31           ` MIYASHITA Hisashi
2002-04-24 16:05             ` Eli Zaretskii
2002-04-22  7:03 ` Eli Zaretskii
2002-04-22  6:49   ` Keiichiro Nagano
2002-04-22  8:01     ` Eli Zaretskii
2002-04-22  8:26       ` Keiichiro Nagano
2002-04-22 11:19         ` Eli Zaretskii

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

  List information: https://www.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to=m3znzwci7j.wl@omni-engine.com \
    --to=knagano@sodan.org \
    --cc=emacs-devel@gnu.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.savannah.gnu.org/cgit/emacs.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).