diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2025-05-28 14:27:47 +0200 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2025-06-05 20:24:51 +0200 |
commit | e8fb9c91a3ea437bdddd1819e180f36112e41ae1 (patch) | |
tree | bc0a3a39d9ac0e4bc7d64a9e282a2bf0bdbb284b | |
parent | 230a4894f45eac5fbd6bea8dc0dd54f84cf6c0fa (diff) | |
download | qemu-e8fb9c91a3ea437bdddd1819e180f36112e41ae1.zip qemu-e8fb9c91a3ea437bdddd1819e180f36112e41ae1.tar.gz qemu-e8fb9c91a3ea437bdddd1819e180f36112e41ae1.tar.bz2 |
util/error: make func optional
The function name is not available in Rust, so make it optional.
Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r-- | include/qapi/error-internal.h | 2 | ||||
-rw-r--r-- | util/error.c | 9 |
2 files changed, 9 insertions, 2 deletions
diff --git a/include/qapi/error-internal.h b/include/qapi/error-internal.h index 1ec3ceb..ff18a20 100644 --- a/include/qapi/error-internal.h +++ b/include/qapi/error-internal.h @@ -18,6 +18,8 @@ struct Error { char *msg; ErrorClass err_class; + + /* Used for error_abort only, may be NULL. */ const char *func; /* diff --git a/util/error.c b/util/error.c index 3449ecc..daea214 100644 --- a/util/error.c +++ b/util/error.c @@ -24,8 +24,13 @@ Error *error_warn; static void error_handle(Error **errp, Error *err) { if (errp == &error_abort) { - fprintf(stderr, "Unexpected error in %s() at %.*s:%d:\n", - err->func, err->src_len, err->src, err->line); + if (err->func) { + fprintf(stderr, "Unexpected error in %s() at %.*s:%d:\n", + err->func, err->src_len, err->src, err->line); + } else { + fprintf(stderr, "Unexpected error at %.*s:%d:\n", + err->src_len, err->src, err->line); + } error_report("%s", error_get_pretty(err)); if (err->hint) { error_printf("%s", err->hint->str); |