Bugs item #3541431, was opened at 2012-07-08 12:52 Message generated for change (Tracker Item Submitted) made by maxn You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=478070&aid=3541431...
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: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: max (maxn) Assigned to: Nobody/Anonymous (nobody) Summary: iemnet/tcpclient
Initial Comment: Hi again
I was able to create a patch, that does not make Pd crash reliably, but far more often. On my box it crashes roughly every second time I run the patch.
This is how I run it: $ gdb -ex run --args pd-extended -noprefs -nrt -noaudio -stderr -open crashertest.pd
When the [bng] is hit, every 10ms an OSC message is sent over TCP. After a while (on my box usually only a few seconds), no more messages are received, though they are still sent. If [iemnet/tcpclient] is disconnected at this point, Pd often crashes with the following backtrace:
--- Program received signal SIGSEGV, Segmentation fault. 0x08086e42 in clock_unset (x=0x817f5b8) at m_sched.c:70 70 m_sched.c: No such file or directory. in m_sched.c (gdb) backtrace #0 0x08086e42 in clock_unset (x=0x817f5b8) at m_sched.c:70 #1 0x08086fb2 in clock_free (x=0x817f5b8) at m_sched.c:131 #2 0x00707ce0 in iemnet__receiver_destroy (rec=0x817f4c8) at iemnet_receiver.c:303 #3 0x007022e0 in tcpclient_disconnect (x=0x81042b8) at tcpclient.c:188 #4 0x0807f3f2 in pd_typedmess (x=0x81042b8, s=0x80f11e8, argc=<value optimized out>, argv=0xbffff1fc) at m_class.c:791 #5 0x080807fa in outlet_anything (x=0x8113e70, s=0x80f11e8, argc=0, argv=0xbffff1fc) at m_obj.c:470 #6 0x0807efe6 in pd_typedmess (x=0x8113e5c, s=0x80f11e8, argc=0, argv=0xbffff1fc) at m_class.c:812 #7 0x08085782 in binbuf_eval (x=0x8113e88, target=0x8113e5c, argc=0, argv=0x0) at m_binbuf.c:767 #8 0x0805fe2b in message_bang (x=0x8113e40) at g_text.c:351 #9 0x080804d3 in outlet_bang (x=0x8115bb0) at m_obj.c:399 #10 0x007137eb in delay_tick (x=0x8115b68) at delay.c:43 #11 0x08087414 in sched_tick (next_sys_time=49233920) at m_sched.c:372 #12 0x0808780b in m_pollingscheduler () at m_sched.c:485 #13 m_mainloop () at m_sched.c:571 #14 0x0808f14b in main (argc=7, argv=0xbffff3d4) at s_entry.c:32 ---
This is with Pd-0.43.1-extended-20120307
With Pd-vanilla and the necessary externals, I get the same kind of crash, but a different (corrupt) backtrace:
--- Program received signal SIGSEGV, Segmentation fault. 0x080a1fe5 in clock_unset (x=0x8140768) at m_sched.c:70 70 while (x2->c_next != x) x2 = x2->c_next; (gdb) backtrace #0 0x080a1fe5 in clock_unset (x=0x8140768) at m_sched.c:70 #1 0x080a217c in clock_free (x=0x8140768) at m_sched.c:131 #2 0x00501b79 in iemnet__receiver_destroy () from /usr/local/lib/pd/extra/iemnet/libiemnet.so #3 0x08140768 in ?? () Backtrace stopped: previous frame inner to this frame (corrupt stack?) ---
The fact, that [iemnet/tcpclient] suddenly stops transmitting data, indicates that there is some problem there, whether the crash is caused by it or not.
----------------------------------------------------------------------
You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=478070&aid=3541431...