Hi, On 2019-11-13 16:18:46 +0000, Ranier Vilela wrote: > Surely that "s->nChildXids > 0", protects s->childXids to be NULL! > But, when we exchange the test (s->nChildXids > 0) by (s->childXids != NULL), > I believe we have the same protection, because, if "s->childXids" is not > NULL, "s->nChildXids" is > 0, naturally. > > That way we can improve the function and avoid calling and setting > unnecessarily!
Why is this an improvement? And what setting are we removing? You mean that we reset nChildXids, even if it's already 0? Hard to see how that matters. > Bonus: silent compiler warning potential null pointer derenferencing. Which compiler issues a warning here? Greetings, Andres Freund