After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 669039 - gstrtspconnection: new data may get sent even-though there is a queued message in the GstRTSPWatch
gstrtspconnection: new data may get sent even-though there is a queued messag...
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
0.10.35
Other Linux
: Normal normal
: 0.10.36
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2012-01-30 15:34 UTC by Ognyan Tonchev (redstar_)
Modified: 2012-02-17 14:46 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
only send new data if there are no queued messages (964 bytes, patch)
2012-01-30 15:34 UTC, Ognyan Tonchev (redstar_)
committed Details | Review

Description Ognyan Tonchev (redstar_) 2012-01-30 15:34:14 UTC
Created attachment 206443 [details] [review]
only send new data if there are no queued messages

gst_rtsp_watch_write_data () will not check if there is already queued message in 'watch->write_data'.

The exact problem that i have noticed is that the gst-rtsp-server sometimes sends an RTSP data in the middle of an RTP packet when tunneling over HTTP and the bandwidth of the network is too low.

Attaching also a small patch which solves the problem.
Comment 1 Tim-Philipp Müller 2012-02-17 14:46:43 UTC
Nice catch, thanks for the patch!


commit f6e07b65a4dd63f1168a06aa31b45020a43226f4
Author: Ognyan Tonchev <ognyan@axis.com>
Date:   Mon Jan 30 15:55:26 2012 +0100

    rtspconnection: only send new data immediately if there are no queued messages
    
    Even if watch->messages->length is 0 there may still be some
    data from a message that was only written partially at the
    previous attempt stored in watch->write_data, so check for
    that as well. We don't want to write data into the middle
    of another message, which could happen when there wasn't
    enough bandwidth.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=669039