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 428698 - [rmdemux] crashes on files with many logical streams
[rmdemux] crashes on files with many logical streams
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-ugly
git master
Other All
: Normal major
: 0.10.6
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2007-04-11 17:10 UTC by René Stadler
Modified: 2007-04-12 10:10 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Make rmdemux handle any number of logical streams (5.60 KB, patch)
2007-04-11 17:11 UTC, René Stadler
committed Details | Review

Description René Stadler 2007-04-11 17:10:21 UTC
The rmdemux element can handle a maximum number of 8 logical streams; the rmdemux->streams array is of constant size 8.  As the element parses the stream and fills the array in gst_rmdemux_add_stream, it never checks if the limit has been reached.  It writes past the limit of the array instead.

Attaching a patch that converts the constant size array to GSList usage, lifting any limit on the number of logical streams and making the element not crash when n_streams > 8.
Comment 1 René Stadler 2007-04-11 17:11:21 UTC
Created attachment 86187 [details] [review]
Make rmdemux handle any number of logical streams
Comment 2 Wim Taymans 2007-04-12 10:10:42 UTC
        Patch by: René Stadler <mail at renestadler dot de>

        * gst/realmedia/rmdemux.c: (find_seek_offset_bytes),
        (find_seek_offset_time), (gst_rmdemux_reset),
        (gst_rmdemux_get_stream_by_id), (gst_rmdemux_send_event),
        (gst_rmdemux_add_stream), (gst_rmdemux_combine_flows):
        * gst/realmedia/rmdemux.h:
        Make rmdemux handle any number of logical streams. Fixes #428698.