Well, as you said, this is a na������ve fix, and it will break some scenarios. I'm not sure how this bug should be fixed properly.