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