This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 2/2] New internal function __access_noerrno



On 10/11/2016 15:12, Andreas Schwab wrote:
> On Nov 10 2016, Adhemerval Zanella <adhemerval.zanella@linaro.org> wrote:
> 
>> diff --git a/hurd/hurd.h b/hurd/hurd.h
>> index ec07827..8bcb1ec 100644
>> --- a/hurd/hurd.h
>> +++ b/hurd/hurd.h
>> @@ -75,6 +75,36 @@ __hurd_fail (error_t err)
>>    errno = err;
>>    return -1;
>>  }
>> +
>> +_HURD_H_EXTERN_INLINE int
>> +__hurd_fail_noerrno (error_t err)
>> +{
>> +  switch (err)
>> +    {
>> +    case EMACH_SEND_INVALID_DEST:
>> +    case EMIG_SERVER_DIED:
>> +      /* The server has disappeared!  */
>> +      err = EIEIO;
>> +      break;
>> +
>> +    case KERN_NO_SPACE:
>> +      err = ENOMEM;
>> +      break;
>> +
>> +    case KERN_INVALID_ARGUMENT:
>> +      err = EINVAL;
>> +      break;
>> +
>> +    case 0:
>> +      return 0;
>> +
>> +    default:
>> +      break;
>> +    }
>> +
>> +  errno = err;
> 
> Isn't that supposed to _not_ set errno?
> 
> Andreas.
> 

Oops, fixed it locally.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]