2011/11/12 Mathieu Bouchard <matju@artengine.ca>
Le 2011-11-11 à 21:54:00, tim vets a écrit :


hey, this is strange, when I run 'valgrind pdextended' and then create [fux_kinect] it doesn't hang, but just says:
[fux_kinect]: kinect initiated
[fux_kinect]: Number of devices found: 0
[fux_kinect]: Could not open device

The valgrind log (in the terminal) also ought to tell you an «Invalid Write» error with a partial backtrace. This is the error message I told you to give to the author, and even though it might not crash, it's still usually a sign of major problems.

Whenever you have a crash while doing malloc/new, hunt down the Invalid Writes that you see and it will usually fix the problem.

If it doesn't fix the problem, then it's because there are other Invalid Writes that valgrind couldn't detect.

indeed, when creating [fux_kinect], valgrind says:

==3908== Invalid write of size 4
==3908==    at 0x417017E: pthread_cond_init@@GLIBC_2.3.2 (pthread_cond_init.c:43)
==3908==    by 0xA15E4BC: fux_kinect::fux_kinect(int, _atom*) (fux_kinect.cpp:81)
==3908==    by 0xA15E72A: create_fux_kinect(_symbol*, int, _atom*) (fux_kinect.cpp:24)
==3908==    by 0x80B40B8: pd_typedmess (m_class.c:715)
==3908==    by 0x8076264: canvas_objtext (g_text.c:94)
==3908==    by 0x807653F: text_setto (g_text.c:1397)
==3908==    by 0x8097E08: glist_deselect (g_editor.c:253)
==3908==    by 0x8096F15: glist_noselect (g_editor.c:268)
==3908==    by 0x809A21C: canvas_doclick (g_editor.c:1422)
==3908==    by 0x809A5C6: canvas_mousedown (g_editor.c:1434)
==3908==    by 0x80B3F85: pd_typedmess (m_class.c:792)
==3908==    by 0x80B3B6B: pd_typedmess (m_class.c:813)
==3908==  Address 0x4389460 is not stack'd, malloc'd or (recently) free'd
==3908== 

 

 ______________________________________________________________________
| Mathieu BOUCHARD ----- téléphone : +1.514.383.3801 ----- Montréal, QC