|
From: | Eric Blake |
Subject: | Re: [Qemu-block] [Qemu-devel] [PATCH v3 2/9] jobs: canonize Error object |
Date: | Thu, 30 Aug 2018 14:58:00 -0500 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 |
On 08/29/2018 08:57 PM, John Snow wrote:
Jobs presently use both an Error object in the case of the create job, and char strings in the case of generic errors elsewhere. Unify the two paths as just j->err, and remove the extra argument from job_completed. The integer error code for job_completed is kept for now, to be removed shortly in a separate patch. Signed-off-by: John Snow <address@hidden> ---
+++ b/job.c
@@ -666,8 +666,8 @@ static void job_update_rc(Job *job) job->ret = -ECANCELED; } if (job->ret) { - if (!job->error) { - job->error = g_strdup(strerror(-job->ret)); + if (!job->err) { + error_setg(&job->err, "%s", g_strdup(strerror(-job->ret)));
Memleak. Drop the g_strdup(), and just directly pass strerror() results to error_setg(). (I guess we can't quite use error_setg_errno() unless we add additional text beyond the strerror() results).
With that fixed, Reviewed-by: Eric Blake <address@hidden> -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3266 Virtualization: qemu.org | libvirt.org
[Prev in Thread] | Current Thread | [Next in Thread] |