From d4d4db8a722f18a2abfa771a77689c5c1efae002 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Mon, 4 Apr 2011 14:18:11 +0000 Subject: * source.c (find_source_lines): Remove LSEEK_NOT_LINEAR code. (source_line_charpos, source_charpos_line): Remove. --- gdb/ChangeLog | 5 +++++ gdb/source.c | 66 +---------------------------------------------------------- 2 files changed, 6 insertions(+), 65 deletions(-) (limited to 'gdb') diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 186166a0fe4..ea5afefe8b5 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2011-04-04 Tom Tromey + + * source.c (find_source_lines): Remove LSEEK_NOT_LINEAR code. + (source_line_charpos, source_charpos_line): Remove. + 2011-04-04 Tom Tromey * symtab.h (domain_enum): Split in two... diff --git a/gdb/source.c b/gdb/source.c index 5710f14d3d3..81e4b4f38a3 100644 --- a/gdb/source.c +++ b/gdb/source.c @@ -1145,30 +1145,6 @@ find_source_lines (struct symtab *s, int desc) if (mtime && mtime < st.st_mtime) warning (_("Source file is more recent than executable.")); -#ifdef LSEEK_NOT_LINEAR - { - char c; - - /* Have to read it byte by byte to find out where the chars live. */ - - line_charpos[0] = lseek (desc, 0, SEEK_CUR); - nlines = 1; - while (myread (desc, &c, 1) > 0) - { - if (c == '\n') - { - if (nlines == lines_allocated) - { - lines_allocated *= 2; - line_charpos = - (int *) xrealloc ((char *) line_charpos, - sizeof (int) * lines_allocated); - } - line_charpos[nlines++] = lseek (desc, 0, SEEK_CUR); - } - } - } -#else /* lseek linear. */ { struct cleanup *old_cleanups; @@ -1207,53 +1183,13 @@ find_source_lines (struct symtab *s, int desc) } do_cleanups (old_cleanups); } -#endif /* lseek linear. */ + s->nlines = nlines; s->line_charpos = (int *) xrealloc ((char *) line_charpos, nlines * sizeof (int)); } -/* Return the character position of a line LINE in symtab S. - Return 0 if anything is invalid. */ - -#if 0 /* Currently unused */ - -int -source_line_charpos (struct symtab *s, int line) -{ - if (!s) - return 0; - if (!s->line_charpos || line <= 0) - return 0; - if (line > s->nlines) - line = s->nlines; - return s->line_charpos[line - 1]; -} - -/* Return the line number of character position POS in symtab S. */ - -int -source_charpos_line (struct symtab *s, int chr) -{ - int line = 0; - int *lnp; - - if (s == 0 || s->line_charpos == 0) - return 0; - lnp = s->line_charpos; - /* Files are usually short, so sequential search is Ok. */ - while (line < s->nlines && *lnp <= chr) - { - line++; - lnp++; - } - if (line >= s->nlines) - line = s->nlines; - return line; -} - -#endif /* 0 */ /* Get full pathname and line number positions for a symtab. -- cgit v1.2.1