On Wed, Sep 18, 2024 at 12:17 PM Michal Privoznik <mpriv...@redhat.com> wrote: > > According to its man page [1], pw_context_connect() sets errno on > failure: > > Returns a Core on success or NULL with errno set on error. > > It may be handy to see errno when figuring out why PipeWire > failed to connect. That leaves us with just one possible path to > reach 'fail_error' label which is then moved to that path and > also its error message is adjusted slightly. > > 1: > https://docs.pipewire.org/group__pw__core.html#ga5994e3a54e4ec718094ca02a1234815b > > Signed-off-by: Michal Privoznik <mpriv...@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lur...@redhat.com> > --- > > v2 of: > > https://mail.gnu.org/archive/html/qemu-devel/2024-09/msg03485.html > > diff to v1: > - Dropped duplicated S-o-b line > - Fixed typo on error message (s/PipeWite/PipeWire/) > > audio/pwaudio.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/audio/pwaudio.c b/audio/pwaudio.c > index 3b14e04fbb..8e13b58286 100644 > --- a/audio/pwaudio.c > +++ b/audio/pwaudio.c > @@ -769,13 +769,15 @@ qpw_audio_init(Audiodev *dev, Error **errp) > pw->core = pw_context_connect(pw->context, NULL, 0); > if (pw->core == NULL) { > pw_thread_loop_unlock(pw->thread_loop); > - goto fail_error; > + error_setg_errno(errp, errno, "Failed to connect to PipeWire > instance"); > + goto fail; > } > > if (pw_core_add_listener(pw->core, &pw->core_listener, > &core_events, pw) < 0) { > pw_thread_loop_unlock(pw->thread_loop); > - goto fail_error; > + error_setg(errp, "Failed to add PipeWire listener"); > + goto fail; > } > if (wait_resync(pw) < 0) { > pw_thread_loop_unlock(pw->thread_loop); > @@ -785,8 +787,6 @@ qpw_audio_init(Audiodev *dev, Error **errp) > > return g_steal_pointer(&pw); > > -fail_error: > - error_setg(errp, "Failed to initialize PW context"); > fail: > if (pw->thread_loop) { > pw_thread_loop_stop(pw->thread_loop); > -- > 2.44.2 >