[Bug 690557] New: Corrected the control of whether a SingleQueue is full or not

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Thu Dec 20 04:48:45 PST 2012


https://bugzilla.gnome.org/show_bug.cgi?id=690557
  GStreamer | gstreamer (core) | git

           Summary: Corrected the control of whether a SingleQueue is full
                    or not
    Classification: Platform
           Product: GStreamer
           Version: git
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gstreamer (core)
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: branko.subasic at axis.com
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


The code in single_queue_overrun_cb(), which checks whether a SingleQueue is to
be considered full or not, is confusing and does not behave as one would
expect. 

When checking for fullness it should compare with it's own max sizes, not with
the other queues in the same MultiQueue. Furthermore checking for the hard
limit ought to be done first, before the loop. After all, the queue is
considered full if the hard limits are reached, no matter if another
SingleQueue is empty.

If the hard limits have not been reached yet then it checks whether any of the
other SingleQueues are empty, and if that's the case the allowed buffer limit
is increased with one. That should only be done once for each call.

There is already a comment in the code pointing out that these things seems to
be wrong.

-- 
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