Index: xen_internal.c
===================================================================
RCS file: /data/cvs/libvirt/src/xen_internal.c,v
retrieving revision 1.87
diff -u -p -r1.87 xen_internal.c
--- xen_internal.c	19 Jul 2007 15:37:54 -0000	1.87
+++ xen_internal.c	20 Jul 2007 10:00:22 -0000
@@ -1180,6 +1180,7 @@ xenHypervisorSetSchedulerParameters(virD
     int i;
     unsigned int val;
     xenUnifiedPrivatePtr priv;
+    char buf[256];
 
     if ((domain == NULL) || (domain->conn == NULL)) {
         virXenErrorFunc (VIR_ERR_INTERNAL_ERROR, __FUNCTION__,
@@ -1244,13 +1245,13 @@ xenHypervisorSetSchedulerParameters(virD
             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;
@@ -1259,9 +1260,8 @@ xenHypervisorSetSchedulerParameters(virD
                     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;
