
2010/4/27 Chris Lalancette <clalance@redhat.com>:
On 04/23/2010 02:06 PM, Matthias Bolte wrote:
2010/4/23 Chris Lalancette <clalance@redhat.com>:
Signed-off-by: Chris Lalancette <clalance@redhat.com> --- src/conf/domain_conf.c | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 6dc26c3..139712a 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -6614,8 +6614,7 @@ virDomainSnapshotDefPtr virDomainSnapshotDefParseString(const char *xmlStr, }
if (!xmlStrEqual(root->name, BAD_CAST "domainsnapshot")) { - virDomainReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("incorrect root element")); + virDomainReportError(VIR_ERR_XML_ERROR, "%s", _("domainsnapshot")); goto cleanup; }
Could we have a bit more verbose error message here, like "unknown root element for domain snapshot"?
Well, we could go one of two ways. The text that automatically comes out from VIR_ERR_XML_ERROR is:
XML description for %s is not well formed or invalid
Ah, sorry. I missed the fact that VIR_ERR_XML_ERROR results in this format string. I'm fine with the original patch then. ACK. If you grep the codebase for VIR_ERR_XML_ERROR then you'll find that in most cases VIR_ERR_XML_ERROR is used in the wrong way, resulting in a broken error message: virInterfaceReportError(VIR_ERR_XML_ERROR, "%s", _("bridge interface misses the bridge element")); Just reporting that the XML in not well formed (the string for VIR_ERR_XML_ERROR implies this usage) is not that helpful. So we include the relevant details in the error message, ignoring that the string associated with VIR_ERR_XML_ERROR indicates a different usage. Maybe we should unify the structure of the error code strings to a format that expects the additional error message as a more detailed description of the error. For example VIR_ERR_NO_DOMAIN or VIR_ERR_INVALID_MAC or VIR_ERR_AUTH_FAILED already have this format. Matthias