From: Tom Tromey Date: Fri, 9 Feb 2018 12:58:46 +0000 (-0700) Subject: Don't reference past the end of the vector X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=9c3630e983df43e68006b526a92c2a9a2b64dfd9;p=binutils-gdb.git Don't reference past the end of the vector An earlier change made find_source_lines read: end = &data[size]; However, since 'size' is the size of the vector, this seems fishy. More obviously ok is to compute the end of the data directly: end = data.data () + size; 2018-02-09 Tom Tromey * source.c (find_source_lines): Don't reference past the end of the vector. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index f1d662fa15b..b554fce13c3 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2018-02-09 Tom Tromey + + * source.c (find_source_lines): Don't reference past the end of + the vector. + 2018-02-09 Markus Metzger * remote.c (remote_btrace_maybe_reopen): Change error message. diff --git a/gdb/source.c b/gdb/source.c index 9eec58febdd..009bec5285d 100644 --- a/gdb/source.c +++ b/gdb/source.c @@ -1219,7 +1219,7 @@ find_source_lines (struct symtab *s, int desc) size = myread (desc, data.data (), size); if (size < 0) perror_with_name (symtab_to_filename_for_display (s)); - end = &data[size]; + end = data.data () + size; p = &data[0]; line_charpos[0] = 0; nlines = 1;