This is the mail archive of the
insight@sourceware.org
mailing list for the Insight project.
[PATCH] Fix "bad text index 4" error
- From: Keith Seitz <keiths at redhat dot com>
- To: insight <insight at sourceware dot org>
- Date: Thu, 08 Oct 2009 20:01:25 -0700
- Subject: [PATCH] Fix "bad text index 4" error
Hi,
After seeing this bug reported for /ages/, I think I finally developed a
reproducible test case or at least one of them.
I can reproduce this error by changing a previously executable line (at
which insight had a saved breakpoint) to a comment and recompiling. Now
the line was no longer executable, but we had a breakpoint in the
session that said that it was. That combined with a bogus text index
("4" is not a valid text widget index) caused the infamous "bad text
index '4'" error.
The solution is to search for the next nearest executable line, and use
that line number for subsequent deductions/operations/indices. This
appears to work on the test case that I developed.
Insight inserts the breakpoint at the next executable line it finds, and
when gdb actually breaks at the breakpoint, it and insight are in sync
as to where we stopped.
My hope is that this is the last of this accursed bug that I'll see, but
if you do see it again, and you can reproduce it, PLEASE let me know.
Keith
ChangeLog
2009-10-08 Keith Seitz <keiths@redhat.com>
* library/srctextwin.ith (ExecutableLineLimit): Define.
* library/srctextwin.itb (insertBreakTag): Search for next
executable line, just in case they changed.
When there are no tags on a line, the proper index is
line.4, not just 4.
Attachment:
bad-text-index.patch
Description: Text document