Yep - it gets leaked if we take out the conditional.  I added a comment to the code to explain this for future reference.