Not a priority, but if you are updating the code again, I think it's clearer to invert the structure of this. Detect and handle the special case first, then put the general case in the "else". (This is a reasonably common pattern; one reason is that it extends more nicely to several special cases.)