Improve configure process to use correct compiler.

Fix bug where loss of two or more processes at the same time could cause an
exception and mess up internal records of what proceses are running.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/ec/trunk@39594 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
rfm 2016-03-23 09:24:05 +00:00
parent 6919ac1831
commit cce28a1ae4
3 changed files with 394 additions and 305 deletions

View file

@ -1504,12 +1504,12 @@ static NSString* cmdWord(NSArray* a, unsigned int pos)
object: conn];
if ([conn isKindOfClass: [NSConnection class]])
{
NSMutableArray *a = [NSMutableArray arrayWithCapacity: 2];
NSMutableArray *c;
NSMutableString *l = [NSMutableString stringWithCapacity: 20];
NSMutableString *e = [NSMutableString stringWithCapacity: 20];
NSMutableString *m = [NSMutableString stringWithCapacity: 20];
BOOL lostClients = NO;
unsigned i;
NSUInteger i;
if (control && [(NSDistantObject*)control connectionForProxy] == conn)
{
@ -1518,13 +1518,13 @@ static NSString* cmdWord(NSArray* a, unsigned int pos)
DESTROY(control);
}
/*
* Now remove the clients from the active list.
/* Now remove the clients from the active list.
*/
i = [clients count];
c = AUTORELEASE([clients mutableCopy]);
i = [c count];
while (i-- > 0)
{
EcClientI* o = [clients objectAtIndex: i];
EcClientI *o = [c objectAtIndex: i];
if ([(id)[o obj] connectionForProxy] == conn)
{
@ -1532,8 +1532,7 @@ static NSString* cmdWord(NSArray* a, unsigned int pos)
NSString *s;
lostClients = YES;
[a addObject: o];
[clients removeObjectAtIndex: i];
[clients removeObjectIdenticalTo: o];
if (i <= pingPosition && pingPosition > 0)
{
pingPosition--;
@ -1562,7 +1561,7 @@ static NSString* cmdWord(NSArray* a, unsigned int pos)
}
}
[a removeAllObjects];
[c removeAllObjects];
if ([l length] > 0)
{

660
configure vendored

File diff suppressed because it is too large Load diff

View file

@ -2,6 +2,28 @@ dnl Process this file with autoconf to produce configure.
AC_INIT(EcProcess.h)
AC_CONFIG_HEADER(config.h)
if test -z "$GNUSTEP_MAKEFILES"; then
GNUSTEP_MAKEFILES=`gnustep-config --variable=GNUSTEP_MAKEFILES 2>/dev/null`
fi
if test -z "$GNUSTEP_MAKEFILES"; then
AC_MSG_ERROR([You must run the GNUstep initialization script first!])
fi
#--------------------------------------------------------------------
# Find the compiler
#--------------------------------------------------------------------
if test "$CC" = ""; then
CC=`gnustep-config --variable=CC`
fi
if test "$CPP" = ""; then
CPP=`gnustep-config --variable=CPP`
fi
if test "$CXX" = ""; then
CXX=`gnustep-config --variable=CXX`
fi
AC_PROG_CC
AC_PROG_CPP