On Sat, Dec 27, 2008 at 3:15 AM, Dominique Pelle wrote:
>
> 2008/12/27 Matt Wozniski wrote:
>
>> I found a SEGV that I can reproduce reliably, but can't seem to track
>> down.  It SEGVs without gdb or valgrind, doesn't SEGV under valgrind,
>> and SEGVs under gdb.  The steps that I'm using to reproduce this are
>> complicated, and possibly very specific to the version of the runtime
>> files and such that I'm using, but I'm hoping that a log of the
>> backtrace + valgrind log can help someone to track it down.
>
> From the stack trace, a pointer is dereferenced, and points to
> some invalid (freed) memory, as a result of a previous memory
> reallocation in hash_may_resize().

Yeah.  Looks to me like something got moved, the old memory got freed,
and a pointer was held to the old location instead of the new one...

> I tried to reproduce it but I could not.

Yeah, I'm not surprised...  the fact that it seems tied to a hash
table resizing makes me think that it's very much tied to the number
of plugins I have loaded, the number of variables I have defined, and
a whole bunch of other, less obvious factors....

> Which command(s)
> do you use to "step to line 300"?

at the :debug prompt, just pressing s<CR> and then <CR> repeatedly
until I hit 300.

> Also which version of Vim are you using?  I'm asking because
> the line numbers in the valgrind stack trace are not consistent
> with the latest eval.c of vim-7.2.75.

Sorry, yeah - 7.2.049, the latest from the debian git repo:
git://git.debian.org/git/pkg-vim/vim.git (plus an rsync'ed runtime
updated last night).

> Maybe compiling with -O0
> can help to get better debug information (if not already done?).

It already is compiled with "make CFLAGS='-g -O0'".

Thanks for looking into this...  I still haven't managed to spot the
bug on my own.  If you spot any variables you'd like to investigate or
some such, let me know and I can try some breakpoints, since I can
reproduce it...  :-)

~Matt

--~--~---------~--~----~------------~-------~--~----~
You received this message from the "vim_dev" maillist.
For more information, visit http://www.vim.org/maillist.php
-~----------~----~----~----~------~----~------~--~---

Raspunde prin e-mail lui