projects
/
platform
/
upstream
/
gstreamer.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
96f8775
)
rtspsrc: flush connection when stopping
author
Wim Taymans
<wim.taymans@collabora.co.uk>
Wed, 6 Feb 2013 12:18:18 +0000
(13:18 +0100)
committer
Wim Taymans
<wim.taymans@collabora.co.uk>
Wed, 6 Feb 2013 12:18:18 +0000
(13:18 +0100)
When we stop, we can flush all pending commands so that we can stop and
join the task.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=684924
gst/rtsp/gstrtspsrc.c
patch
|
blob
|
history
diff --git
a/gst/rtsp/gstrtspsrc.c
b/gst/rtsp/gstrtspsrc.c
index 22905e829b1bc434a54edd4bbb6f92fab319273c..c9a5fb6bcfe9d0ec49280e4e0c1cb5fb92513812 100644
(file)
--- a/
gst/rtsp/gstrtspsrc.c
+++ b/
gst/rtsp/gstrtspsrc.c
@@
-285,6
+285,9
@@
static gboolean gst_rtspsrc_push_event (GstRTSPSrc * src, GstEvent * event);
#define CMD_RECONNECT (1 << 5)
#define CMD_LOOP (1 << 6)
+/* mask for all commands */
+#define CMD_ALL ((CMD_LOOP << 1) - 1)
+
#define GST_ELEMENT_PROGRESS(el, type, code, text) \
G_STMT_START { \
gchar *__txt = _gst_element_error_printf text; \
@@
-6699,7
+6702,7
@@
gst_rtspsrc_stop (GstRTSPSrc * src)
GST_DEBUG_OBJECT (src, "stopping");
/* also cancels pending task */
- gst_rtspsrc_loop_send_cmd (src, CMD_WAIT, CMD_
CLOSE
);
+ gst_rtspsrc_loop_send_cmd (src, CMD_WAIT, CMD_
ALL
);
GST_OBJECT_LOCK (src);
if ((task = src->task)) {