aboutsummaryrefslogtreecommitdiff
path: root/gdb/language.c
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2018-05-21 12:35:59 -0600
committerTom Tromey <tom@tromey.com>2018-06-18 12:51:02 -0600
commitb4be9fadea469e2c937c81a8f1d3243206f9bcfc (patch)
tree7ffa8ba6e9cc9c630d8775e71e30963d390e53c6 /gdb/language.c
parent3f0dbd670b59aade6224aadcbc3a1943a4645a68 (diff)
downloadgdb-b4be9fadea469e2c937c81a8f1d3243206f9bcfc.zip
gdb-b4be9fadea469e2c937c81a8f1d3243206f9bcfc.tar.gz
gdb-b4be9fadea469e2c937c81a8f1d3243206f9bcfc.tar.bz2
Use unique_xmalloc_ptr for read_string
This changes read_string's "buffer" out-parameter to be a unique_xmalloc_ptr, then updates the users. This allows for the removal of some cleanups. I chose unique_xmalloc_ptr rather than byte_vector here due to the way Guile unwinding seems to work. Tested by the buildbot. gdb/ChangeLog 2018-06-18 Tom Tromey <tom@tromey.com> * valprint.h (read_string): Update. * valprint.c (read_string): Change type of "buffer". (val_print_string): Update. * python/py-value.c (valpy_string): Update. * language.h (struct language_defn) <la_get_string>: Change type of "buffer". (default_get_string, c_get_string): Update. * language.c (default_get_string): Change type of "buffer". * guile/scm-value.c (gdbscm_value_to_string): Update. * c-lang.c (c_get_string): Change type of "buffer".
Diffstat (limited to 'gdb/language.c')
-rw-r--r--gdb/language.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gdb/language.c b/gdb/language.c
index 44bbeb4..21eda57 100644
--- a/gdb/language.c
+++ b/gdb/language.c
@@ -691,8 +691,9 @@ default_print_array_index (struct value *index_value, struct ui_file *stream,
}
void
-default_get_string (struct value *value, gdb_byte **buffer, int *length,
- struct type **char_type, const char **charset)
+default_get_string (struct value *value,
+ gdb::unique_xmalloc_ptr<gdb_byte> *buffer,
+ int *length, struct type **char_type, const char **charset)
{
error (_("Getting a string is unsupported in this language."));
}