flvmux: invalid read
Job #741783 failed for 35889d0f216628f1394e31feae611612a35965c0:
test_audio_caps_change_streamable.valgrind:
| ==3313== Memcheck, a memory error detector
| ==3313== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
| ==3313== Using Valgrind-3.15.0 and LibVEX; rerun with -h for copyright info
| ==3313== Command: /builds/vivia/gstreamer/gst-build/build/subprojects/gst-plugins-good/tests/check/elements_flvmux
| ==3313== Parent PID: 22
| ==3313==
| ==3355== Thread 2 flvmux0:src:
| ==3355== Invalid write of size 8
| ==3355== at 0x682D0C2: gst_flv_mux_write_buffer (gstflvmux.c:1598)
| ==3355== by 0x682D0C2: gst_flv_mux_aggregate (gstflvmux.c:1908)
| ==3355== by 0x693AAB2: gst_aggregator_aggregate_func (gstaggregator.c:1241)
| ==3355== by 0x490172E: gst_task_func (gsttask.c:328)
| ==3355== by 0x4A49F13: g_thread_pool_thread_proxy (gthreadpool.c:308)
| ==3355== by 0x4A494E1: g_thread_proxy (gthread.c:805)
| ==3355== by 0x4EE15A1: start_thread (pthread_create.c:486)
| ==3355== by 0x4C4D162: clone (clone.S:95)
| ==3355== Address 0x6011cc8 is 1,064 bytes inside a block of size 1,104 free'd
| ==3355== at 0x483DA0C: free (vg_replace_malloc.c:540)
| ==3355== by 0x4A25D8C: g_free (gmem.c:192)
| ==3355== by 0x4A3E6C3: g_slice_free1 (gslice.c:1135)
| ==3355== by 0x4B2D345: g_type_free_instance (gtype.c:1936)
| ==3355== by 0x48AF46C: gst_element_remove_pad (gstelement.c:908)
| ==3355== by 0x499E258: gst_harness_teardown (gstharness.c:1073)
| ==3355== by 0x404128: test_audio_caps_change_streamable (flvmux.c:759)
| ==3355== by 0x49A6904: tcase_run_tfun_fork (check_run.c:465)
| ==3355== by 0x49A6904: srunner_iterate_tcase_tfuns (check_run.c:237)
| ==3355== by 0x49A6904: srunner_run_tcase (check_run.c:377)
| ==3355== by 0x49A6904: srunner_iterate_suites (check_run.c:205)
| ==3355== by 0x49A6904: srunner_run_tagged (check_run.c:740)
| ==3355== by 0x499B0BE: gst_check_run_suite (gstcheck.c:1094)
| ==3355== by 0x4025D1: main (flvmux.c:1066)
| ==3355== Block was alloc'd at
| ==3355== at 0x483C80B: malloc (vg_replace_malloc.c:309)
| ==3355== by 0x4A25C98: g_malloc (gmem.c:99)
| ==3355== by 0x4A3DFB5: g_slice_alloc (gslice.c:1024)
| ==3355== by 0x4A3E5DD: g_slice_alloc0 (gslice.c:1050)
| ==3355== by 0x4B2CF79: g_type_create_instance (gtype.c:1836)
| ==3355== by 0x4B0F42C: g_object_new_internal (gobject.c:1805)
| ==3355== by 0x4B11347: g_object_new_valist (gobject.c:2128)
| ==3355== by 0x4B1169C: g_object_new (gobject.c:1648)
| ==3355== by 0x693C63A: gst_aggregator_default_create_new_pad (gstaggregator.c:1845)
| ==3355== by 0x682DB4F: gst_flv_mux_create_new_pad (gstflvmux.c:704)
| ==3355== by 0x69399F6: gst_aggregator_request_new_pad (gstaggregator.c:1877)
| ==3355== by 0x48AFC6E: _gst_element_request_pad (gstelement.c:1149)
| ==3355== by 0x499D33A: gst_harness_link_element_sinkpad (gstharness.c:544)
| ==3355== by 0x499D33A: gst_harness_setup_src_pad (gstharness.c:572)
| ==3355== by 0x499ECFF: gst_harness_add_element_full (gstharness.c:742)
| ==3355== by 0x499F2CB: gst_harness_new_full (gstharness.c:816)
| ==3355== by 0x403D73: test_audio_caps_change_streamable (flvmux.c:669)
| ==3355== by 0x49A6904: tcase_run_tfun_fork (check_run.c:465)
| ==3355== by 0x49A6904: srunner_iterate_tcase_tfuns (check_run.c:237)
| ==3355== by 0x49A6904: srunner_run_tcase (check_run.c:377)
| ==3355== by 0x49A6904: srunner_iterate_suites (check_run.c:205)
| ==3355== by 0x49A6904: srunner_run_tagged (check_run.c:740)
| ==3355== by 0x499B0BE: gst_check_run_suite (gstcheck.c:1094)
| ==3355== by 0x4025D1: main (flvmux.c:1066)
| ==3355==
| {
| <insert_a_suppression_name_here>
| Memcheck:Addr8
| fun:gst_flv_mux_write_buffer
| fun:gst_flv_mux_aggregate
| fun:gst_aggregator_aggregate_func
| fun:gst_task_func
| fun:g_thread_pool_thread_proxy
| fun:g_thread_proxy
| fun:start_thread
| fun:clone
| }
| ==3355==
| ==3355== HEAP SUMMARY:
| ==3355== in use at exit: 322,278 bytes in 1,732 blocks
| ==3355== total heap usage: 42,815 allocs, 41,083 frees, 56,820,420 bytes allocated
| ==3355==
| ==3355== LEAK SUMMARY:
| ==3355== definitely lost: 0 bytes in 0 blocks
| ==3355== indirectly lost: 0 bytes in 0 blocks
| ==3355== possibly lost: 0 bytes in 0 blocks
| ==3355== still reachable: 13,932 bytes in 61 blocks
| ==3355== of which reachable via heuristic:
| ==3355== length64 : 120 bytes in 3 blocks
| ==3355== newarray : 1,568 bytes in 18 blocks
| ==3355== suppressed: 302,002 bytes in 1,619 blocks
| ==3355== Reachable blocks (those to which a pointer was found) are not shown.
| ==3355== To see them, rerun with: --leak-check=full --show-leak-kinds=all
| ==3355==
| ==3355== For lists of detected and suppressed errors, rerun with: -s
| ==3355== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
| ==3313==
| ==3313== HEAP SUMMARY:
| ==3313== in use at exit: 280,837 bytes in 1,301 blocks
| ==3313== total heap usage: 40,189 allocs, 38,888 frees, 56,637,415 bytes allocated
| ==3313==
| ==3313== LEAK SUMMARY:
| ==3313== definitely lost: 0 bytes in 0 blocks
| ==3313== indirectly lost: 0 bytes in 0 blocks
| ==3313== possibly lost: 0 bytes in 0 blocks
| ==3313== still reachable: 314 bytes in 4 blocks
| ==3313== of which reachable via heuristic:
| ==3313== length64 : 80 bytes in 2 blocks
| ==3313== newarray : 1,552 bytes in 17 blocks
| ==3313== suppressed: 276,683 bytes in 1,263 blocks
| ==3313== Reachable blocks (those to which a pointer was found) are not shown.
| ==3313== To see them, rerun with: --leak-check=full --show-leak-kinds=all
| ==3313==
| ==3313== For lists of detected and suppressed errors, rerun with: -s
| ==3313== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
(from: gstreamer!299 (merged) )
Edited by Tim-Philipp Müller