Re: question about proton error philosophy

2015-06-03 Thread Michael Goulish
> It it philosophically questionable but C is not a very philosophical > language. I beg to differ. Here are some famous thoughts concerning the C language by one early practioner, that greatest of all Roman philosophers, the incomparable Ibid. "Non teneas aurum totum quod splendet ut aur

Re: question about proton error philosophy

2015-06-03 Thread aconway
On Mon, 2013-09-16 at 13:23 -0400, Rafael Schloming wrote: > FYI, as of 0.5 you should be able to use > pn_messenger_error(pn_messenger_t > *) to access the underlying error object (pn_error_t *) and clear it > if an > error has occurred. > Making the application clear errno is pretty standard

Re: question about proton error philosophy

2013-09-16 Thread Hiram Chirino
Do other APIs reset the errno? I could have sworn they didn't. On Mon, Sep 16, 2013 at 12:01 PM, Michael Goulish wrote: > > I was expecting errno inside the messenger to be reset to 0 at the end of any > successful API call. > > It isn't: instead it looks like the idea is that errno preserves t

Re: question about proton error philosophy

2013-09-16 Thread Darryl L. Pierce
On Mon, Sep 16, 2013 at 12:33:29PM -0400, Hiram Chirino wrote: > Do other APIs reset the errno? I could have sworn they didn't. "Successful system calls and library functions never reset errno to 0, so this variable may have a nonzero value as a consequence of an error from a previous call. Furth

Re: question about proton error philosophy

2013-09-16 Thread Rafael Schloming
FYI, as of 0.5 you should be able to use pn_messenger_error(pn_messenger_t *) to access the underlying error object (pn_error_t *) and clear it if an error has occurred. --Rafael On Mon, Sep 16, 2013 at 12:40 PM, Michael Goulish wrote: > > No, you're right. > > "errno is never set to zero by

Re: question about proton error philosophy

2013-09-16 Thread Michael Goulish
No, you're right. "errno is never set to zero by any system call or library function" ( That's from Linux doco. ) OK, I was just philosophically challenged. I think what confused me was the line in the current Proton C doc (about errno) that says "an error code or zero if there is no er