Provide a missing break;

The -d flag to serverd used to imply -K (debug implies ignore locks).
If this was intended, I'll replace the break with a /* deliberate
fall-through */ comment, but I'm guessing it's simply a mistake.
Fix up some #if-ery to avoid unreachable code.

Some avahi-specific code ended in an exit() and was followed by more
code, which would thus be unreachable when the relevant avahi defines
are enabled.  The code involved also repeated a pair of #if tests in
three places; so make the first set a local define the other two can
use as a simpler test; have a #else clause for the formerly unreached
code; and share the common exit() between the two branches.
Simplify testing on NO_FORK.

Rather than testing it in three places, test it once and put all three
fragments of code in a single conditioned block.
Merge pull request #1503 from ediosyncratic/missing-fall-through

A missing break and some code simplification.