mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-12-26 17:18:55 +00:00
2013-11-22 Sterling Augustine <saugustine@google.com>
PR gdb/16196:
* valprint.c (read_string): Set new variable fetchlen based on
fetchlimit and size. Use it in call to partial_memory_read.
Update comment.
This commit is contained in:
@@ -1,3 +1,10 @@
|
||||
2013-11-22 Sterling Augustine <saugustine@google.com>
|
||||
|
||||
PR backtrace/16196:
|
||||
* valprint.c (read_string): Set new variable fetchlen based on
|
||||
fetchlimit and size. Use it in call to partial_memory_read.
|
||||
Update comment.
|
||||
|
||||
2013-11-22 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
PR backtrace/16155:
|
||||
|
||||
@@ -1757,11 +1757,13 @@ partial_memory_read (CORE_ADDR memaddr, gdb_byte *myaddr,
|
||||
free, and BYTES_READ will be set to the number of bytes read. Returns 0 on
|
||||
success, or a target_xfer_error on failure.
|
||||
|
||||
If LEN > 0, reads exactly LEN characters (including eventual NULs in
|
||||
the middle or end of the string). If LEN is -1, stops at the first
|
||||
null character (not necessarily the first null byte) up to a maximum
|
||||
of FETCHLIMIT characters. Set FETCHLIMIT to UINT_MAX to read as many
|
||||
characters as possible from the string.
|
||||
If LEN > 0, reads the lesser of LEN or FETCHLIMIT characters
|
||||
(including eventual NULs in the middle or end of the string).
|
||||
|
||||
If LEN is -1, stops at the first null character (not necessarily
|
||||
the first null byte) up to a maximum of FETCHLIMIT characters. Set
|
||||
FETCHLIMIT to UINT_MAX to read as many characters as possible from
|
||||
the string.
|
||||
|
||||
Unless an exception is thrown, BUFFER will always be allocated, even on
|
||||
failure. In this case, some characters might have been read before the
|
||||
@@ -1807,10 +1809,12 @@ read_string (CORE_ADDR addr, int len, int width, unsigned int fetchlimit,
|
||||
|
||||
if (len > 0)
|
||||
{
|
||||
*buffer = (gdb_byte *) xmalloc (len * width);
|
||||
unsigned int fetchlen = min (len, fetchlimit);
|
||||
|
||||
*buffer = (gdb_byte *) xmalloc (fetchlen * width);
|
||||
bufptr = *buffer;
|
||||
|
||||
nfetch = partial_memory_read (addr, bufptr, len * width, &errcode)
|
||||
nfetch = partial_memory_read (addr, bufptr, fetchlen * width, &errcode)
|
||||
/ width;
|
||||
addr += nfetch * width;
|
||||
bufptr += nfetch * width;
|
||||
|
||||
Reference in New Issue
Block a user