delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1996/10/21/07:45:09

Date: Mon, 21 Oct 1996 13:14:50 +0200 (IST)
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
To: Howard Kaikow <kaikow AT standards DOT com>
Cc: Howard Kaikow <kaikow AT standards DOT com>, djgpp AT delorie DOT com
Subject: Re: HK: v 2.1
In-Reply-To: <1.5.4.32.19961021103632.0067ac20@mv.mv.com>
Message-Id: <Pine.SUN.3.91.961021130643.2198B-100000@is>
Mime-Version: 1.0

On Mon, 21 Oct 1996, Howard Kaikow wrote:

> Yes, that proves that DJGPP does not really have LFN support. If it did, it
> would be looking at the long file name when LFN=y, not the short DOS name. I
> consider that to be a bug in the DJGPP LFN support.

But DJGPP does NOT look at the short DOS name at all!  When the linker
creates a program `psbook.exe', the DJGPP library calls OpenFile function
of the LFN API with the long filename `psbook.exe'.  However, in this case
the long filename `psbook.exe' is identical to the short 8+3 alias of the
file `psbook.exe0'.  So Windows 95 (*not* DJGPP!) opens the existing file
`psbook.exe0' instead of creating a new file called `psbook.exe'.  DJGPP
has no means to change the way Windows services file-oriented calls. 

The reason for the above is that when `psbook.exe' was renamed to 
`psbook.exe0', Windows failed to change its 8+3 short alias.  Since 
Windows doesn't allow for 2 files to have the same 8+3 short name, the 
file was effectively not renamed!

- Raw text -


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