Fix latent bug in source cache
authorTom Tromey <tromey@adacore.com>
Tue, 23 Jul 2019 14:22:50 +0000 (08:22 -0600)
committerTom Tromey <tromey@adacore.com>
Tue, 6 Aug 2019 14:04:33 +0000 (08:04 -0600)
commit269249d9406096dd59aecd8845e960fdddb1ebfe
tree8a74c5a0650640b8a702853502b3bda2be844f55
parentc0e8dcd87101119806c5bbca4c7b649c1b8c0996
Fix latent bug in source cache

The source cache was not returning the final \n of the requested range
of lines.  This caused regressions with later patches in this series,
so this patch pre-emptively fixes the bug.

This adds a self-test of "extract_lines" to the source cache code.  To
make it simpler to test, I changed extract_lines to be a static
function, and changed it's API a bit.

gdb/ChangeLog
2019-08-06  Tom Tromey  <tromey@adacore.com>

* source-cache.c (extract_lines): No longer a method.
Changed type of parameter.  Include final newline.
(selftests::extract_lines_test): New function.
(_initialize_source_cache): Likewise.
* source-cache.h (class source_cache)
<extract_lines>: Don't declare.
gdb/ChangeLog
gdb/source-cache.c
gdb/source-cache.h