[PD-dev] [pure-data:bugs] #1247 [bng] Conditional jump or move depends on uninitialised value(s)

Miller Puckette msp at ucsd.edu
Mon May 16 19:20:10 CEST 2016


I get the same thing when making a "clone 1 z2" (for instance, where z2.pd
is an existing patch).  It looks like vagrind doesn't think 'action' was
ever written.  I failed evert o track this down and ended up thinking it
migth be a spurious message somehow.

Changing LB_LOAD from 0 to 21 in g_canvas.h somehow made the message
disappear (but I changed it back for compatibilty :)

M

On Mon, May 16, 2016 at 02:47:44PM +0000, Claude Heiland-Allen wrote:
> 
> 
> 
> ---
> 
> ** [bugs:#1247] [bng] Conditional jump or move depends on uninitialised value(s)**
> 
> **Status:** open
> **Group:** v0.47
> **Created:** Mon May 16, 2016 02:47 PM UTC by Claude Heiland-Allen
> **Last Updated:** Mon May 16, 2016 02:47 PM UTC
> **Owner:** nobody
> 
> 
> pd 0.47-0 on gnu/linux debian jessie
> 
> steps to reproduce:
> 
> $ valgrind pd
> create new patch
> ctrl-1 to create new object box
> type "bng"
> click on the canvas to instantiate the object
> 
> now two errors are reported by valgrind
> 
> note: the error doesn't occur on additional bng objects, only the first
> the error isn't triggered when creating a first bng with ctrl-shift-b
> 
> line 371 of g_bang.c is
> if (action == LB_LOAD && x->x_gui.x_isa.x_loadinit)
> 
> so I guess something might be wrong with x_loadinit initialisation at pd startup?
> not familiar with the gui code so that's just a guess
> 
> $ valgrind pd
> ==18158== Memcheck, a memory error detector
> ==18158== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
> ==18158== Using Valgrind-3.10.0 and LibVEX; rerun with -h for copyright info
> ==18158== Command: pd
> ==18158== 
> ==18158== Conditional jump or move depends on uninitialised value(s)
> ==18158==    at 0x45D357: bng_loadbang (g_bang.c:371)
> ==18158==    by 0x475B9F: pd_typedmess (m_class.c:742)
> ==18158==    by 0x475EC1: pd_vmess (m_class.c:801)
> ==18158==    by 0x424AD8: text_setto (g_text.c:1399)
> ==18158==    by 0x45114C: glist_deselect (g_editor.c:254)
> ==18158==    by 0x4570BA: glist_noselect (g_editor.c:268)
> ==18158==    by 0x4570BA: canvas_doclick (g_editor.c:1476)
> ==18158==    by 0x475B9F: pd_typedmess (m_class.c:742)
> ==18158==    by 0x47EBA6: binbuf_eval (m_binbuf.c:773)
> ==18158==    by 0x489A82: socketreceiver_read (s_inter.c:552)
> ==18158==    by 0x488EB0: sys_domicrosleep.constprop.4 (s_inter.c:190)
> ==18158==    by 0x48556D: m_pollingscheduler (m_sched.c:557)
> ==18158==    by 0x48556D: m_mainloop (m_sched.c:617)
> ==18158==    by 0x6410B44: (below main) (libc-start.c:287)
> ==18158== 
> ==18158== Conditional jump or move depends on uninitialised value(s)
> ==18158==    at 0x45D359: bng_loadbang (g_bang.c:371)
> ==18158==    by 0x475B9F: pd_typedmess (m_class.c:742)
> ==18158==    by 0x475EC1: pd_vmess (m_class.c:801)
> ==18158==    by 0x424AD8: text_setto (g_text.c:1399)
> ==18158==    by 0x45114C: glist_deselect (g_editor.c:254)
> ==18158==    by 0x4570BA: glist_noselect (g_editor.c:268)
> ==18158==    by 0x4570BA: canvas_doclick (g_editor.c:1476)
> ==18158==    by 0x475B9F: pd_typedmess (m_class.c:742)
> ==18158==    by 0x47EBA6: binbuf_eval (m_binbuf.c:773)
> ==18158==    by 0x489A82: socketreceiver_read (s_inter.c:552)
> ==18158==    by 0x488EB0: sys_domicrosleep.constprop.4 (s_inter.c:190)
> ==18158==    by 0x48556D: m_pollingscheduler (m_sched.c:557)
> ==18158==    by 0x48556D: m_mainloop (m_sched.c:617)
> ==18158==    by 0x6410B44: (below main) (libc-start.c:287)
> ==18158== 
> ==18158== 
> ==18158== HEAP SUMMARY:
> ==18158==     in use at exit: 154,530 bytes in 2,983 blocks
> ==18158==   total heap usage: 6,011 allocs, 3,028 frees, 1,887,653 bytes allocated
> ==18158== 
> ==18158== LEAK SUMMARY:
> ==18158==    definitely lost: 2,048 bytes in 32 blocks
> ==18158==    indirectly lost: 544 bytes in 64 blocks
> ==18158==      possibly lost: 42,774 bytes in 1,308 blocks
> ==18158==    still reachable: 109,164 bytes in 1,579 blocks
> ==18158==         suppressed: 0 bytes in 0 blocks
> ==18158== Rerun with --leak-check=full to see details of leaked memory
> ==18158== 
> ==18158== For counts of detected and suppressed errors, rerun with: -v
> ==18158== Use --track-origins=yes to see where uninitialised values come from
> ==18158== ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)
> 
> 
> 
> ---
> 
> Sent from sourceforge.net because pd-dev at lists.iem.at is subscribed to https://sourceforge.net/p/pure-data/bugs/
> 
> To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/pure-data/admin/bugs/options.  Or, if this is a mailing list, you can unsubscribe from the mailing list.


> _______________________________________________
> Pd-dev mailing list
> Pd-dev at lists.iem.at
> https://lists.puredata.info/listinfo/pd-dev




More information about the Pd-dev mailing list