I remember the rationale, but it's too late right now for me to find
a proper
fix. The problem is with spacing single-staff systems. Suppose you
have two
systems, the first has staff-extent '(-2.0 . -2.0) and the second has
staff-extent '(-5.0 . -5.0). Then the original function would put
too much
space between the lines because of the inner "(max 0 ...)". Also,
there is a
problem in that line-minimum-distance uses the extents while
line-ideal-distance uses the staff-extents, but these aren't directly
comparable.
You're welcome to revert it; that will only cause some uneven
spacing in a few
situations and I'll have another look at fixing it later. Or if you
want to
figure out the correct solution, you're welcome to do that too :) It
shouldn't need any special casing, it's just a matter of getting the
arithmetic right.