On Mon, 2017-10-02 at 13:14 +0200, Dan Wilcox wrote: > If you want more info, you can compile pd with debugging symbols > added via: > > ./configure --enable-debug CFLAGS="-g" > > I'm going to add the "-g" back to the default debug settings as it's > needed for useful stack frame info, etc. > > If you have the Xcode command line tools installed (not the Xcode > app!), you can use lldb for similar info: http://lldb.llvm.org/lldb- > gdb.html. It can give you the exact location in the code where the > crash occurred.
Thanks, Dan. Just in case this is useful to anyone, here is the backtrace on macOS: $ lldb -- pd -stderr -rt -jack -jackname tpf-client-1 -nojackconnect -inchannels 8 -outchannels 64 -open /Users/itz/pd-src/tpf/pd-tools/tpf-client.pd (lldb) target create "pd" Current executable set to 'pd' (x86_64). (lldb) settings set -- target.run-args "-stderr" "-rt" "-jack" "-jackname" "tpf-client-1" "-nojackconnect" "-inchannels" "8" "-outchannels" "64" "-open" "/Users/itz/pd-src/tpf/pd-tools/tpf-client.pd" (lldb) run Process 28469 launched: '/usr/local/bin/pd' (x86_64) Pt_Start() called slipenc: maximum packet length is 16384 iemnet - networking with Pd: [tcpclient] compiled on Dec 14 2015 at 14:29:01 copyright © 2010-2015 IOhannes m zmoelnig, IEM based on mrpeach/net, based on maxlib slipdec: maximum packet length is 16384 iemnet - networking with Pd: [udpclient] compiled on Dec 14 2015 at 14:29:01 copyright © 2010-2015 IOhannes m zmoelnig, IEM based on mrpeach/net, based on maxlib pd(28469,0x7fff79118000) malloc: *** error for object 0x1020f0c08: incorrect checksum for freed object - object was probably modified after being freed. *** set a breakpoint in malloc_error_break to debug Process 28469 stopped * thread #1: tid = 0x1c38a, 0x00007fff97b02f06 libsystem_kernel.dylib`__pthread_kill + 10, queue = 'com.apple.main-thread', stop reason = signal SIGABRT frame #0: 0x00007fff97b02f06 libsystem_kernel.dylib`__pthread_kill + 10 libsystem_kernel.dylib`__pthread_kill: -> 0x7fff97b02f06 <+10>: jae 0x7fff97b02f10 ; <+20> 0x7fff97b02f08 <+12>: movq %rax, %rdi 0x7fff97b02f0b <+15>: jmp 0x7fff97afd7cd ; cerror_nocancel 0x7fff97b02f10 <+20>: retq (lldb) bt * thread #1: tid = 0x1c38a, 0x00007fff97b02f06 libsystem_kernel.dylib`__pthread_kill + 10, queue = 'com.apple.main-thread', stop reason = signal SIGABRT * frame #0: 0x00007fff97b02f06 libsystem_kernel.dylib`__pthread_kill + 10 frame #1: 0x00007fff8eb604ec libsystem_pthread.dylib`pthread_kill + 90 frame #2: 0x00007fff99dee6df libsystem_c.dylib`abort + 129 frame #3: 0x00007fff8909b396 libsystem_malloc.dylib`szone_error + 626 frame #4: 0x00007fff89091373 libsystem_malloc.dylib`small_free_list_remove_ptr + 152 frame #5: 0x00007fff8908fa7c libsystem_malloc.dylib`szone_free_definite_size + 1790 frame #6: 0x000000010007f28c pd`freebytes(fatso=0x00000001020cae00, nbytes=2048) + 44 at m_memory.c:79 frame #7: 0x000000010001f069 pd`signal_cleanup + 105 at d_ugen.c:398 frame #8: 0x000000010001f669 pd`ugen_stop + 89 at d_ugen.c:597 frame #9: 0x000000010002d62e pd`canvas_stop_dsp + 30 at g_canvas.c:1165 frame #10: 0x000000010002cad8 pd`canvas_suspend_dsp + 40 at g_canvas.c:1181 frame #11: 0x000000010001eaf0 pd`block_set(x=0x000000010041bd40, fcalcsize=384, foverlap=1, fupsample=1) + 48 at d_ugen.c:175 frame #12: 0x000000010007d671 pd`pd_typedmess(x=0x000000010041bd40, s=0x000000010030bc60, argc=0, argv=0x00007fff5fbedcf0) + 1425 at m_class.c:960 frame #13: 0x00000001000805bf pd`outlet_anything(x=0x000000010041c470, s=0x000000010030bc60, argc=3, argv=0x00007fff5fbedcc0) + 111 at m_obj.c:422 frame #14: 0x00000001000620bf pd`messresponder_anything(x=0x000000010041c7d0, s=0x000000010030bc60, argc=3, argv=0x00007fff5fbedcc0) + 47 at g_text.c:339 frame #15: 0x000000010007d832 pd`pd_typedmess(x=0x000000010041c7d0, s=0x000000010030bc60, argc=3, argv=0x00007fff5fbedcc0) + 1874 at m_class.c:981 frame #16: 0x000000010007696f pd`binbuf_eval(x=0x000000010041c680, target=0x000000010041c7d0, argc=1, argv=0x00007fff5fbee820) + 2079 at m_binbuf.c:773 frame #17: 0x0000000100061c4e pd`message_list(x=0x000000010041c7a0, s=0x00000001001221b0, argc=1, argv=0x00007fff5fbee820) + 62 at g_text.c:363 frame #18: 0x000000010008221d pd`pd_list(x=0x000000010041c7a0, s=0x00000001001221b0, argc=1, argv=0x00007fff5fbee820) + 77 at m_pd.c:288 frame #19: 0x000000010008051f pd`outlet_list(x=0x000000010041c740, s=0x00000001001221b0, argc=1, argv=0x00007fff5fbee820) + 111 at m_obj.c:411 frame #20: 0x00000001000a143d pd`trigger_list(x=0x000000010041c6d0, s=0x00000001001221b0, argc=1, argv=0x00007fff5fbee820) + 413 at x_connective.c:1033 frame #21: 0x000000010008221d pd`pd_list(x=0x000000010041c6d0, s=0x00000001001221b0, argc=1, argv=0x00007fff5fbee820) + 77 at m_pd.c:288 frame #22: 0x000000010008051f pd`outlet_list(x=0x000000010041c600, s=0x00000001001221b0, argc=1, argv=0x00007fff5fbee820) + 111 at m_obj.c:411 frame #23: 0x000000010004862f pd`vinlet_list(x=0x000000010041c510, s=0x00000001001221b0, argc=1, argv=0x00007fff5fbee820) + 47 at g_io.c:76 frame #24: 0x000000010008221d pd`pd_list(x=0x000000010041c510, s=0x00000001001221b0, argc=1, argv=0x00007fff5fbee820) + 77 at m_pd.c:288 frame #25: 0x000000010007fee3 pd`inlet_list(x=0x000000010041c5d0, s=0x00000001001221b0, argc=1, argv=0x00007fff5fbee820) + 179 at m_obj.c:142 frame #26: 0x000000010008221d pd`pd_list(x=0x000000010041c5d0, s=0x00000001001221b0, argc=1, argv=0x00007fff5fbee820) + 77 at m_pd.c:288 frame #27: 0x000000010008051f pd`outlet_list(x=0x000000010041d8f0, s=0x00000001001221b0, argc=1, argv=0x00007fff5fbee820) + 111 at m_obj.c:411 frame #28: 0x00000001000a143d pd`trigger_list(x=0x000000010041d870, s=0x00000001001221b0, argc=1, argv=0x00007fff5fbee820) + 413 at x_connective.c:1033 frame #29: 0x000000010008221d pd`pd_list(x=0x000000010041d870, s=0x00000001001221b0, argc=1, argv=0x00007fff5fbee820) + 77 at m_pd.c:288 frame #30: 0x000000010008051f pd`outlet_list(x=0x000000010041d600, s=0x00000001001221b0, argc=1, argv=0x00007fff5fbee820) + 111 at m_obj.c:411 frame #31: 0x000000010004862f pd`vinlet_list(x=0x000000010041d510, s=0x00000001001221b0, argc=1, argv=0x00007fff5fbee820) + 47 at g_io.c:76 frame #32: 0x000000010008221d pd`pd_list(x=0x000000010041d510, s=0x00000001001221b0, argc=1, argv=0x00007fff5fbee820) + 77 at m_pd.c:288 frame #33: 0x000000010007fee3 pd`inlet_list(x=0x000000010041d5d0, s=0x00000001001221b0, argc=1, argv=0x00007fff5fbee820) + 179 at m_obj.c:142 frame #34: 0x000000010008221d pd`pd_list(x=0x000000010041d5d0, s=0x0000000000000000, argc=1, argv=0x00007fff5fbee820) + 77 at m_pd.c:288 frame #35: 0x000000010008051f pd`outlet_list(x=0x000000010041e380, s=0x0000000000000000, argc=1, argv=0x00007fff5fbee820) + 111 at m_obj.c:411 frame #36: 0x000000010009f11f pd`route_anything(x=0x000000010041e2f0, sel=0x000000010032fc50, argc=1, argv=0x00007fff5fbee820) + 191 at x_connective.c:529 frame #37: 0x000000010007d832 pd`pd_typedmess(x=0x000000010041e2f0, s=0x000000010032fc50, argc=1, argv=0x00007fff5fbee820) + 1874 at m_class.c:981 frame #38: 0x00000001000805bf pd`outlet_anything(x=0x000000010041a220, s=0x000000010032fc50, argc=1, argv=0x00007fff5fbee820) + 111 at m_obj.c:422 frame #39: 0x000000010004866f pd`vinlet_anything(x=0x000000010041a130, s=0x000000010032fc50, argc=1, argv=0x00007fff5fbee820) + 47 at g_io.c:81 frame #40: 0x000000010007d832 pd`pd_typedmess(x=0x000000010041a130, s=0x000000010032fc50, argc=1, argv=0x00007fff5fbee820) + 1874 at m_class.c:981 frame #41: 0x0000000100080011 pd`inlet_anything(x=0x000000010041a1f0, s=0x000000010032fc50, argc=1, argv=0x00007fff5fbee820) + 113 at m_obj.c:157 frame #42: 0x000000010007d832 pd`pd_typedmess(x=0x000000010041a1f0, s=0x000000010032fc50, argc=1, argv=0x00007fff5fbee820) + 1874 at m_class.c:981 frame #43: 0x00000001000805bf pd`outlet_anything(x=0x0000000100427850, s=0x000000010032fc50, argc=1, argv=0x00007fff5fbee820) + 111 at m_obj.c:422 frame #44: 0x00000001000620bf pd`messresponder_anything(x=0x00000001004278e0, s=0x000000010032fc50, argc=1, argv=0x00007fff5fbee820) + 47 at g_text.c:339 frame #45: 0x000000010007d832 pd`pd_typedmess(x=0x00000001004278e0, s=0x000000010032fc50, argc=1, argv=0x00007fff5fbee820) + 1874 at m_class.c:981 frame #46: 0x000000010007696f pd`binbuf_eval(x=0x0000000100427840, target=0x00000001004278e0, argc=1, argv=0x00007fff5fbee880) + 2079 at m_binbuf.c:773 frame #47: 0x0000000100061bb3 pd`message_float(x=0x00000001004278b0, f=384) + 67 at g_text.c:351 frame #48: 0x0000000100082142 pd`pd_float(x=0x00000001004278b0, f=384) + 50 at m_pd.c:273 frame #49: 0x00000001000803f2 pd`outlet_float(x=0x0000000100427df0, f=384) + 98 at m_obj.c:389 frame #50: 0x0000000100048a33 pd`voutlet_float(x=0x0000000100427d30, f=384) + 35 at g_io.c:334 frame #51: 0x0000000100082142 pd`pd_float(x=0x0000000100427d30, f=384) + 50 at m_pd.c:273 frame #52: 0x000000010007fcd7 pd`inlet_float(x=0x0000000100427e10, f=384) + 151 at m_obj.c:112 frame #53: 0x0000000100082142 pd`pd_float(x=0x0000000100427e10, f=384) + 50 at m_pd.c:273 frame #54: 0x00000001000803f2 pd`outlet_float(x=0x0000000100427cc0, f=384) + 98 at m_obj.c:389 frame #55: 0x000000010009919b pd`binop1_times_bang(x=0x0000000100427c80) + 43 at x_arithmetic.c:81 frame #56: 0x0000000100082108 pd`pd_bang(x=0x0000000100427c80) + 40 at m_pd.c:268 frame #57: 0x0000000100080278 pd`outlet_bang(x=0x0000000100427c30) + 88 at m_obj.c:363 frame #58: 0x00000001000a136b pd`trigger_list(x=0x0000000100427bd0, s=0x0000000000000000, argc=1, argv=0x00007fff5fbeeab0) + 203 at x_connective.c:1023 frame #59: 0x00000001000a1518 pd`trigger_float(x=0x0000000100427bd0, f=3) + 56 at x_connective.c:1067 frame #60: 0x0000000100082142 pd`pd_float(x=0x0000000100427bd0, f=3) + 50 at m_pd.c:273 frame #61: 0x00000001000803f2 pd`outlet_float(x=0x0000000100427ec0, f=3) + 98 at m_obj.c:389 frame #62: 0x00000001000a0223 pd`receive_float(x=0x0000000100427e80, f=3) + 35 at x_connective.c:305 frame #63: 0x0000000100082142 pd`pd_float(x=0x0000000100427e80, f=3) + 50 at m_pd.c:273 frame #64: 0x00000001000819a9 pd`bindlist_float(x=0x00000001004229d0, f=3) + 57 at m_pd.c:80 frame #65: 0x0000000100082142 pd`pd_float(x=0x00000001004229d0, f=3) + 50 at m_pd.c:273 frame #66: 0x00000001000a002a pd`send_float(x=0x00000001004114e0, f=3) + 58 at x_connective.c:244 frame #67: 0x0000000100082142 pd`pd_float(x=0x00000001004114e0, f=3) + 50 at m_pd.c:273 frame #68: 0x00000001000803f2 pd`outlet_float(x=0x0000000100411490, f=3) + 98 at m_obj.c:389 frame #69: 0x000000010009f4a3 pd`change_float(x=0x0000000100411450, f=3) + 83 at x_connective.c:1415 frame #70: 0x0000000100082142 pd`pd_float(x=0x0000000100411450, f=3) + 50 at m_pd.c:273 frame #71: 0x00000001000803f2 pd`outlet_float(x=0x000000010035a620, f=3) + 98 at m_obj.c:389 frame #72: 0x0000000100048a33 pd`voutlet_float(x=0x000000010035a560, f=3) + 35 at g_io.c:334 frame #73: 0x0000000100082142 pd`pd_float(x=0x000000010035a560, f=3) + 50 at m_pd.c:273 frame #74: 0x000000010007fcd7 pd`inlet_float(x=0x000000010035a640, f=3) + 151 at m_obj.c:112 frame #75: 0x0000000100082142 pd`pd_float(x=0x000000010035a640, f=3) + 50 at m_pd.c:273 frame #76: 0x00000001000803f2 pd`outlet_float(x=0x000000010035a430, f=3) + 98 at m_obj.c:389 frame #77: 0x00000001000a195a pd`moses_float(x=0x000000010035a3c0, f=3) + 58 at x_connective.c:1177 frame #78: 0x0000000100082142 pd`pd_float(x=0x000000010035a3c0, f=3) + 50 at m_pd.c:273 frame #79: 0x00000001000803f2 pd`outlet_float(x=0x000000010035a010, f=3) + 98 at m_obj.c:389 frame #80: 0x0000000100062013 pd`messresponder_float(x=0x000000010035a170, f=3) + 35 at g_text.c:322 frame #81: 0x0000000100082142 pd`pd_float(x=0x000000010035a170, f=3) + 50 at m_pd.c:273 frame #82: 0x0000000100076996 pd`binbuf_eval(x=0x000000010035a190, target=0x000000010035a170, argc=16, argv=0x0000000101811400) + 2118 at m_binbuf.c:776 frame #83: 0x0000000100061c4e pd`message_list(x=0x000000010035a140, s=0x00000001001221b0, argc=16, argv=0x0000000101811400) + 62 at g_text.c:363 frame #84: 0x000000010008221d pd`pd_list(x=0x000000010035a140, s=0x00000001001221b0, argc=16, argv=0x0000000101811400) + 77 at m_pd.c:288 frame #85: 0x000000010008051f pd`outlet_list(x=0x0000000100359f30, s=0x00000001001221b0, argc=16, argv=0x0000000101811400) + 111 at m_obj.c:411 frame #86: 0x000000010004862f pd`vinlet_list(x=0x0000000100359e40, s=0x00000001001221b0, argc=16, argv=0x0000000101811400) + 47 at g_io.c:76 frame #87: 0x000000010008221d pd`pd_list(x=0x0000000100359e40, s=0x00000001001221b0, argc=16, argv=0x0000000101811400) + 77 at m_pd.c:288 frame #88: 0x000000010007fee3 pd`inlet_list(x=0x0000000100359f00, s=0x00000001001221b0, argc=16, argv=0x0000000101811400) + 179 at m_obj.c:142 frame #89: 0x000000010008221d pd`pd_list(x=0x0000000100359f00, s=0x00000001001221b0, argc=16, argv=0x0000000101811400) + 77 at m_pd.c:288 frame #90: 0x000000010008051f pd`outlet_list(x=0x0000000100411380, s=0x00000001001221b0, argc=16, argv=0x0000000101811400) + 111 at m_obj.c:411 frame #91: 0x00000001000a143d pd`trigger_list(x=0x0000000100411290, s=0x00000001001221b0, argc=16, argv=0x0000000101811400) + 413 at x_connective.c:1033 frame #92: 0x000000010008221d pd`pd_list(x=0x0000000100411290, s=0x00000001001221b0, argc=16, argv=0x0000000101811400) + 77 at m_pd.c:288 frame #93: 0x000000010008051f pd`outlet_list(x=0x0000000100356dc0, s=0x00000001001221b0, argc=16, argv=0x0000000101811400) + 111 at m_obj.c:411 frame #94: 0x000000010004862f pd`vinlet_list(x=0x0000000100356cd0, s=0x00000001001221b0, argc=16, argv=0x0000000101811400) + 47 at g_io.c:76 frame #95: 0x000000010008221d pd`pd_list(x=0x0000000100356cd0, s=0x00000001001221b0, argc=16, argv=0x0000000101811400) + 77 at m_pd.c:288 frame #96: 0x000000010007fee3 pd`inlet_list(x=0x0000000100356d90, s=0x00000001001221b0, argc=16, argv=0x0000000101811400) + 179 at m_obj.c:142 frame #97: 0x000000010008221d pd`pd_list(x=0x0000000100356d90, s=0x00000001001221b0, argc=16, argv=0x0000000101811400) + 77 at m_pd.c:288 frame #98: 0x000000010008051f pd`outlet_list(x=0x0000000100504940, s=0x00000001001221b0, argc=16, argv=0x0000000101811400) + 111 at m_obj.c:411 frame #99: 0x00000001000a54a9 pd`list_split_list(x=0x00000001005048f0, s=0x00000001001221b0, argc=784, argv=0x0000000101811400) + 137 at x_list.c:577 frame #100: 0x000000010008221d pd`pd_list(x=0x00000001005048f0, s=0x00000001001221b0, argc=784, argv=0x0000000101811400) + 77 at m_pd.c:288 frame #101: 0x000000010008051f pd`outlet_list(x=0x0000000100504890, s=0x00000001001221b0, argc=784, argv=0x0000000101811400) + 111 at m_obj.c:411 frame #102: 0x00000001000a143d pd`trigger_list(x=0x0000000100504810, s=0x00000001001221b0, argc=784, argv=0x0000000101811400) + 413 at x_connective.c:1033 frame #103: 0x000000010008221d pd`pd_list(x=0x0000000100504810, s=0x00000001001221b0, argc=784, argv=0x0000000101811400) + 77 at m_pd.c:288 frame #104: 0x000000010008051f pd`outlet_list(x=0x00000001003556c0, s=0x00000001001221b0, argc=784, argv=0x0000000101811400) + 111 at m_obj.c:411 frame #105: 0x00000001000a182f pd`spigot_list(x=0x0000000100355650, s=0x00000001001221b0, argc=784, argv=0x0000000101811400) + 79 at x_connective.c:1135 frame #106: 0x000000010008221d pd`pd_list(x=0x0000000100355650, s=0x00000001001221b0, argc=784, argv=0x0000000101811400) + 77 at m_pd.c:288 frame #107: 0x000000010008051f pd`outlet_list(x=0x0000000100352dc0, s=0x00000001001221b0, argc=784, argv=0x0000000101811400) + 111 at m_obj.c:411 frame #108: 0x00000001000a02bf pd`receive_list(x=0x0000000100352d80, s=0x00000001001221b0, argc=784, argv=0x0000000101811400) + 47 at x_connective.c:320 frame #109: 0x000000010008221d pd`pd_list(x=0x0000000100352d80, s=0x00000001001221b0, argc=784, argv=0x0000000101811400) + 77 at m_pd.c:288 frame #110: 0x00000001000a00f6 pd`send_list(x=0x0000000103006f10, s=0x00000001001221b0, argc=784, argv=0x0000000101811400) + 70 at x_connective.c:259 frame #111: 0x000000010008221d pd`pd_list(x=0x0000000103006f10, s=0x00000001001221b0, argc=784, argv=0x0000000101811400) + 77 at m_pd.c:288 frame #112: 0x000000010008051f pd`outlet_list(x=0x0000000103006bf0, s=0x00000001001221b0, argc=784, argv=0x0000000101811400) + 111 at m_obj.c:411 frame #113: 0x0000000109cc2e3b libiemnet.dylib`pollfun + 139 frame #114: 0x00000001000892a3 pd`sys_domicrosleep(microsec=0, pollem=1) + 579 at s_inter.c:230 frame #115: 0x000000010008a934 pd`sys_pollgui + 20 at s_inter.c:902 frame #116: 0x000000010008358e pd`m_pollingscheduler + 462 at m_sched.c:523 frame #117: 0x00000001000832e2 pd`m_mainloop + 50 at m_sched.c:596 frame #118: 0x000000010008dcc6 pd`sys_main(argc=13, argv=0x00007fff5fbffa98) + 678 at s_main.c:385 frame #119: 0x0000000100086a02 pd`main(argc=13, argv=0x00007fff5fbffa98) + 34 at s_entry.c:32 frame #120: 0x00007fff9c4e85ad libdyld.dylib`start + 1 frame #121: 0x00007fff9c4e85ad libdyld.dylib`start + 1 Roman
signature.asc
Description: This is a digitally signed message part
_______________________________________________ Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list