GNOME Bugzilla – Bug 748413
xmptag: valgrind errors when printing debug output
Last modified: 2015-04-24 19:28:00 UTC
==20304== Thread 6 queue2-0:src: ==20304== Conditional jump or move depends on uninitialised value(s) ==20304== at 0x4A0BB98: strlen (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==20304== by 0x5ABA1F0: __gst_vasnprintf (vasnprintf.c:557) ==20304== by 0x5ABB19C: __gst_vasprintf (printf.c:154) ==20304== by 0x5A5BAEF: gst_debug_message_get (gstinfo.c:535) ==20304== by 0x5A5C9C9: gst_debug_log_default (gstinfo.c:1041) ==20304== by 0x5A5C18D: gst_debug_log_valist (gstinfo.c:513) ==20304== by 0x5A5C2BA: gst_debug_log (gstinfo.c:445) ==20304== by 0x5306668: gst_tag_list_from_xmp_buffer (gstxmptag.c:1240) ==20304== by 0x8DF5AFE: qtdemux_parse_udta (qtdemux.c:10500) ==20304== by 0x8E01A57: qtdemux_parse_tree (qtdemux.c:10831) ==20304== by 0x8E0DD4E: gst_qtdemux_process_adapter (qtdemux.c:5183) ==20304== by 0x4C2C098: gst_validate_pad_monitor_chain_func (gst-validate-pad-monitor.c:2008) ==20304== by 0x5A67503: gst_pad_chain_data_unchecked (gstpad.c:4038) ==20304== by 0x5A67503: gst_pad_push_data (gstpad.c:4271) ==20304== by 0x4C2C098: gst_validate_pad_monitor_chain_func (gst-validate-pad-monitor.c:2008) ==20304== by 0x5A67503: gst_pad_chain_data_unchecked (gstpad.c:4038) ==20304== by 0x5A67503: gst_pad_push_data (gstpad.c:4271) ==20304== by 0x5A58BA2: gst_proxy_pad_chain_default (gstghostpad.c:126) ==20304== by 0x5A67503: gst_pad_chain_data_unchecked (gstpad.c:4038) ==20304== by 0x5A67503: gst_pad_push_data (gstpad.c:4271) ==20304== by 0x9A8C5C9: gst_queue2_push_one (gstqueue2.c:2691) ==20304== by 0x9A8C5C9: gst_queue2_loop (gstqueue2.c:2797) ==20304== by 0x5A95F00: gst_task_func (gsttask.c:331) ==20304== by 0x3EBB070D67: g_thread_pool_thread_proxy (gthreadpool.c:307) ==20304== ==20304== Conditional jump or move depends on uninitialised value(s) ==20304== at 0x3EB8449C25: vfprintf (vfprintf.c:1642) ==20304== by 0x3EB847089A: vsprintf (iovsprintf.c:42) ==20304== by 0x3EB8453886: sprintf (sprintf.c:32) ==20304== by 0x5ABA52B: __gst_vasnprintf (vasnprintf.c:939) ==20304== by 0x5ABB19C: __gst_vasprintf (printf.c:154) ==20304== by 0x5A5BAEF: gst_debug_message_get (gstinfo.c:535) ==20304== by 0x5A5C9C9: gst_debug_log_default (gstinfo.c:1041) ==20304== by 0x5A5C18D: gst_debug_log_valist (gstinfo.c:513) ==20304== by 0x5A5C2BA: gst_debug_log (gstinfo.c:445) ==20304== by 0x5306668: gst_tag_list_from_xmp_buffer (gstxmptag.c:1240) ==20304== by 0x8DF5AFE: qtdemux_parse_udta (qtdemux.c:10500) ==20304== by 0x8E01A57: qtdemux_parse_tree (qtdemux.c:10831) ==20304== by 0x8E0DD4E: gst_qtdemux_process_adapter (qtdemux.c:5183) ==20304== by 0x4C2C098: gst_validate_pad_monitor_chain_func (gst-validate-pad-monitor.c:2008) ==20304== by 0x5A67503: gst_pad_chain_data_unchecked (gstpad.c:4038) ==20304== by 0x5A67503: gst_pad_push_data (gstpad.c:4271) ==20304== by 0x4C2C098: gst_validate_pad_monitor_chain_func (gst-validate-pad-monitor.c:2008) ==20304== by 0x5A67503: gst_pad_chain_data_unchecked (gstpad.c:4038) ==20304== by 0x5A67503: gst_pad_push_data (gstpad.c:4271) ==20304== by 0x5A58BA2: gst_proxy_pad_chain_default (gstghostpad.c:126) ==20304== by 0x5A67503: gst_pad_chain_data_unchecked (gstpad.c:4038) ==20304== by 0x5A67503: gst_pad_push_data (gstpad.c:4271) ==20304== by 0x9A8C5C9: gst_queue2_push_one (gstqueue2.c:2691) ==20304== by 0x9A8C5C9: gst_queue2_loop (gstqueue2.c:2797) ==20304== ==20304== Conditional jump or move depends on uninitialised value(s) ==20304== at 0x3EB8449C25: vfprintf (vfprintf.c:1642) ==20304== by 0x3EB84536B6: fprintf (fprintf.c:32) ==20304== by 0x5A5CAE3: gst_debug_log_default (gstinfo.c:1041) ==20304== by 0x5A5C18D: gst_debug_log_valist (gstinfo.c:513) ==20304== by 0x5A5C2BA: gst_debug_log (gstinfo.c:445) ==20304== by 0x5306668: gst_tag_list_from_xmp_buffer (gstxmptag.c:1240) ==20304== by 0x8DF5AFE: qtdemux_parse_udta (qtdemux.c:10500) ==20304== by 0x8E01A57: qtdemux_parse_tree (qtdemux.c:10831) ==20304== by 0x8E0DD4E: gst_qtdemux_process_adapter (qtdemux.c:5183) ==20304== by 0x4C2C098: gst_validate_pad_monitor_chain_func (gst-validate-pad-monitor.c:2008) ==20304== by 0x5A67503: gst_pad_chain_data_unchecked (gstpad.c:4038) ==20304== by 0x5A67503: gst_pad_push_data (gstpad.c:4271) ==20304== by 0x4C2C098: gst_validate_pad_monitor_chain_func (gst-validate-pad-monitor.c:2008) ==20304== by 0x5A67503: gst_pad_chain_data_unchecked (gstpad.c:4038) ==20304== by 0x5A67503: gst_pad_push_data (gstpad.c:4271) ==20304== by 0x5A58BA2: gst_proxy_pad_chain_default (gstghostpad.c:126) ==20304== by 0x5A67503: gst_pad_chain_data_unchecked (gstpad.c:4038) ==20304== by 0x5A67503: gst_pad_push_data (gstpad.c:4271) ==20304== by 0x9A8C5C9: gst_queue2_push_one (gstqueue2.c:2691) ==20304== by 0x9A8C5C9: gst_queue2_loop (gstqueue2.c:2797) ==20304== by 0x5A95F00: gst_task_func (gsttask.c:331) ==20304== by 0x3EBB070D67: g_thread_pool_thread_proxy (gthreadpool.c:307) ==20304== by 0x3EBB0703D4: g_thread_proxy (gthread.c:764) ==20304== by 0x3EB8807529: start_thread (pthread_create.c:310)
Created attachment 302290 [details] [review] xmptag: remove GST_DEBUG about the footer 'xps' is not NULL-terminated and so can't be printed as a string. This GST_DEBUG is not really useful so I'm just dropping it. The other option would be to copy it using g_strndup() but I don't think it's worth it. Fix valgrind errors when running the validate.http.transcode.to_vorbis_and_vp8_in_webm.raw_h264_1_mp4 scenario with valgrind and GST_DEBUG=5.
Thanks, pushed: commit 2b0b08b74c614cca8443399d667223b99cbc036f Author: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> Date: Fri Apr 24 14:59:21 2015 +0200 xmptag: fix invalid reads in GST_DEBUG statement Don't try to print a string that is not NUL-terminated. This log line does not really seem useful so let's just drop it. https://bugzilla.gnome.org/show_bug.cgi?id=748413