[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [RP] Sending of any key in top keymap
From: |
Joe Corneli |
Subject: |
Re: [RP] Sending of any key in top keymap |
Date: |
Sun, 20 Mar 2005 03:31:42 -0600 |
On Sat, Feb 26, 2005 at 03:34:18PM -0600, Joe Corneli wrote:
> I'm finding that
>
> :keypress a
>
> crashes RP.
Can you get a gdb backtrace from that chrash?
(Compiling with -g, starting ratpoison with gdb and commanding "bt full"
after it has chrashed)
Here you go! Sorry about the delay. I had to figure out how to
accomplish what you requested.
(In case this helps you decipher the output or helps other gdb
newbies, the answer was: start emacs under X from my .xinitrc instead
of starting RP, run
(gdb "gdb --annotate=3 /Users/arided/ratpoison/src/ratpoison")
in emacs, and finally submit the command "keypress a" from a shell
running under emacs so as to retain control of my emacs window.)
I hope this debugger output helps. Note: the file encoding is
mule-utf-8.
The stuff about malloc ("Deallocation of a pointer not malloced...")
appears before I submitted the keypress command.
Not that I know much about these things, but the actual error I get
EXC_BAD_ACCESS
and the warning I saw at compile time
actions.c:1014: warning: `key' might be used uninitialized in this
function
seem like they might be related? But _I_ don't know!
Please do let me know if I can do anything else to help now that I'm
running RP in the debugger.
Joe
Current directory is /Users/arided/ratpoison/src/
GNU gdb 5.3-20030128 (Apple version gdb-309) (Thu Dec 4 15:41:30 GMT 2003)
Copyright 2003 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "powerpc-apple-darwin".
Reading symbols for shared libraries ...... done
(gdb) run
Starting program: /Users/arided/ratpoison/src/ratpoison
Reading symbols for shared libraries .. done
*** malloc[25997]: Deallocation of a pointer not malloced: 0x90049b80; This
could be a double free(), or free() called with the middle of an allocated
block; Try setting environment variable MallocHelp to see tools to help debug
*** malloc[25997]: Deallocation of a pointer not malloced: 0x90049b80; This
could be a double free(), or free() called with the middle of an allocated
block; Try setting environment variable MallocHelp to see tools to help debug
Program received signal EXC_BAD_ACCESS, Could not access memory.
__list_add (new=0x63, prev=0xbffff3c0, next=0xbffff3c0) at linkedlist.c:43
(gdb) bt full
#0 __list_add (new=0x63, prev=0xbffff3c0, next=0xbffff3c0) at linkedlist.c:43
No locals.
#1 0x00007218 in parsed_input_to_args (num_args=1, argspec=0x301b90,
list=0xbffff3b0, args=0xbffff3c0, parsed_args=0xbffff3d0) at actions.c:2080
s = (struct sbuf *) 0x30aa30
arg = (struct cmdarg *) 0x57
ret = (cmdret *) 0x63
#2 0x0000794c in command (interactive=1, data=0x7200 "|address@hidden") at
actions.c:2368
parsed_args = 0
iter = (struct list_head *) 0xa00011ac
tmp = (struct list_head *) 0x30aa3c
head = {
next = 0x30aa3c,
prev = 0x30aa3c
}
i = -1073744308
nargs = -1073744960
scur = (struct sbuf *) 0x63
acur = (struct cmdarg *) 0x63
args = {
next = 0xbffff3c0,
prev = 0xbffff3c0
}
raw = -1073745088
alias_recursive_depth = 0
result = (cmdret *) 0xbffff3b0
cmd = 0xbffff3d0 ""
rest = 0x301b90 "¿ÿöL"
input = 0x30af00 "keypress"
uc = (user_command *) 0x30aa30
i = 3189296
#3 0x0000f9d0 in execute_remote_command (w=3221222352) at events.c:484
ret = (cmdret *) 0x30aa3c
type_ret = 31
format_ret = 8
nitems = 12
bytes_after = 0
req = (unsigned char *) 0x30aaa0 ""
#4 0x0000faec in receive_command (root=87) at events.c:549
w = 3189296
cmd_ret = (cmdret *) 0x30aa3c
result = 0xbffff3d0 ""
type_ret = 33
format_ret = 8
nitems = 4
bytes_after = 0
prop_return = (unsigned char *) 0x30aaa0 ""
offset = -1073744976
#5 0x0000fbfc in property_notify (ev=0x30aa30) at events.c:580
win = (rp_window *) 0x30aa3c
#6 0x000104c8 in listen_for_events () at events.c:951
x_fd = 3189308
fds = {
fds_bits = {64, 0 <repeats 31 times>}
}
#7 0x00014554 in main (argc=3189296, argv=0xbffff3b0) at main.c:673
i = 3189308
c = 99
command = (char **) 0xbffff3d0
cmd_count = -1073744960
screen_arg = -1073744656
screen_num = 3190528
display = 0x1 <Address 0x1 out of bounds>
interactive = 144 '\220'
alt_rcfile = 0x1f9fc ""
(gdb)