[PD-dev] flext or readanysf SIGABRT

Georg Holzmann grhPD at gmx.at
Sun Aug 28 14:40:53 CEST 2005


Hallo tim!

> can you compile readanysf~ with debugging symbols and link with the
> flext debugging library (libflext-pd_d)?
okay:

now, with debugging symbols, the same patch results in a SEGFAULT:
---------8<------------
Starting program: /usr/bin/pd -path /usr/lib/pd/externs -path abs -lib 
Gem -lib PDContainer -lib zexy -lib iemlib1 -lib iemlib2 main.pd
[Thread debugging using libthread_db enabled]
[New Thread -1209653568 (LWP 29931)]
OSS: requested audio buffer size 8820 limited to 2048
[New Thread -1228325968 (LWP 29962)]
[New Thread -1237460048 (LWP 29963)]
[New Thread -1245848656 (LWP 29964)]
[New Thread -1254237264 (LWP 29965)]
[Thread -1237460048 (LWP 29963) exited]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1209653568 (LWP 29931)]
pd_free (x=0xb7f98218) at m_pd.c:29
29          if (c->c_freemethod) (*(t_gotfn)(c->c_freemethod))(x);
(gdb) bt
#0  pd_free (x=0xb7f98218) at m_pd.c:29
#1  0xb6d0a2d9 in ~flext_base_shared (this=0x81a8e8c) at source/flext.cpp:85
#2  0xb6d0b8a7 in ~flext_dsp_shared (this=0x81a8e8c) at source/fldsp.cpp:74
#3  0xb6d45040 in readanysf::~readanysf ()
    from /usr/lib/pd/externs/readanysf~.pd_linux
#4  0xb6d463f4 in readanysf::__free__ ()
    from /usr/lib/pd/externs/readanysf~.pd_linux
#5  0xb6d0cf27 in flext_obj_shared::obj_free (h=0x81604e8)
     at source/fllib.cpp:499
#6  0x0809f687 in pd_free (x=0x81604e8) at m_pd.c:33
#7  0x080577c9 in glist_delete (x=0x8160398, y=0x81604e8) at g_graph.c:120
#8  0x0805c65c in graph_delete (z=0x8160398, glist=0xb7f98218) at 
g_graph.c:986
#9  0x08081bee in gobj_delete (x=0x81a8e8c, glist=0xb7f98218) at 
g_editor.c:61
#10 0x0805777d in glist_delete (x=0x8186820, y=0x8160398) at g_graph.c:108
#11 0x08080d15 in canvas_doclear (x=0x8186820) at g_editor.c:2051
#12 0x08085607 in canvas_cut (x=0x8186820) at g_editor.c:2073
#13 0x080a07ed in pd_typedmess (x=0x8186820, s=0x81a8e8c, argc=135817248,
     argv=0x433f0000) at m_class.c:728
#14 0x080a06b6 in pd_typedmess (x=0x8162268, s=0x81a8e8c, argc=0,
     argv=0x80f92a8) at m_class.c:749
#15 0x080a3b94 in binbuf_eval (x=0xb7f98218, target=0x8162268, argc=0,
     argv=0x0) at m_binbuf.c:574
#16 0x080abfc0 in socketreceiver_read (x=0x8114e98, fd=0) at s_inter.c:539
#17 0x080adc8f in sys_domicrosleep (microsec=-1208385000, pollem=1)
     at s_inter.c:180
#18 0x080ad8ce in sys_pollgui () at s_inter.c:822
#19 0x080a8878 in m_scheduler () at m_sched.c:466
#20 0x080b32cb in main (argc=-1208385000, argv=0xb7f98218) at s_entry.c:27
(gdb)
--------->8---------

anyway, if I only make 3 readanysf~ in an empty patch, and then delete 
them, I get the following messages:

-----8<----------
(gdb) run -stderr -path /usr/lib/pd/externs
Starting program: /usr/bin/pd -stderr -path /usr/lib/pd/externs
[Thread debugging using libthread_db enabled]
[New Thread -1209653568 (LWP 30378)]
OSS: requested audio buffer size 8820 limited to 2048
[New Thread -1211216976 (LWP 30416)]
flext - minimum thread priority reached
[New Thread -1219871824 (LWP 30417)]
flext - minimum thread priority reached
[New Thread -1228260432 (LWP 30418)]
[New Thread -1236915280 (LWP 30421)]
flext - minimum thread priority reached
[New Thread -1245570128 (LWP 30423)]
flext - minimum thread priority reached
flext - INTERNAL ERROR: Thread not found!
[Thread -1219871824 (LWP 30417) exited]
flext - INTERNAL ERROR: Thread not found!
[Thread -1236915280 (LWP 30421) exited]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1245570128 (LWP 30423)]
0xb7fa7093 in __pthread_mutex_cond_lock () from /lib/tls/libpthread.so.0
(gdb) bt
#0  0xb7fa7093 in __pthread_mutex_cond_lock () from /lib/tls/libpthread.so.0
#1  0xb7fa2beb in pthread_cond_wait@@GLIBC_2.3.2 ()
    from /lib/tls/libpthread.so.0
#2  0xb7e2945a in flext_shared::ThrCond::Wait (this=0x8152fd4)
     at source/flthr.cpp:608
#3  0xb7e5bc83 in readanysf::m_child ()
    from /usr/lib/pd/externs/readanysf~.pd_linux
#4  0xb7e5c5bf in readanysf::flext_t_m_child ()
    from /usr/lib/pd/externs/readanysf~.pd_linux
#5  0xb7e2875b in LaunchHelper (e=0x811708c) at source/flthr.cpp:110
#6  0xb7fa0ccd in start_thread () from /lib/tls/libpthread.so.0
#7  0xb7f34b0e in clone () from /lib/tls/libc.so.6
(gdb)
------->8---------

what is maybe important:
I use pd0.39-0test6, but had to compile against the header files of 
pd-0.38-4 (because of the "template" stuff ...)

LG
Georg




More information about the Pd-dev mailing list