join: Don't add delimiter if only null-values are left

Looks like a nested loop that introduces polinomial complexity,
but the inner loop advances the outer loop as well.

Fixes Redmine #6552
Just checking I understand the logic.

For more to be true, we must have set it true in the inner loop, last time round the outer loop; in which case, we're guaranteed that RlistScalarValue(rp) isn't CF_NULL_VALUE (because the outer loop has just advanced rp to the entry whose non-NULL-ness caused us to set more true).
So the `!more &&` precondition here is actually unnecessary (if it fails, the second half would fail, too); it serves as a cheap pre-test (caching the answer from last time round).

So we could in fact make more local to the part of the outer loop from where it's reset false onwards; we don't need to remember its value into the next outer iteration; doing so is an optimisation.

Which is fine by me, as long as I've understood correctly ;-)