[PD-dev] [ pure-data-Bugs-3488995 ] playlist crash with "location" message

SourceForge.net noreply at sourceforge.net
Sat Feb 18 13:34:08 CET 2012


Bugs item #3488995, was opened at 2012-02-18 04:34
Message generated for change (Tracker Item Submitted) made by deme-x
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=478070&aid=3488995&group_id=55736

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: externals
Group: v0.43
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Santi (deme-x)
Assigned to: Nobody/Anonymous (nobody)
Summary: playlist crash with "location" message

Initial Comment:
Pd-extended crash with segmentation fault when i send a "location" message to playlist.

Using pd-extended 0.43.1~cvs20120217-1 build night in Debian Wheezy i386. 

My machine is a Dell XPS L502X: Intel Core i7-2630QM processor 2.00 GHz, 8GB RAM, 2GB NVIDIA GeForce GT 540M Graphics card

This is the output from valgrind:

root at video:/home/santi# valgrind pd-extended playlist-help.pd
==8095== Memcheck, a memory error detector
==8095== Copyright (C) 2002-2010, and GNU GPL'd, by Julian Seward et al.
==8095== Using Valgrind-3.6.1 and LibVEX; rerun with -h for copyright info
==8095== Command: pd-extended playlist-help.pd
==8095== 
==8095== Invalid read of size 1
==8095==    at 0x4315AA6: vfprintf (vfprintf.c:1620)
==8095==    by 0x433833B: vsprintf (iovsprintf.c:43)
==8095==    by 0x431E28A: sprintf (sprintf.c:34)
==8095==    by 0x80B0FF5: alsa_getdevs (s_audio_alsa.c:876)
==8095==  Address 0x4530370 is 40 bytes inside a block of size 376 free'd
==8095==    at 0x402421C: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==8095==    by 0x40929EA: snd_ctl_card_info_free (in /usr/lib/i386-linux-gnu/libasound.so.2.0.0)
==8095== 
==8095== Invalid read of size 1
==8095==    at 0x4343760: _IO_default_xsputn (genops.c:480)
==8095==    by 0x4315971: vfprintf (vfprintf.c:1620)
==8095==    by 0x433833B: vsprintf (iovsprintf.c:43)
==8095==    by 0x431E28A: sprintf (sprintf.c:34)
==8095==    by 0x80B0FF5: alsa_getdevs (s_audio_alsa.c:876)
==8095==  Address 0x4530370 is 40 bytes inside a block of size 376 free'd
==8095==    at 0x402421C: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==8095==    by 0x40929EA: snd_ctl_card_info_free (in /usr/lib/i386-linux-gnu/libasound.so.2.0.0)
==8095== 
==8095== Invalid read of size 1
==8095==    at 0x434376D: _IO_default_xsputn (genops.c:479)
==8095==    by 0x4315971: vfprintf (vfprintf.c:1620)
==8095==    by 0x433833B: vsprintf (iovsprintf.c:43)
==8095==    by 0x431E28A: sprintf (sprintf.c:34)
==8095==    by 0x80B0FF5: alsa_getdevs (s_audio_alsa.c:876)
==8095==  Address 0x4530372 is 42 bytes inside a block of size 376 free'd
==8095==    at 0x402421C: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==8095==    by 0x40929EA: snd_ctl_card_info_free (in /usr/lib/i386-linux-gnu/libasound.so.2.0.0)
==8095== 
==8095== Invalid read of size 1
==8095==    at 0x4315AA6: vfprintf (vfprintf.c:1620)
==8095==    by 0x433833B: vsprintf (iovsprintf.c:43)
==8095==    by 0x431E28A: sprintf (sprintf.c:34)
==8095==    by 0x80B100F: alsa_getdevs (s_audio_alsa.c:877)
==8095==    by 0x65746E48: ???
==8095==  Address 0x4530370 is 40 bytes inside a block of size 376 free'd
==8095==    at 0x402421C: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==8095==    by 0x40929EA: snd_ctl_card_info_free (in /usr/lib/i386-linux-gnu/libasound.so.2.0.0)
==8095== 
==8095== Invalid read of size 1
==8095==    at 0x4315AA6: vfprintf (vfprintf.c:1620)
==8095==    by 0x433833B: vsprintf (iovsprintf.c:43)
==8095==    by 0x431E28A: sprintf (sprintf.c:34)
==8095==    by 0x80B1023: alsa_getdevs (s_audio_alsa.c:878)
==8095==    by 0x65746E48: ???
==8095==  Address 0x4530370 is 40 bytes inside a block of size 376 free'd
==8095==    at 0x402421C: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==8095==    by 0x40929EA: snd_ctl_card_info_free (in /usr/lib/i386-linux-gnu/libasound.so.2.0.0)
==8095== 
==8095== Invalid read of size 1
==8095==    at 0x4315AA6: vfprintf (vfprintf.c:1620)
==8095==    by 0x433833B: vsprintf (iovsprintf.c:43)
==8095==    by 0x431E28A: sprintf (sprintf.c:34)
==8095==    by 0x80B103F: alsa_getdevs (s_audio_alsa.c:879)
==8095==    by 0x65746E48: ???
==8095==  Address 0x4530370 is 40 bytes inside a block of size 376 free'd
==8095==    at 0x402421C: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==8095==    by 0x40929EA: snd_ctl_card_info_free (in /usr/lib/i386-linux-gnu/libasound.so.2.0.0)
==8095== 
Pd-0.43.1 ("extended-20120217") compiled 12:26:24 Feb 17 2012
port 5401
TCL_LIBRARY="/usr/lib/pd-extended/lib/tcl/library" TK_LIBRARY="/usr/lib/pd-extended/lib/tk/library"   wish "/usr/lib/pd-extended/tcl//pd-gui.tcl" 5401
priority 6 scheduling enabled.
Waiting for connection request... 
priority 8 scheduling enabled.
/usr/lib/pd-extended/bin/pd-watchdog
... connected
snd_pcm_open (input): Device or resource busy
snd_pcm_open (output): Device or resource busy
open: /etc/pd/gem.conf: No such file or directory
open: /root/.pd/gem.conf: No such file or directory
open: ./gem.conf: No such file or directory
==8095== Invalid write of size 1
==8095==    at 0x7091D54: playlist_new (playlist.c:893)
==8095==    by 0x8082425: pd_typedmess (m_class.c:714)
==8095==    by 0x80824EA: new_anything (m_class.c:571)
==8095==    by 0x8081F3C: pd_typedmess (m_class.c:812)
==8095==    by 0x80626B4: canvas_objtext (g_text.c:96)
==8095==    by 0x8063A54: canvas_obj (g_text.c:193)
==8095==    by 0x8082079: pd_typedmess (m_class.c:715)
==8095==    by 0x8088C31: binbuf_evalfile (m_binbuf.c:1529)
==8095==    by 0x8088CD2: glob_evalfile (m_binbuf.c:1545)
==8095==    by 0x808AE59: openit (s_main.c:195)
==8095==    by 0x808B1C1: glob_initfromgui (s_main.c:254)
==8095==    by 0x8082079: pd_typedmess (m_class.c:715)
==8095==  Address 0x703c957 is 0 bytes after a block of size 39 alloc'd
==8095==    at 0x4023796: calloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==8095==    by 0x808419C: getbytes (m_memory.c:24)
==8095==    by 0x8082425: pd_typedmess (m_class.c:714)
==8095==    by 0x80824EA: new_anything (m_class.c:571)
==8095==    by 0x8081F3C: pd_typedmess (m_class.c:812)
==8095==    by 0x80626B4: canvas_objtext (g_text.c:96)
==8095==    by 0x8063A54: canvas_obj (g_text.c:193)
==8095==    by 0x8082079: pd_typedmess (m_class.c:715)
==8095==    by 0x8088C31: binbuf_evalfile (m_binbuf.c:1529)
==8095==    by 0x8088CD2: glob_evalfile (m_binbuf.c:1545)
==8095==    by 0x808AE59: openit (s_main.c:195)
==8095==    by 0x808B1C1: glob_initfromgui (s_main.c:254)
==8095== 
==8095== Invalid read of size 1
==8095==    at 0x4315AA6: vfprintf (vfprintf.c:1620)
==8095==    by 0x433A0EF: vsnprintf (vsnprintf.c:120)
==8095==    by 0x808CE51: sys_vgui (s_inter.c:661)
==8095==    by 0x708FB7D: playlist_draw_new (playlist.c:355)
==8095==    by 0x7090E33: playlist_graphics (playlist.c:616)
==8095==    by 0x8082311: pd_typedmess (m_class.c:791)
==8095==  Address 0x703c957 is 0 bytes after a block of size 39 alloc'd
==8095==    at 0x4023796: calloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==8095==    by 0x808419C: getbytes (m_memory.c:24)
==8095==    by 0x8082425: pd_typedmess (m_class.c:714)
==8095==    by 0x80824EA: new_anything (m_class.c:571)
==8095==    by 0x8081F3C: pd_typedmess (m_class.c:812)
==8095==    by 0x80626B4: canvas_objtext (g_text.c:96)
==8095==    by 0x8063A54: canvas_obj (g_text.c:193)
==8095==    by 0x8082079: pd_typedmess (m_class.c:715)
==8095==    by 0x8088C31: binbuf_evalfile (m_binbuf.c:1529)
==8095==    by 0x8088CD2: glob_evalfile (m_binbuf.c:1545)
==8095==    by 0x808AE59: openit (s_main.c:195)
==8095==    by 0x808B1C1: glob_initfromgui (s_main.c:254)
==8095== 
==8095== Syscall param open(filename) points to unaddressable byte(s)
==8095==    at 0x4397993: __open_nocancel (syscall-template.S:82)
==8095==    by 0x436DAC1: scandir (scandir.c:62)
==8095==    by 0x708EFF0: playlist_update_dir (playlist.c:215)
==8095==    by 0x708FB7D: playlist_draw_new (playlist.c:355)
==8095==    by 0x7090E33: playlist_graphics (playlist.c:616)
==8095==    by 0x8082311: pd_typedmess (m_class.c:791)
==8095==  Address 0x703c957 is 0 bytes after a block of size 39 alloc'd
==8095==    at 0x4023796: calloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==8095==    by 0x808419C: getbytes (m_memory.c:24)
==8095==    by 0x8082425: pd_typedmess (m_class.c:714)
==8095==    by 0x80824EA: new_anything (m_class.c:571)
==8095==    by 0x8081F3C: pd_typedmess (m_class.c:812)
==8095==    by 0x80626B4: canvas_objtext (g_text.c:96)
==8095==    by 0x8063A54: canvas_obj (g_text.c:193)
==8095==    by 0x8082079: pd_typedmess (m_class.c:715)
==8095==    by 0x8088C31: binbuf_evalfile (m_binbuf.c:1529)
==8095==    by 0x8088CD2: glob_evalfile (m_binbuf.c:1545)
==8095==    by 0x808AE59: openit (s_main.c:195)
==8095==    by 0x808B1C1: glob_initfromgui (s_main.c:254)
==8095== 
==8095== Invalid read of size 1
==8095==    at 0x40259B5: strcpy (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==8095==    by 0x7092042: playlist_location (playlist.c:970)
==8095==    by 0x80822DA: pd_typedmess (m_class.c:793)
==8095==  Address 0x703c957 is 0 bytes after a block of size 39 alloc'd
==8095==    at 0x4023796: calloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==8095==    by 0x808419C: getbytes (m_memory.c:24)
==8095==    by 0x8082425: pd_typedmess (m_class.c:714)
==8095==    by 0x80824EA: new_anything (m_class.c:571)
==8095==    by 0x8081F3C: pd_typedmess (m_class.c:812)
==8095==    by 0x80626B4: canvas_objtext (g_text.c:96)
==8095==    by 0x8063A54: canvas_obj (g_text.c:193)
==8095==    by 0x8082079: pd_typedmess (m_class.c:715)
==8095==    by 0x8088C31: binbuf_evalfile (m_binbuf.c:1529)
==8095==    by 0x8088CD2: glob_evalfile (m_binbuf.c:1545)
==8095==    by 0x808AE59: openit (s_main.c:195)
==8095==    by 0x808B1C1: glob_initfromgui (s_main.c:254)
==8095== 
==8095== Invalid write of size 1
==8095==    at 0x4025C03: strncpy (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==8095==    by 0x709212B: playlist_location (playlist.c:993)
==8095==    by 0x80822DA: pd_typedmess (m_class.c:793)
==8095==  Address 0x703c957 is 0 bytes after a block of size 39 alloc'd
==8095==    at 0x4023796: calloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==8095==    by 0x808419C: getbytes (m_memory.c:24)
==8095==    by 0x8082425: pd_typedmess (m_class.c:714)
==8095==    by 0x80824EA: new_anything (m_class.c:571)
==8095==    by 0x8081F3C: pd_typedmess (m_class.c:812)
==8095==    by 0x80626B4: canvas_objtext (g_text.c:96)
==8095==    by 0x8063A54: canvas_obj (g_text.c:193)
==8095==    by 0x8082079: pd_typedmess (m_class.c:715)
==8095==    by 0x8088C31: binbuf_evalfile (m_binbuf.c:1529)
==8095==    by 0x8088CD2: glob_evalfile (m_binbuf.c:1545)
==8095==    by 0x808AE59: openit (s_main.c:195)
==8095==    by 0x808B1C1: glob_initfromgui (s_main.c:254)
==8095== 
==8095== Invalid write of size 1
==8095==    at 0x4025BF8: strncpy (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==8095==    by 0x709212B: playlist_location (playlist.c:993)
==8095==    by 0x80822DA: pd_typedmess (m_class.c:793)
==8095==  Address 0x703c959 is 2 bytes after a block of size 39 alloc'd
==8095==    at 0x4023796: calloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==8095==    by 0x808419C: getbytes (m_memory.c:24)
==8095==    by 0x8082425: pd_typedmess (m_class.c:714)
==8095==    by 0x80824EA: new_anything (m_class.c:571)
==8095==    by 0x8081F3C: pd_typedmess (m_class.c:812)
==8095==    by 0x80626B4: canvas_objtext (g_text.c:96)
==8095==    by 0x8063A54: canvas_obj (g_text.c:193)
==8095==    by 0x8082079: pd_typedmess (m_class.c:715)
==8095==    by 0x8088C31: binbuf_evalfile (m_binbuf.c:1529)
==8095==    by 0x8088CD2: glob_evalfile (m_binbuf.c:1545)
==8095==    by 0x808AE59: openit (s_main.c:195)
==8095==    by 0x808B1C1: glob_initfromgui (s_main.c:254)
==8095== 
==8095== 
==8095== Process terminating with default action of signal 11 (SIGSEGV)
==8095==  Bad permissions for mapped region at address 0x703D000
==8095==    at 0x4025C03: strncpy (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==8095==    by 0x709212B: playlist_location (playlist.c:993)
==8095==    by 0x80822DA: pd_typedmess (m_class.c:793)
==8095== 
==8095== HEAP SUMMARY:
==8095==     in use at exit: 1,362,981 bytes in 8,042 blocks
==8095==   total heap usage: 13,707 allocs, 5,665 frees, 21,424,473 bytes allocated
==8095== 
==8095== LEAK SUMMARY:
==8095==    definitely lost: 1,556 bytes in 24 blocks
==8095==    indirectly lost: 4,573 bytes in 167 blocks
==8095==      possibly lost: 452,642 bytes in 1,283 blocks
==8095==    still reachable: 904,210 bytes in 6,568 blocks
==8095==         suppressed: 0 bytes in 0 blocks
==8095== Rerun with --leak-check=full to see details of leaked memory
==8095== 
==8095== For counts of detected and suppressed errors, rerun with: -v
==8095== ERROR SUMMARY: 1415 errors from 12 contexts (suppressed: 287 from 12)
Terminado (killed)


----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=478070&aid=3488995&group_id=55736



More information about the Pd-dev mailing list