GNOME Bugzilla – Bug 749764
videoscaler: invalid memory access when downscaling in some cases
Last modified: 2015-06-12 15:00:09 UTC
Created attachment 303848 [details] valgrind output test_downscale_641x481_111x30_method_3 Reproduce with: 1) GST_CHECKS=test_downscale_641x481_111x30_method_3 make elements/videoscale.valgrind 2) GST_CHECKS=test_downscale_641x481_30x111_method_2 make elements/videoscale.valgrind 3) GST_CHECKS=test_downscale_641x481_30x111_method_3 make elements/videoscale.valgrind Example: Running suite(s): videoscale ==23412== Thread 2 src:src: ==23412== Invalid read of size 8 ==23412== at 0x4C2D94E: memcpy@@GLIBC_2.14 (vg_replace_strmem.c:915) ==23412== by 0x4E5F3D9: gst_video_scaler_combine_packed_YUV (video-scaler.c:1133) ==23412== by 0x4E5A40E: setup_scale (video-converter.c:4049) ==23412== by 0x4E5A40E: video_converter_lookup_fastpath (video-converter.c:4698) ==23412== by 0x4E5A40E: gst_video_converter_new (video-converter.c:2117) ==23412== by 0x7D2FF00: gst_video_scale_set_info (gstvideoscale.c:618) ==23412== by 0x4E61352: gst_video_filter_set_caps (gstvideofilter.c:223) ==23412== by 0x50E7C25: gst_base_transform_configure_caps (gstbasetransform.c:1067) ==23412== by 0x50E7C25: gst_base_transform_setcaps (gstbasetransform.c:1386) ==23412== by 0x50E914C: gst_base_transform_sink_eventfunc (gstbasetransform.c:1904) ==23412== Address 0x76ed1c0 is 0 bytes after a block of size 10,304 alloc'd ==23412== at 0x4C28C20: malloc (vg_replace_malloc.c:296) ==23412== by 0x5DE4389: g_malloc (gmem.c:97) ==23412== by 0x4E7616A: resampler_calculate_taps (video-resampler.c:201) ==23412== by 0x4E7616A: gst_video_resampler_init (video-resampler.c:398) ==23412== by 0x4E5EFC1: gst_video_scaler_new (video-scaler.c:215) ==23412== by 0x4E5A3F9: setup_scale (video-converter.c:4042) ==23412== by 0x4E5A3F9: video_converter_lookup_fastpath (video-converter.c:4698) ==23412== by 0x4E5A3F9: gst_video_converter_new (video-converter.c:2117) ==23412== by 0x7D2FF00: gst_video_scale_set_info (gstvideoscale.c:618) ==23412== by 0x4E61352: gst_video_filter_set_caps (gstvideofilter.c:223) ==23412== by 0x50E7C25: gst_base_transform_configure_caps (gstbasetransform.c:1067) ==23412== by 0x50E7C25: gst_base_transform_setcaps (gstbasetransform.c:1386) ==23412== by 0x50E914C: gst_base_transform_sink_eventfunc (gstbasetransform.c:1904) ==23412==
Created attachment 303849 [details] valgrind output test_downscale_641x481_30x111_method_2
Created attachment 303850 [details] test_downscale_641x481_30x111_method_3
commit f4f389483658e23ca7f410cc0633ce3fd358f70c Author: Wim Taymans <wtaymans@redhat.com> Date: Fri Jun 12 16:47:03 2015 +0200 video-scaler: Enforce same taps on Y and UV scalers for merged formats Make sure we have the same number of taps for the Y and UV scalers so that the scalers can be merged correctly. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=749764