Tom Lane wrote: > Bruce Momjian <pgman@candle.pha.pa.us> writes: > > Should I just change them all to: > > > errno = 0; /* avoid checking result for failure */ > > No, that's still a completely inaccurate description of the reason > for having the statement. > > > or should I add a macro to c.h as: > > > /* Sometimes we need to clear errno so we can check errno > > * without having to check for a failure value from the function > > * call. > > */ > > #define CLEAR_ERRNO \\ > > do { \ > > errno = 0; \\ > > while (0); > > I vote "neither". Anyone who doesn't understand what this is for will > need to go read the C library man pages for a bit anyway. Nor do I find > "CLEAR_ERRNO" an improvement over "errno = 0".
Well, there seems to be enough confusion, even in this email list, that identifying _why_ errno is being cleared is a good idea. I modified it to: errno = 0; /* avoid having to check the result for failure */ -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073 ---------------------------(end of broadcast)--------------------------- TIP 5: don't forget to increase your free space map settings