mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-12-15 08:56:38 -05:00
avoid fd-leaks
Set rank of source to PRIMARY + 1
This commit is contained in:
parent
c2a35199f7
commit
98861cb940
3 changed files with 4 additions and 7 deletions
|
|
@ -203,12 +203,7 @@ gst_fddepay_transform_ip (GstBaseTransform * trans, GstBuffer * buf)
|
||||||
"buffer, received %i", fds_len);
|
"buffer, received %i", fds_len);
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
fd = dup (fds[0]);
|
fd = fds[0];
|
||||||
if (fd < 0) {
|
|
||||||
GST_WARNING_OBJECT (fddepay, "fddepay: Could not dup FD %i: %s", fds[0],
|
|
||||||
strerror (errno));
|
|
||||||
goto error;
|
|
||||||
}
|
|
||||||
fcntl (fd, F_SETFD, FD_CLOEXEC);
|
fcntl (fd, F_SETFD, FD_CLOEXEC);
|
||||||
g_free (fds);
|
g_free (fds);
|
||||||
fds = NULL;
|
fds = NULL;
|
||||||
|
|
@ -228,6 +223,7 @@ gst_fddepay_transform_ip (GstBaseTransform * trans, GstBuffer * buf)
|
||||||
GST_BUFFER_OFFSET (buf) = msg.seq;
|
GST_BUFFER_OFFSET (buf) = msg.seq;
|
||||||
|
|
||||||
return GST_FLOW_OK;
|
return GST_FLOW_OK;
|
||||||
|
|
||||||
error:
|
error:
|
||||||
if (fds)
|
if (fds)
|
||||||
g_free (fds);
|
g_free (fds);
|
||||||
|
|
|
||||||
|
|
@ -44,7 +44,7 @@ plugin_init (GstPlugin * plugin)
|
||||||
GST_TYPE_FDPAY);
|
GST_TYPE_FDPAY);
|
||||||
gst_element_register (plugin, "pvfddepay", GST_RANK_NONE,
|
gst_element_register (plugin, "pvfddepay", GST_RANK_NONE,
|
||||||
GST_TYPE_FDDEPAY);
|
GST_TYPE_FDDEPAY);
|
||||||
gst_element_register (plugin, "pulsevideosrc", GST_RANK_NONE,
|
gst_element_register (plugin, "pulsevideosrc", GST_RANK_PRIMARY + 1,
|
||||||
GST_TYPE_PULSEVIDEO_SRC);
|
GST_TYPE_PULSEVIDEO_SRC);
|
||||||
gst_element_register (plugin, "pulsevideosink", GST_RANK_NONE,
|
gst_element_register (plugin, "pulsevideosink", GST_RANK_NONE,
|
||||||
GST_TYPE_PULSEVIDEO_SINK);
|
GST_TYPE_PULSEVIDEO_SINK);
|
||||||
|
|
|
||||||
|
|
@ -320,6 +320,7 @@ gst_pulsevideo_sink_render (GstBaseSink * bsink, GstBuffer * buffer)
|
||||||
gst_memory_unmap (mem, &minfo);
|
gst_memory_unmap (mem, &minfo);
|
||||||
}
|
}
|
||||||
g_unix_fd_message_append_fd ((GUnixFDMessage*)mesg, gst_fd_memory_get_fd (mem), NULL);
|
g_unix_fd_message_append_fd ((GUnixFDMessage*)mesg, gst_fd_memory_get_fd (mem), NULL);
|
||||||
|
gst_memory_unref (mem);
|
||||||
info.message = mesg;
|
info.message = mesg;
|
||||||
|
|
||||||
g_mutex_lock (&pvsink->lock);
|
g_mutex_lock (&pvsink->lock);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue