Sorry.  There is a very obvious reason why it needs to be reset so the first run through timerFired doesn't bail out.  You're implying you remember that you worked around this and still there was another weirdness which you didn't feel the need to describe in any detail here but just leave a vague question...  Yeah that adds no value I'm afraid other than to prompt some vague memory from you.