[gstreamer-bugs] [Bug 385292] New: Memory leak parsing index chunk of Real Media mux files (rmdemux.c)

GStreamer (bugzilla.gnome.org) bugzilla-daemon at bugzilla.gnome.org
Tue Dec 12 17:39:12 PST 2006


Do not reply to this via email (we are currently unable to handle email
responses and they get discarded).  You can add comments to this bug at
http://bugzilla.gnome.org/show_bug.cgi?id=385292

  GStreamer | gst-plugins-ugly | Ver: 0.10.4

           Summary: Memory leak parsing index chunk of Real Media mux files
                    (rmdemux.c)
           Product: GStreamer
           Version: 0.10.4
          Platform: Other
        OS/Version: All
            Status: UNCONFIRMED
          Severity: minor
          Priority: Normal
         Component: gst-plugins-ugly
        AssignedTo: gstreamer-bugs at lists.sourceforge.net
        ReportedBy: roland.kay at ox.compsoc.net
         QAContact: gstreamer-bugs at lists.sourceforge.net
     GNOME version: 2.11/2.12
   GNOME milestone: Unspecified


Please describe the problem:
When parsing an index header chunk gst_rmdemux_parse_indx_data() uses
g_malloc()
to allocate a GstRMDemuxIndex structure and stores the pointer in the relevant
GstRMDemuxStream structure in GstRMDemux. However, in gst_rmdemux_reset() only
the pointers to GstRMDemuxStream are freed (using g_free()) and any pointer
these structures contain are leaked.

Steps to reproduce:
1. Play http://samples.mplayerhq.hu/real/AC-sipr/autahi-vox.rm in any app that
uses GStreamer under valgrind.


Actual results:
==22890== 1729 (1644 direct, 85 indirect) bytes in 3 blocks are definitely lost
in loss record 25 of 26
==22890==    at 0x1B8FF8A6: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==22890==    by 0x1BB8E45A: g_malloc (in /opt/gnome/lib/libglib-2.0.so.0.800.1)
==22890==    by 0x1C36E28D: gst_rmdemux_chain (rmdemux.c:1733)
==22890==    by 0x1C36F9D1: gst_rmdemux_loop (rmdemux.c:827)
==22890==    by 0x1B953C7E: gst_task_func (gsttask.c:192)
==22890==    by 0x1BBA7A54: (within /opt/gnome/lib/libglib-2.0.so.0.800.1)
==22890==    by 0x1BBA5B60: (within /opt/gnome/lib/libglib-2.0.so.0.800.1)
==22890==    by 0x1B9EA296: start_thread (in /lib/tls/libpthread-2.3.5.so)
==22890==    by 0x1BCA637D: clone (in /lib/tls/libc-2.3.5.so)
==22890==    by 0x1C573BAF: ???


Expected results:


Does this happen every time?


Other information:
Patch attached below.


-- 
Configure bugmail: http://bugzilla.gnome.org/userprefs.cgi?tab=email




More information about the Gstreamer-bugs mailing list