The problem was that I wasn't returning null from the SignInAdapter method signIn. You have to return null there for ProviderSignInController to use postSignInUrl.
I've written my own social controller based on ProviderSignInController now, which works better for me.