Mail Archives: djgpp-workers/2001/02/07/17:33:42
> It seems that when LFN=N only programs that end in .exe, .bat, .etc can be
> run.
>
I've dug a little deeper into the problem. If you try to run 'foo.sub' when
LFN=N, __spawnve will look for 'foo.exe', 'foo.bat', etc. and not run
'foo.sub'. This makes no sense. Why does it do this?
(this behavior is from dosexec.c:__spawnve reproduced below)
if (!found)
{
const char *rpath_ext;
if (rd)
{
i = 0;
rpath_ext = rd;
}
else
{
i = INTERP_NO_EXT;
rpath_ext = "";
}
for ( ; interpreters[i].extension; i++)
if (stricmp(rpath_ext, interpreters[i].extension) == 0
&& access(rpath, F_OK) == 0
&& !(is_dir = (access(rpath, D_OK) == 0)))
{
found = 1;
break;
}
}
- Raw text -