audiobasesrc/ringbuffer: Uses too small integers for segment counters
@slomo
Submitted by Sebastian Dröge Link to original bug (#754180)
Description
See https://github.com/EricssonResearch/openwebrtc/pull/456 for some discussion. Problem is this code: http://cgit.freedesktop.org/gstreamer/gst-plugins-base/tree/gst-libs/gst/audio/gstaudiobasesrc.c#n927
running_time_segment is only an integer (as required by g_atomic_int_*), and will overflow after a while. And it will cause problems immediately if having a huge running time, e.g. when explicitly setting base_time=0 and having a clock with a high current time.
Not sure yet how to fix this as the segment counters are part of the public API unfortunately, and also there are not atomic ops on 64 bit integers.