[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Denemo-devel] Debug has become difficult
From: |
Richard Shann |
Subject: |
Re: [Denemo-devel] Debug has become difficult |
Date: |
Sun, 17 May 2009 17:25:44 +0100 |
On Sun, 2009-05-17 at 09:39 -0500, Jeremiah Benham wrote:
> On Sun, May 17, 2009 at 12:42:11PM +0100, Richard Shann wrote:
> > It seems that debugging has just got a whole lot more difficult on my
> > Lenny installation. Curiously, gdb was no longer on the machine after
> > the upgrade & I had to download the package. And trying to use it to set
> > breakpoints and inspect the program is failing - I was blaming this on
> > JACK but occurs with the non jack build. gdb is complaining that the
> > program is not writable (someone else is running ptrace?).
> > Jeremiah - can you use gdb on denemo - e.g. break on scorearea_keypress
> > event and inspect variables?
>
> yes. Do you want me to run a command and send the output to you. I just broke
> at scorearea_keypress_event.
There's nothing specific, I just need to get gdb working.
> (gdb) p *widget
> $9 = {object = {parent_instance = {g_type_instance = {g_class = 0x92940c8},
> ref_count = 5, qdata = 0x9197200},
> flags = 2170816}, private_flags = 3584, state = 0 '\0', saved_state = 0
> '\0', name = 0x0, style = 0x9295808,
> requisition = {width = 0, height = 0}, allocation = {x = 2, y = 129, width
> = 1049, height = 527}, window = 0x92abe60,
> parent = 0x918c728}
> (gdb) p *event
> $8 = {type = GDK_KEY_PRESS, window = 0x8fb7188, send_event = 0 '\0', time =
> 52511768, state = 0, keyval = 99, length = 1,
> string = 0x9280e68 "c", hardware_keycode = 54, group = 0 '\0', is_modifier
> = 0}
>
This is a typical example of what I get:
Breakpoint 2, scorearea_keypress_event (widget=0x9e00920,
event=0x9e7f458)
at ../../denemo/src/keyresponses.c:106
106 keymap *the_keymap = Denemo.map;
(gdb) p widget
$1 = (GtkWidget *) 0x9e00920
(gdb) n
104 {
(gdb)
PaHost_WatchDogProc: killing hung audio thread!
Cannot remove breakpoints because program is no longer writable.
It might be running in another process.
Further execution is probably impossible.
104 {
ptrace: No such process.
In this case it seems fairly clear that a portaudio thread woke up &
upset things.
Other times it breaks in some kernel system call and can't say where it
was.
In the past the portaudio complaining like this was ok, but it obviously
is not so any more. Curiously, Lenny is still not V19, so it is not
portaudio that is doing something different.
In any case, it will be good to be able to switch portaudio off, as it
is not doing anything useful on your jack build. Do you have another
route for hearing what you are playing in via MIDI in?
Richard