delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/1998/10/17/07:28:54

Message-Id: <199810171222.OAA44546@ieva06.lanet.lv>
From: "Andris Pavenis" <pavenis AT lanet DOT lv>
To: djgpp-workers AT delorie DOT com
Date: Sat, 17 Oct 1998 14:27:50 +0300
MIME-Version: 1.0
Subject: Bug in system () (DJGPP-2.02)
X-mailer: Pegasus Mail for Win32 (v3.01b)
Reply-To: djgpp-workers AT delorie DOT com

Hi!

There is following bug in function system() in last alpha version of 
DJGPP (file src/libc/ansi/stdlib/system.c in djlsr202.zip):

system ("somename.bat");

crashes DOS session under WIN95 as plainsystem() errorously 
uses __spawnve() [line 233] instead of invoking shell. That of course
is wrong for BAT file.

Here is simple example that ilustrates the problem:
//----------------------   test.cc  ---------------------
#include <stdlib.h>
#include <fstream>

void build_bat ()
  {
      ofstream os ("test.bat");
      os << "dir\nls\n";
  }

int  main (void)
  {
      build_bat ();
      return system ("test.bat");
  }

--------------------------------------------------------------------------

I found this problem because of make-3.77 built with djdev202
was still "sitting" in $DJDIR/bin (instead of official port). Attempt
to run bat file from make crashed DOS session.

Andris


- Raw text -


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