Fix the clear function which has been broken for a bit.
MFC after: 1 week
This commit is contained in:
parent
d3f4dbc513
commit
5d8d4137df
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=209704
@ -222,17 +222,28 @@ mp_label(struct gctl_req *req)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
mp_clear(struct gctl_req *req)
|
mp_clear(struct gctl_req *req)
|
||||||
{
|
{
|
||||||
const char *name;
|
const char *name;
|
||||||
int error;
|
int error, i, nargs;
|
||||||
|
|
||||||
name = gctl_get_ascii(req, "arg1");
|
nargs = gctl_get_int(req, "nargs");
|
||||||
error = g_metadata_clear(name, G_MULTIPATH_MAGIC);
|
if (nargs < 1) {
|
||||||
if (error != 0) {
|
gctl_error(req, "Too few arguments.");
|
||||||
fprintf(stderr, "Can't clear metadata on %s: %s.\n", name, strerror(error));
|
return;
|
||||||
gctl_error(req, "Not fully done.");
|
}
|
||||||
|
|
||||||
|
for (i = 0; i < nargs; i++) {
|
||||||
|
name = gctl_get_ascii(req, "arg%d", i);
|
||||||
|
error = g_metadata_clear(name, G_MULTIPATH_MAGIC);
|
||||||
|
if (error != 0) {
|
||||||
|
fprintf(stderr, "Can't clear metadata on %s: %s.\n",
|
||||||
|
name, strerror(error));
|
||||||
|
gctl_error(req, "Not fully done.");
|
||||||
|
continue;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user