The necessity of this comment implies how convoluted the code is, which is why I refactored it the way I did in #4546.  Using two variables to represent the same state is a recipe for disaster.