From 46da4f268f5c1be00f2d863334912af48cd62fda Mon Sep 17 00:00:00 2001 From: Daniel Veillard Date: Fri, 20 Jul 2007 10:53:31 +0000 Subject: [PATCH] * src/xen_internal.c: and nother one again from Saori Fukuta Daniel --- ChangeLog | 4 ++++ src/xen_internal.c | 12 ++++++------ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 622c07e436..0e7cfc41e0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Fri Jul 20 12:53:35 CEST 2007 Daniel Veillard + + * src/xen_internal.c: and nother one again from Saori Fukuta + Fri Jul 20 11:02:28 CEST 2007 Daniel Veillard * src/xen_internal.c: some error handling improvements from Saori Fukuta diff --git a/src/xen_internal.c b/src/xen_internal.c index 7c1e1de54f..9f2a2a9d36 100644 --- a/src/xen_internal.c +++ b/src/xen_internal.c @@ -1182,6 +1182,7 @@ xenHypervisorSetSchedulerParameters(virDomainPtr domain, int i; unsigned int val; xenUnifiedPrivatePtr priv; + char buf[256]; if ((domain == NULL) || (domain->conn == NULL)) { virXenErrorFunc (VIR_ERR_INTERNAL_ERROR, __FUNCTION__, @@ -1246,13 +1247,13 @@ xenHypervisorSetSchedulerParameters(virDomainPtr domain, op_dom.u.getschedinfo.u.credit.cap = (uint16_t)~0U; for (i = 0; i < nparams; i++) { + memset(&buf, 0, sizeof(buf)); if (STREQ (params[i].field, str_weight) && params[i].type == VIR_DOMAIN_SCHED_FIELD_UINT) { val = params[i].value.ui; if ((val < 1) || (val > USHRT_MAX)) { - virXenErrorFunc (VIR_ERR_INVALID_ARG, __FUNCTION__, - _("Credit scheduler weight parameter (%d) is out of range (1-65535)"), - val); + snprintf(buf, sizeof(buf), _("Credit scheduler weight parameter (%d) is out of range (1-65535)"), val); + virXenErrorFunc (VIR_ERR_INVALID_ARG, __FUNCTION__, buf, val); return(-1); } op_dom.u.getschedinfo.u.credit.weight = val; @@ -1261,9 +1262,8 @@ xenHypervisorSetSchedulerParameters(virDomainPtr domain, params[i].type == VIR_DOMAIN_SCHED_FIELD_UINT) { val = params[i].value.ui; if (val > USHRT_MAX) { - virXenErrorFunc (VIR_ERR_INVALID_ARG, __FUNCTION__, - _("Credit scheduler cap parameter (%d) is out of range (0-65535)"), - val); + snprintf(buf, sizeof(buf), _("Credit scheduler cap parameter (%d) is out of range (0-65535)"), val); + virXenErrorFunc (VIR_ERR_INVALID_ARG, __FUNCTION__, buf, val); return(-1); } op_dom.u.getschedinfo.u.credit.cap = val;