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 748413 - xmptag: valgrind errors when printing debug output
xmptag: valgrind errors when printing debug output
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other Linux
: Normal normal
: 1.5.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-04-24 12:47 UTC by Guillaume Desmottes
Modified: 2015-04-24 19:28 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
xmptag: remove GST_DEBUG about the footer (1.17 KB, patch)
2015-04-24 13:01 UTC, Guillaume Desmottes
committed Details | Review

Description Guillaume Desmottes 2015-04-24 12:47:12 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)
Comment 1 Guillaume Desmottes 2015-04-24 13:01:24 UTC
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.
Comment 2 Tim-Philipp Müller 2015-04-24 19:19:44 UTC
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