www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2002/10/26/13:40:05

Date: Sat, 26 Oct 2002 19:39:23 +0200
From: Laurynas Biveinis <lauras AT softhome DOT net>
X-Mailer: The Bat! (v1.61) Personal
X-Priority: 3 (Normal)
Message-ID: <139735779174.20021026193923@softhome.net>
To: "Eli Zaretskii" <eliz AT is DOT elta DOT co DOT il>
CC: djgpp-workers AT delorie DOT com
Subject: Re: GCC 3.2 building with 2.04 trouble on W2K (NTVDM crash)
In-Reply-To: <1659-Sat26Oct2002170848+0200-eliz@is.elta.co.il>
References: <10210210510 DOT AA21415 AT clio DOT rice DOT edu>
<75381002462 DOT 20021022170727 AT softhome DOT net>
<39723724651 DOT 20021026161829 AT softhome DOT net>
<1659-Sat26Oct2002170848+0200-eliz AT is DOT elta DOT co DOT il>
MIME-Version: 1.0
X-OriginalArrivalTime: 26 Oct 2002 17:37:14.0667 (UTC) FILETIME=[528007B0:01C27D16]
Reply-To: djgpp-workers AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp-workers AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

> Copy system.c and dosexec.c into the sources of the program which
> fails, and find out which DOS call fails, and with what DOS error code
> (EACCES is something we produce from a lot of different DOS codes).
> That might give a direction for further debugging.

I've added printf dump to _open() and it gets triggered all over the
place like this:
---
_open() failed:
filename = c:/devel/djgpp/tmp/fxincaaa
oflag = 0
DOS error code = 2
---
Also common is a failure with oflag = 0x901. However none of this is
related to the particular issue I'm trying to debug and it's very
common, so I guess it's expected (Well, I wish printf() debugging
had a stack backtrace...)

Now about that particular failure:
_shell_command() from system.c does:

    char *atfile = (char *) alloca (L_tmpnam);
    errno = 0;
    respf = fopen (tmpnam (atfile), "wb");
    if (respf)
    {
      ...
    }
    else
       return emiterror ("Cannot open script file for $SHELL", errno);

Now that fopen(...) call fails _open() like this:
---
_open() failed:
filename = c:/devel/djgpp/tmp/dj410000
oflag = 901
DOS error code = 5
---

I've checked with RBIL and see that 0x05 is, well, 'access denied'.
How comes? Any pointers?

Laurynas


- Raw text -


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