X-Authentication-Warning: delorie.com: mailnull set sender to djgpp-workers-bounces using -f From: sandmann AT clio DOT rice DOT edu (Charles Sandmann) Message-Id: <10112090644.AA19383@clio.rice.edu> Subject: Re: v2.03 refresh ready for review/testing To: djgpp-workers AT delorie DOT com (DJGPP developers) Date: Sun, 9 Dec 2001 00:44:27 -0600 (CST) X-Mailer: ELM [version 2.5 PL2] Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Reply-To: djgpp-workers AT delorie DOT com > I have built DJGPP 2.03 refresh on Win 98 box and copied the files onto my > XP box to h:\djgpp. I have noticed a few quirks, like what was ocuring when > we were trying to get the dosexec.c stuff sorted out for Win 2K. > > I have been able to re-build all of the packages, except GCC 2.9.5.3. I have > so far seen the following problems:- > 1) Build fail as it cannot pass the argument list to LD.EXE CVS versions of the spawn enhanced the command argument passing, so if you have a newer item in the mix you might have problems? > 2) Out of memory after the build fails That could be related to crashes. > 3) CMD.EXE disappeared once after a build fail when I hit the enter key Never seen that, but I do see them loose their NT scroll bar and become fixed DOS size windows, even under CMD.EXE ... > I spotted in src\libc\dos\process\dosexec.c that at about line 389 that the > 2.04 has the following :- > /* Work around the W2K NTVDM bug; see dpmiexcp.c for detailed > explanations. */ > __maybe_fix_w2k_ntvdm_bug(); > > The updated 2.03 file does not have this. The function is direct_exec_tail_1 > (). Could this be the cause of the problems I haev seen? Maybe, but it shouldn't be if we really understand the problem. The nesting problems are caused by the child exit setting the internal NTVDM psp to zero in the process of exiting. This shouldn't be a problem until the parent exits (if we exit with it zero that's when it crashes). We have code in our exit to set it back. Now, there may be some other case where the right after the exit set is needed. If required I can slap a bogus prototype in both modules and we can duplicate the 2.04 behavior, but it does start to change the external visible symbol list... When I saw these problems I could always track some non-fixed module down in my tool chain, but you may have found a real problem (why we are testing).