Why is that better?  It just requires an additional flag variable and spreading this functionality over two places.