aboutsummaryrefslogtreecommitdiff
path: root/libctf
diff options
context:
space:
mode:
authorNick Alcock <nick.alcock@oracle.com>2024-04-02 13:48:13 +0100
committerNick Alcock <nick.alcock@oracle.com>2024-04-19 16:14:47 +0100
commit0ebf1bdeeda1612dbe8e092dca765527a741e462 (patch)
treed5d25653b93e29653bd7c6b41a01ffb4ec1b65c0 /libctf
parenteb244227d83c81fa17ec2f5ddc933945b14217fd (diff)
downloadgdb-0ebf1bdeeda1612dbe8e092dca765527a741e462.zip
gdb-0ebf1bdeeda1612dbe8e092dca765527a741e462.tar.gz
gdb-0ebf1bdeeda1612dbe8e092dca765527a741e462.tar.bz2
libctf: improve handling of type dumping errors
When dumping a type fails with an error, we want to emit a warning noting this: a warning because it's not fatal and we can continue. But warnings don't automatically print out the ctf_errno (because not all cases causing warnings set the errno at all), so we must do it at warning-emission time or lose track of what's gone wrong. libctf/ * ctf-dump.c (ctf_dump_format_type): Dump the underlying error on type dump failure.
Diffstat (limited to 'libctf')
-rw-r--r--libctf/ctf-dump.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libctf/ctf-dump.c b/libctf/ctf-dump.c
index 2213d09..80a3b26 100644
--- a/libctf/ctf-dump.c
+++ b/libctf/ctf-dump.c
@@ -239,7 +239,8 @@ ctf_dump_format_type (ctf_dict_t *fp, ctf_id_t id, int flag)
oom:
ctf_set_errno (fp, errno);
err:
- ctf_err_warn (fp, 1, 0, _("cannot format name dumping type 0x%lx"), id);
+ ctf_err_warn (fp, 1, ctf_errno (fp), _("cannot format name dumping type 0x%lx"),
+ id);
free (buf);
free (str);
free (bit);