On Sat, Nov 11, 2006 at 04:27:50PM +0100, A.J.Mechelynck wrote: > Marc Weber wrote: > >How would you try to track this error down? > >Causing vimscript code: > > > > echo "tag_text is" > > echo tag_text > > echo "if" > > echo len(tag_text) > > if len(tag_text)>0 > > echo "in if" > > > >output: > > > > tag_text is > > [] > > if > > 0 > > > >Then vim either hangs, crashes and occasionally shows some internal error.. > >the shell shows this ugly string: > >*** glibc detected *** free(): invalid pointer: 0x084b1f0f *** > > > >This might be caused anywhere, right? > >Would a calling stack trace or output of gvim -Vfile help? > > > >Marc > > > > Your script terminates unexpectedly, before the "endif" corresponding to > "if len(tag_text)>0".
Sorry, I've forgotten to paste one line echo "tag_text is" echo tag_text echo "if" echo len(tag_text) if len(tag_text)>0 echo "in if" [...] endif echo "after if" after if isn't printed any more. The problem is this comparison: if len(tag_text)>0 this line causes the same error if tag_text!=[] So I assume the problem is caused somwhere in vim C source code?