Hi,
from what I can see here, the possible and likely failure is that "startCoroutine" is asynchrone, which means you MUST implement a way for your leaderboard system to call you back and validate your initial call (set the name or post a score), else you are likely querying for the name too soon.
Could this be the case? in terms of code, this is fine ( from what I can see), so I am pretty sure your problem lie somewhere else, more ont he logic and "sequential" pattern that your coroutine call breaks.
bye,
Jean