summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <slomo@circular-chaos.org>2013-07-28 13:23:41 +0200
committerSebastian Dröge <slomo@circular-chaos.org>2013-07-28 13:24:32 +0200
commit34569f9b0d5594b313d9f215f8a5624f19d66ce9 (patch)
treefa740547f3f981d6f4503133f0b0d5618355c841
parentd95f138a4342cc1e946bbf36bbb8a054c0fd9752 (diff)
multifdsink: Update current time after every write
Each write will update the last_activity_time and otherwise we would compare against a too old current time and immediately timeout because current time is smaller than last activity time (overflow).
-rw-r--r--gst/tcp/gstmultifdsink.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/gst/tcp/gstmultifdsink.c b/gst/tcp/gstmultifdsink.c
index e726d5eb6..a174ba27a 100644
--- a/gst/tcp/gstmultifdsink.c
+++ b/gst/tcp/gstmultifdsink.c
@@ -683,15 +683,15 @@ gst_multi_fd_sink_handle_client_write (GstMultiFdSink * sink,
GstMultiHandleClient *mhclient = (GstMultiHandleClient *) client;
int fd = mhclient->handle.fd;
- g_get_current_time (&nowtv);
- now = GST_TIMEVAL_TO_TIME (nowtv);
-
flushing = mhclient->status == GST_CLIENT_STATUS_FLUSHING;
more = TRUE;
do {
gint maxsize;
+ g_get_current_time (&nowtv);
+ now = GST_TIMEVAL_TO_TIME (nowtv);
+
if (!mhclient->sending) {
/* client is not working on a buffer */
if (mhclient->bufpos == -1) {