提交 145b6259 编写于 作者: P Peter Krempa

xenconfig: Move guts of xenFormatSxprSound into xenFormatSound

Use new coding style to merge the only use of xenFormatSxprSound into
the caller.
Signed-off-by: NPeter Krempa <pkrempa@redhat.com>
Reviewed-by: NJán Tomko <jtomko@redhat.com>
上级 7480ae57
......@@ -4,7 +4,6 @@
# xenconfig/xen_sxpr.h
xenFormatSxprChr;
xenFormatSxprSound;
xenGetDomIdFromSxpr;
xenGetDomIdFromSxprString;
xenParseSxpr;
......
......@@ -2006,25 +2006,34 @@ xenFormatVfb(virConfPtr conf, virDomainDefPtr def)
static int
xenFormatSound(virConfPtr conf, virDomainDefPtr def)
{
if (def->os.type == VIR_DOMAIN_OSTYPE_HVM) {
if (def->sounds) {
virBuffer buf = VIR_BUFFER_INITIALIZER;
char *str = NULL;
int ret = xenFormatSxprSound(def, &buf);
VIR_AUTOCLEAN(virBuffer) buf = VIR_BUFFER_INITIALIZER;
const char * model;
VIR_AUTOFREE(char *) str = NULL;
size_t i;
str = virBufferContentAndReset(&buf);
if (ret == 0)
ret = xenConfigSetString(conf, "soundhw", str);
if (def->os.type != VIR_DOMAIN_OSTYPE_HVM ||
!def->sounds)
return 0;
VIR_FREE(str);
if (ret < 0)
return -1;
for (i = 0; i < def->nsounds; i++) {
if (!(model = virDomainSoundModelTypeToString(def->sounds[i]->model))) {
virReportError(VIR_ERR_INTERNAL_ERROR,
_("unexpected sound model %d"),
def->sounds[i]->model);
return -1;
}
if (i)
virBufferAddChar(&buf, ',');
virBufferEscapeSexpr(&buf, "%s", model);
}
return 0;
}
if (virBufferCheckError(&buf) < 0)
return -1;
str = virBufferContentAndReset(&buf);
return xenConfigSetString(conf, "soundhw", str);
}
static int
......
......@@ -1569,38 +1569,3 @@ xenFormatSxprChr(virDomainChrDefPtr def,
return 0;
}
/**
* xenFormatSxprSound:
* @def: the domain config
* @buf: a buffer for the result S-expression
*
* Convert all sound device parts of the domain config into S-expression in buf.
*
* Returns 0 if successful or -1 if failed.
*/
int
xenFormatSxprSound(virDomainDefPtr def,
virBufferPtr buf)
{
const char *str;
size_t i;
for (i = 0; i < def->nsounds; i++) {
if (!(str = virDomainSoundModelTypeToString(def->sounds[i]->model))) {
virReportError(VIR_ERR_INTERNAL_ERROR,
_("unexpected sound model %d"),
def->sounds[i]->model);
return -1;
}
if (i)
virBufferAddChar(buf, ',');
virBufferEscapeSexpr(buf, "%s", str);
}
if (virBufferCheckError(buf) < 0)
return -1;
return 0;
}
......@@ -51,4 +51,3 @@ virDomainChrDefPtr xenParseSxprChar(const char *value, const char *tty);
int xenParseSxprVifRate(const char *rate, unsigned long long *kbytes_per_sec);
int xenFormatSxprChr(virDomainChrDefPtr def, virBufferPtr buf);
int xenFormatSxprSound(virDomainDefPtr def, virBufferPtr buf);
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册