On Sun, 24 Jun 2007, Junio C Hamano wrote: > > I still do not like the fact that this patch makes an error from > the final stdout flushing override the return value from p->fn() > even when the function already diagnosed an error Yeah. I also don't think it's very _pretty_ code, and it violates my personal coding standards by adding way too deep indentation for the new error cases. It was already three indents deep (reasonably fine, but that NOT_BARE test wass already pretty ugly), but now it becomes five indentation levels deep at its deepest, which is just a sign that things should be split up. I'd also like to know why it does that fcntl() is done, and I also wonder about that "ferror()" call: it is entirely possible that ferror() is set due to EPIPE, and in that case, it will *not* set errno to EPIPE at all, so it will *still* complain about what I consider an invalid situation. I dunno. I think the ENOSPC worry is a very real and valid one, but I would really tend prefer something different. How about this following series of two patches instead, which I'll send as replies to this email.. Linus - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html