every source got so many tempfixes left behind after a proper fix, its probly one of them, i guess it was made cuz they had getLevel() issues and that was the only solution they had.
from what i read i can speculate that getLevel was returning -1 in some cases probly like some objects being null and returning -1 thats why they create a new object just to get its level xD and in case it doesnt load they were returning level 1, yes its lame code but you know when you are with limited knowledge every stupid idea is a solution xD