[Bug 732226] Races when sessions time out
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Tue Jul 1 05:50:50 PDT 2014
https://bugzilla.gnome.org/show_bug.cgi?id=732226
GStreamer | gst-rtsp-server | git
Wim Taymans <wim.taymans> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
CC| |wim.taymans at gmail.com
Resolution| |FIXED
Target Milestone|HEAD |1.4.0
--- Comment #3 from Wim Taymans <wim.taymans at gmail.com> 2014-07-01 12:50:46 UTC ---
I reworked it slightly. The signal is now on the session, because that's the
one emitting the signal. The signal is emitted when the session is removed from
the pool (not only when it expired) so you get the same effect when filtering
the sessions on the client.
If the session was shared between multiple client objects, they would override
the "gst-rtsp-expired-handler" data on the session. I changed it so that there
is only one handler on the configured session pool.
Please check if that also works for you.
commit 5e2afcefdda5066641c01d243444c4f670054de0
Author: Wim Taymans <wtaymans at redhat.com>
Date: Tue Jul 1 14:41:14 2014 +0200
client: protect sessions with lock
Protect the list of sessions with the lock.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732226
commit fe081e73015dc269d585f4be3efbc0d93ead128b
Author: Wim Taymans <wtaymans at redhat.com>
Date: Tue Jul 1 12:13:47 2014 +0200
Client: keep a ref to the session
Don't just keep a weak ref to the session objects but use a hard ref. We
will be notified when a session is removed from the pool (expired) with
the new session-removed signal.
Don't automatically close the RTSP connection when all the sessions of
a client are removed, a client can continue to operate and it can create
a new session if it wants. If you want to remove the client from the
server, you have to use gst_rtsp_server_client_filter() now.
Based on patch from Ognyan Tonchev <ognyan.tonchev at axis.com>
See https://bugzilla.gnome.org/show_bug.cgi?id=732226
commit 964ca3c98842c5dd7d640b81bc018c0a6687c4ef
Author: Wim Taymans <wtaymans at redhat.com>
Date: Mon Jun 30 15:14:34 2014 +0200
session-pool: add session-removed signal
Add a signal to be notified when a session is removed from the pool.
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list