This a much different problem.
I too use custom pawns for players logging in.
Make sure you call the parent method via Super:: in your overriden method especially in PostLogin as that calls RestartPlayer which I had to override (and NOT call the engine’s method) so that I could use AdjustIfPossibleButAlwaysSpawn as my spawn parameter. I then had to copy some of the engines RestartPlayer functionality into my method and assign the pawn to the controller.