When using su or sudo to switch users, XDG_RUNTIME_DIR is not updated automatically. This is especially problematic when switching to root, because the client library will always chown the runtime directory to the running user. I believe the proper fix would be to fail if the runtime directory exists but is owned by some other user, instead chowning the directory. Also, if the runtime directory doesn't exist, it should not be created by clients.
How about applying this patch, but skip the "systemd blaming" in the log message? http://lists.freedesktop.org/archives/pulseaudio-discuss/2013-November/019121.html
Yes, I think that patch is good. It doesn't solve the problem that clients create the runtime directory if it doesn't exist, but that's not as serious problem as chowning existing directories to root. Will you update your patch, or should someone else do that?
http://cgit.freedesktop.org/pulseaudio/pulseaudio/commit/?id=076601ee28a442868ba4ab92a6f379190f6fa0ab
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.