This is the mail archive of the
gdb-cvs@sourceware.org
mailing list for the GDB project.
[binutils-gdb] gdb.trace: Fix off-by-one in tfile_fetch_registers.
- From: Marcin at sourceware dot org, Koś at sourceware dot org;cielnicki <mwk at sourceware dot org>
- To: gdb-cvs at sourceware dot org
- Date: 10 Feb 2016 13:52:23 -0000
- Subject: [binutils-gdb] gdb.trace: Fix off-by-one in tfile_fetch_registers.
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=473b99e5721ad623cc5826e03a73e2cf6cef4eb5
commit 473b99e5721ad623cc5826e03a73e2cf6cef4eb5
Author: Marcin KoÅ?cielnicki <koriakin@0x04.net>
Date: Sat Feb 6 16:30:01 2016 +0100
gdb.trace: Fix off-by-one in tfile_fetch_registers.
This resulted in the last register being considered unavailable.
On plain x86_64 (without AVX), this happened to be orig_rax.
gdb/ChangeLog:
* tracefile-tfile.c (tfile_fetch_registers): Fix off-by-one in bounds
check.
Diff:
---
gdb/ChangeLog | 5 +++++
gdb/tracefile-tfile.c | 2 +-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 1bca0d7..9f8aa1d 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2016-02-10 Marcin KoÅ?cielnicki <koriakin@0x04.net>
+
+ * tracefile-tfile.c (tfile_fetch_registers): Fix off-by-one in bounds
+ check.
+
2016-02-10 Joel Brobecker <brobecker@adacore.com>
* NEWS: Create a new section for the next release branch.
diff --git a/gdb/tracefile-tfile.c b/gdb/tracefile-tfile.c
index b761894..dc7b05a 100644
--- a/gdb/tracefile-tfile.c
+++ b/gdb/tracefile-tfile.c
@@ -816,7 +816,7 @@ tfile_fetch_registers (struct target_ops *ops,
{
regsize = register_size (gdbarch, regn);
/* Make sure we stay within block bounds. */
- if (offset + regsize >= trace_regblock_size)
+ if (offset + regsize > trace_regblock_size)
break;
if (regcache_register_status (regcache, regn) == REG_UNKNOWN)
{