aboutsummaryrefslogtreecommitdiff
path: root/gdb/expprint.c
diff options
context:
space:
mode:
authorTom Tromey <tromey@adacore.com>2020-06-15 06:28:09 -0600
committerTom Tromey <tromey@adacore.com>2020-06-15 06:28:10 -0600
commit669203174311c5be76744a879563c697cd479853 (patch)
tree77b21ddbec4501e2cf04dafd9987a347d66e8cc2 /gdb/expprint.c
parenta5d871ddaf2aa8462922ed25b0c0dc7f02128cb9 (diff)
downloadbinutils-669203174311c5be76744a879563c697cd479853.zip
binutils-669203174311c5be76744a879563c697cd479853.tar.gz
binutils-669203174311c5be76744a879563c697cd479853.tar.bz2
Change target_read_string API
This simplifies the target_read_string API a bit. Note that some code was using safe_strerror on the error codes returned by target_read_string. It seems to me that this is incorrect (if it was ever correct, it must have been quite a long time ago). gdb/ChangeLog 2020-06-15 Tom Tromey <tromey@adacore.com> * windows-nat.c (windows_nat::handle_output_debug_string): Update. (windows_nat::handle_ms_vc_exception): Update. * target.h (target_read_string): Change API. * target.c (target_read_string): Change API. * solib-svr4.c (open_symbol_file_object, svr4_read_so_list): Update. * solib-frv.c (frv_current_sos): Update. * solib-dsbt.c (dsbt_current_sos): Update. * solib-darwin.c (darwin_current_sos): Update. * linux-thread-db.c (inferior_has_bug): Update. * expprint.c (print_subexp_standard): Update. * ada-lang.c (ada_main_name, ada_tag_name_from_tsd) (ada_exception_message_1): Update.
Diffstat (limited to 'gdb/expprint.c')
-rw-r--r--gdb/expprint.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/gdb/expprint.c b/gdb/expprint.c
index 026b775..5427a56 100644
--- a/gdb/expprint.c
+++ b/gdb/expprint.c
@@ -241,18 +241,14 @@ print_subexp_standard (struct expression *exp, int *pos,
case OP_OBJC_MSGCALL:
{ /* Objective C message (method) call. */
- gdb::unique_xmalloc_ptr<char> selector;
-
(*pos) += 3;
nargs = longest_to_int (exp->elts[pc + 2].longconst);
fprintf_unfiltered (stream, "[");
print_subexp (exp, pos, stream, PREC_SUFFIX);
- if (0 == target_read_string (exp->elts[pc + 1].longconst,
- &selector, 1024, NULL))
- {
- error (_("bad selector"));
- return;
- }
+ gdb::unique_xmalloc_ptr<char> selector
+ = target_read_string (exp->elts[pc + 1].longconst, 1024);
+ if (selector == nullptr)
+ error (_("bad selector"));
if (nargs)
{
char *s, *nextS;