Plug memory leaks.
This commit is contained in:
parent
0a124c3704
commit
3e7b7bb1cb
@ -195,6 +195,18 @@ gctl_copyin(struct gctl_req *req)
|
|||||||
return (error);
|
return (error);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
gctl_free(struct gctl_req *req)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
|
for (i = 0; i < req->narg; i++) {
|
||||||
|
if (req->arg[i].nlen == 0 && req->arg[i].name != NULL)
|
||||||
|
g_free(req->arg[i].name);
|
||||||
|
}
|
||||||
|
g_free(req->arg);
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gctl_dump(struct gctl_req *req)
|
gctl_dump(struct gctl_req *req)
|
||||||
{
|
{
|
||||||
@ -306,6 +318,7 @@ gctl_get_class(struct gctl_req *req)
|
|||||||
return (cp);
|
return (cp);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
g_free(p);
|
||||||
gctl_error(req, "Class not found");
|
gctl_error(req, "Class not found");
|
||||||
return (NULL);
|
return (NULL);
|
||||||
}
|
}
|
||||||
@ -337,6 +350,7 @@ gctl_get_geom(struct gctl_req *req, struct g_class *mpr)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
gctl_error(req, "Geom not found");
|
gctl_error(req, "Geom not found");
|
||||||
|
g_free(p);
|
||||||
return (NULL);
|
return (NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -368,6 +382,7 @@ gctl_get_provider(struct gctl_req *req)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
gctl_error(req, "Provider not found");
|
gctl_error(req, "Provider not found");
|
||||||
|
g_free(p);
|
||||||
return (NULL);
|
return (NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -501,6 +516,7 @@ g_ctl_ioctl_ctl(dev_t dev, u_long cmd, caddr_t data, int fflag, struct thread *t
|
|||||||
error = gctl_error(req, "XXX: TBD");
|
error = gctl_error(req, "XXX: TBD");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
gctl_free(req);
|
||||||
g_topology_unlock();
|
g_topology_unlock();
|
||||||
return (error);
|
return (error);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user