aboutsummaryrefslogtreecommitdiff
path: root/gdb/objfiles.c
diff options
context:
space:
mode:
authorTom Tromey <tromey@adacore.com>2019-03-08 13:59:27 -0700
committerTom Tromey <tromey@adacore.com>2019-03-14 05:47:11 -0600
commit3b336828de914a39741339b5341b88aa003d7225 (patch)
tree78239e64e7f5b42b525f31c45c9deeed2a64489a /gdb/objfiles.c
parentd085f98901ccd6c9764b93d3983f3c7797addc4f (diff)
downloadbinutils-3b336828de914a39741339b5341b88aa003d7225.zip
binutils-3b336828de914a39741339b5341b88aa003d7225.tar.gz
binutils-3b336828de914a39741339b5341b88aa003d7225.tar.bz2
Avoid a crash in source_cache::extract_lines
If the first requested line is larger than the number of lines in the source buffer, source_cache::extract_lines could crash, because it would try to pass string::npos" to string::substr. This patch avoids the crash by checking for this case. This version of the patch changes get_source_lines to return std::string. gdb/ChangeLog 2019-03-14 Tom Tromey <tromey@adacore.com> * source-cache.h (class source_cache) <get_source_lines>: Return std::string. * source-cache.c (source_cache::extract_lines): Handle case where first_pos==npos. Return std::string. (source_cache::get_source_lines): Update.
Diffstat (limited to 'gdb/objfiles.c')
0 files changed, 0 insertions, 0 deletions