Core: Fix potentially uninitialized variable warnings

I suggest changing the method to take an enum, and then removing the default case.