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 765116 - scaletempo: memory corruption
scaletempo: memory corruption
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
1.8.0
Other Mac OS
: Normal blocker
: 1.8.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-04-15 16:47 UTC by Philippe Normand
Modified: 2016-04-15 17:06 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
scaletempo: S16 uses S32 temporary buffers, float/double their own type (2.03 KB, patch)
2016-04-15 17:00 UTC, Sebastian Dröge (slomo)
committed Details | Review

Description Philippe Normand 2016-04-15 16:47:25 UTC
This regression was introduced in 1.8.0 by commit 1e0b9b98534b2a889fd16503fca945d76d51edc5

The scaletempo->bytes_per_sample field is now used in reinit_buffers() instead of the hardcoded value (4). But for a S16LE audio stream here, bps is equal to 2 in the set_caps() function.

To reproduce the bug, with a WebKitGTK browser, go to: http://yt-dash-mse-test.commondatastorage.googleapis.com/unit-tests/2016.html?test_type=progressive-test&command=run&disable_log=false&enablewebm=false&tests=30,31,33,34
Comment 1 Sebastian Dröge (slomo) 2016-04-15 17:00:09 UTC
Created attachment 326119 [details] [review]
scaletempo: S16 uses S32 temporary buffers, float/double their own type

Make sure to allocate not only a S16 buffer for S16 but a twice as big one to
hold S32.
Comment 2 Sebastian Dröge (slomo) 2016-04-15 17:06:51 UTC
Attachment 326119 [details] pushed as 2dee0e3 - scaletempo: S16 uses S32 temporary buffers, float/double their own type