Avoid a tricky line in shelter_storm()

kf = (kf == FILE_A) ? kf++ : ....

is tricky becuase kf is updated twice and it happens
to do the right thing just by accident.

Rewrite in a better way.

Spotted by pdimov

No functional change.
Merge remote-tracking branch 'upstream/master'