That is svn as of this afternoon.  The only statement I added was the 
Verbose line to confirm that it was exiting here.

Anyway, it seems that
  >> +if ((pid = CHILD[fd]) == 0)

is always returning true with FreeBSD no matter what command is run.  I 
tried running /bin/true and got the same result.

Mark Burgess wrote:
> I don't understand what you are saying here. In the position of +++
> lines suggested by the email, this code has to always return -1, but
> this was altered by Eric s that this was not the case. This is not
> what the svn code looks like today.
> 
> Can you clarify?
> 
> M
> 
> Jo Rhett wrote:
>> I've traced part of the problem -- cfpclose is now returning -1 to all 
>> external commands, instead of their actual exit status.   The problem 
>> appears to be from this change (I tested with the verbose statement I added)
>>
>> --- /usr/ports/sysutils/cfengine/work/cfengine-2.2.1/src/popen.c 
>> Fri Jan 13 12:39:00 2006
>> +++ popen.c     Sat Jul 28 13:51:19 2007
>>
>>   CHILD[fd] = 0;
>>
>> +if ((pid = CHILD[fd]) == 0)
>> +   {
>> +   Verbose("pid = CHILD[fd] returned 0.\n");
>> +   return -1;
>> +   }
>> +
>>   if (fclose(pp) == EOF)
>>      {
>>      return -1;
>>
>> This is always failing on FreeBSD, and thus breaking the queries for 
>> packages.
>>
> 


-- 
Jo Rhett
senior geek
Silicon Valley Colocation
_______________________________________________
Bug-cfengine mailing list
[email protected]
https://cfengine.org/mailman/listinfo/bug-cfengine

Reply via email to