mirror of
https://github.com/xemu-project/xemu.git
synced 2024-11-27 13:30:52 +00:00
qemu-option: Factor out helper opt_create()
There is just one use so far. The next commit will add more. Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> Message-Id: <20200707160613.848843-12-armbru@redhat.com>
This commit is contained in:
parent
44b0b7d175
commit
81a8a0726a
@ -499,6 +499,23 @@ int qemu_opt_unset(QemuOpts *opts, const char *name)
|
||||
}
|
||||
}
|
||||
|
||||
static QemuOpt *opt_create(QemuOpts *opts, const char *name, char *value,
|
||||
bool prepend)
|
||||
{
|
||||
QemuOpt *opt = g_malloc0(sizeof(*opt));
|
||||
|
||||
opt->name = g_strdup(name);
|
||||
opt->str = value;
|
||||
opt->opts = opts;
|
||||
if (prepend) {
|
||||
QTAILQ_INSERT_HEAD(&opts->head, opt, next);
|
||||
} else {
|
||||
QTAILQ_INSERT_TAIL(&opts->head, opt, next);
|
||||
}
|
||||
|
||||
return opt;
|
||||
}
|
||||
|
||||
static void opt_set(QemuOpts *opts, const char *name, char *value,
|
||||
bool prepend, bool *help_wanted, Error **errp)
|
||||
{
|
||||
@ -516,16 +533,8 @@ static void opt_set(QemuOpts *opts, const char *name, char *value,
|
||||
return;
|
||||
}
|
||||
|
||||
opt = g_malloc0(sizeof(*opt));
|
||||
opt->name = g_strdup(name);
|
||||
opt->opts = opts;
|
||||
if (prepend) {
|
||||
QTAILQ_INSERT_HEAD(&opts->head, opt, next);
|
||||
} else {
|
||||
QTAILQ_INSERT_TAIL(&opts->head, opt, next);
|
||||
}
|
||||
opt = opt_create(opts, name, value, prepend);
|
||||
opt->desc = desc;
|
||||
opt->str = value;
|
||||
qemu_opt_parse(opt, &local_err);
|
||||
if (local_err) {
|
||||
error_propagate(errp, local_err);
|
||||
|
Loading…
Reference in New Issue
Block a user