At the end of the final iteration, we have lblkno = xflags = 0 and thus
set nbp = gbincore(bo, 0). The xflags test will fail and cause the loop
to end, but this seems like a fragile and non-obvious mechanism. Modify
the test so that we break if nbp == NULL at the beginning of the loop.
No functional change intended; we just avoid an unnecessary lookup once
per call.