[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 01/20] qom: Add prefix to error message inside object_property_pa
From: |
Eduardo Habkost |
Subject: |
[PATCH 01/20] qom: Add prefix to error message inside object_property_parse() |
Date: |
Fri, 30 Oct 2020 16:21:12 -0400 |
Make object_property_parse() automatically add a error message
prefix mentioning the QOM type and property name when
encountering errors.
As we have a large number of functions that add their own
"Property '...'" to the error messages, add a temporary check for
existing prefixes before prepending our own.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: "Daniel P. Berrangé" <berrange@redhat.com>
Cc: Eduardo Habkost <ehabkost@redhat.com>
Cc: qemu-devel@nongnu.org
---
qom/object.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/qom/object.c b/qom/object.c
index 20726e4584..6fb1657724 100644
--- a/qom/object.c
+++ b/qom/object.c
@@ -1635,9 +1635,20 @@ int object_property_get_enum(Object *obj, const char
*name,
bool object_property_parse(Object *obj, const char *name,
const char *string, Error **errp)
{
+ ERRP_GUARD();
Visitor *v = string_input_visitor_new(string);
bool ok = object_property_set(obj, name, v, errp);
+ if (!ok) {
+ /*
+ * Temporary check for existing prefix, until all error reporting
+ * functions remove their own prefix.
+ */
+ if (!g_str_has_prefix(error_get_pretty(*errp), "Property '")) {
+ error_prepend(errp, "Property '%s.%s' can't take value '%s': ",
+ object_get_typename(obj), name, string);
+ }
+ }
visit_free(v);
return ok;
}
--
2.28.0
- [PATCH 00/20] qdev/qom: Remove explicit type names from error_setg() calls, Eduardo Habkost, 2020/10/30
- [PATCH 01/20] qom: Add prefix to error message inside object_property_parse(),
Eduardo Habkost <=
- [PATCH 03/20] qdev: Stop using error_set_from_qdev_prop_error() for audiodev property, Eduardo Habkost, 2020/10/30
- [PATCH 02/20] qdev: Stop using error_set_from_qdev_prop_error() for netdev property, Eduardo Habkost, 2020/10/30
- [PATCH 04/20] qdev: Stop using error_set_from_qdev_prop_error() for mac property, Eduardo Habkost, 2020/10/30
- [PATCH 05/20] qdev: Stop using error_set_from_qdev_prop_error() for devfn property, Eduardo Habkost, 2020/10/30
- [PATCH 06/20] qdev: Stop using error_set_from_qdev_prop_error() for PCI host device property, Eduardo Habkost, 2020/10/30
- [PATCH 08/20] qdev: Delete unused error_set_from_qdev_prop_error() function, Eduardo Habkost, 2020/10/30
- [PATCH 07/20] qdev: Stop using error_set_from_qdev_prop_error() for css devno property, Eduardo Habkost, 2020/10/30
- [PATCH 09/20] cryptodev: Remove unnecessary prefix from error message, Eduardo Habkost, 2020/10/30
- [PATCH 10/20] memfd: Remove unnecessary prefix from error message, Eduardo Habkost, 2020/10/30
- [PATCH 11/20] tpm_util: Remove unnecessary prefix from error message, Eduardo Habkost, 2020/10/30