* record.c (record_core_xfer_partial): Pass correct offset to

record_beneath_to_xfer_partial.
This commit is contained in:
Doug Evans 2009-10-23 17:12:25 +00:00
parent 240e538ad8
commit bcbfd75943
2 changed files with 11 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2009-10-23 Doug Evans <dje@google.com>
* record.c (record_core_xfer_partial): Pass correct offset to
record_beneath_to_xfer_partial.
2009-10-23 Michael Snyder <msnyder@vmware.com>
* record.c (netorder64): Use BFD_ENDIAN_LITTLE not LITTLE_ENDIAN.

View File

@ -1629,6 +1629,7 @@ record_core_xfer_partial (struct target_ops *ops, enum target_object object,
if (offset >= p->addr)
{
struct record_core_buf_entry *entry;
ULONGEST sec_offset;
if (offset >= p->endaddr)
continue;
@ -1636,7 +1637,7 @@ record_core_xfer_partial (struct target_ops *ops, enum target_object object,
if (offset + len > p->endaddr)
len = p->endaddr - offset;
offset -= p->addr;
sec_offset = offset - p->addr;
/* Read readbuf or write writebuf p, offset, len. */
/* Check flags. */
@ -1673,7 +1674,8 @@ record_core_xfer_partial (struct target_ops *ops, enum target_object object,
record_core_buf_list = entry;
}
memcpy (entry->buf + offset, writebuf, (size_t) len);
memcpy (entry->buf + sec_offset, writebuf,
(size_t) len);
}
else
{
@ -1683,7 +1685,8 @@ record_core_xfer_partial (struct target_ops *ops, enum target_object object,
object, annex, readbuf, writebuf,
offset, len);
memcpy (readbuf, entry->buf + offset, (size_t) len);
memcpy (readbuf, entry->buf + sec_offset,
(size_t) len);
}
return len;