diff --git a/src/disp/wfd-out-session.c b/src/disp/wfd-out-session.c index 80b7111..7d3b207 100644 --- a/src/disp/wfd-out-session.c +++ b/src/disp/wfd-out-session.c @@ -93,8 +93,7 @@ int wfd_out_session_new(struct wfd_session **out, // os->display_param_value = display_param; // } - *out = s; - s = NULL; + *out = wfd_session_ref(s); return 0; } @@ -501,8 +500,7 @@ static int wfd_out_session_handle_pause_request(struct wfd_session *s, return log_ERRNO(); } - *out_rep = m; - m = NULL; + *out_rep = (rtsp_message_ref(m), m); return 0; } diff --git a/src/disp/wfd-sink.c b/src/disp/wfd-sink.c index 48aed69..b08adb7 100644 --- a/src/disp/wfd-sink.c +++ b/src/disp/wfd-sink.c @@ -143,9 +143,8 @@ int wfd_sink_create_session(struct wfd_sink *sink, struct wfd_session **out) return r; } - sink->session = sess; + sink->session = wfd_session_ref(sess); *out = wfd_session_ref(sess); - sess = NULL; wfd_fn_sink_properties_changed(sink, "Session");