delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2012/07/08/11:35:36

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
X-Recipient: djgpp AT delorie DOT com
Date: Sun, 08 Jul 2012 18:35:05 +0300
From: Eli Zaretskii <eliz AT gnu DOT org>
Subject: Re: Ispell (found the problem!)
In-reply-to: <b7563c8c-4248-499f-a8fe-bcffa12eb5e9@googlegroups.com>
X-012-Sender: halo1 AT inter DOT net DOT il
To: djgpp AT delorie DOT com
Message-id: <83obnql106.fsf@gnu.org>
References: <MPG DOT 2a61256b7098af43989680 AT news60 DOT forteinc DOT com> <83sjd412pe DOT fsf AT gnu DOT org> <b7563c8c-4248-499f-a8fe-bcffa12eb5e9 AT googlegroups DOT com>
Reply-To: djgpp AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

> Date: Sat, 7 Jul 2012 17:18:28 -0700 (PDT)
> From: rugxulo AT gmail DOT com
> Cc: djgpp AT delorie DOT com
> 
> The problem is that src\callproc.c uses mkstemp(), hence callproc's "Failed to open temporary file" message, since mkstemp() calls mktemp() which requires a filename using "emXXXXXX" and fails on "emxxxxxx" (lower case 'x's).
> 
> Here's callproc.c's  culprit line (indirectly):
> 
> pattern = Fexpand_file_name (Vtemp_file_name_pattern, tmpdir);
> 
> See src\fileio.c for that definition, which basically uses this:
> 
> name = FILE_SYSTEM_CASE (name);
> 
> Which is defined in src\s\msdos.h as this:
> 
> #define FILE_SYSTEM_CASE Fmsdos_downcase_filename
> 
> Which is ultimately defined in src\msdos.c and basically says this:
> 
> "Under LFN we expect to get pathnames in their true case."
> 
> So there, problem solved! Now Dr. Watson ... er, Eli, can suggest a tiny patch or you can probably figure it out yourself.  :-)

Thanks, this is indeed the cause of the problem.

I think I will simply remove that #define of FILE_SYSTEM_CASE for the
DJGPP port.  I don't see why we need it nowadays, that all file names
are compared case-insensitively on DOS and Windows.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019