View Single Post
Posts: 235 | Thanked: 339 times | Joined on Nov 2010
#113
Originally Posted by thomasjfox View Post
Anway, it seems to be a NULL pointer access. It might help to -start- the program in gdb and make it crash, maybe it outputs more information than with the first backtrace.
Yes, you must be right. I gave up trying to use gdb and just ended up shoving "fprintf (stderr, "%s\n", __PRETTY_FUNCTION__);" statements everywhere.

What I did notice was commenting out the following in the function action_get_touchscreen_press in apps/action.c
if (last_button & BUTTON_REL)
{
*x = (last_data&0xffff0000)>>16;
*y = (last_data&0xffff);
}
else
{
*x = (data&0xffff0000)>>16;
*y = (data&0xffff);
}
stopped it segfaulting here. It also stopped the scrollbar from working but it didn't crash... I understand that that may not be the root cause of the problem (by commenting out those lines, I stop another function being called etc.) but it's the best I got

This may be totally inaccurate as there's a lot of functions I haven't blessed with __PRETTY_FUNCTION__ but here's what I get:
button_tick
button_read
button_read_device
button_try_post
action_get_touchscreen_press
button_get_data
action_get_touchscreen_press_in_vp
action_get_touchscreen_press
button_get_data
button_tick
button_read
button_read_device
button_tick
button_read
button_read_device
Fatal signal: Segmentation Fault (SDL Parachute Deployed)
Xlib: unexpected async reply (sequence 0x68)!

Last edited by jstokes; 2011-01-11 at 19:43.