summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2011-04-19 11:41:04 +0200
committerHenrik Rydberg <rydberg@euromail.se>2011-04-19 11:47:08 +0200
commit61684cf0466200631b6a44af1c662eb760ad3f5d (patch)
tree8d5beddec509aaa4ad668b6e5d546ac027009794
parent9e3daba37d1d15c99a41a2d838bf683934cc7077 (diff)
downloadmtdev-git-61684cf0466200631b6a44af1c662eb760ad3f5d.tar.gz
mtdev_close should ignore NULL devices.
Saves us one goto label in mtdev_init. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
-rw-r--r--src/core.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/core.c b/src/core.c
index 1f7c1fe..07bc828 100644
--- a/src/core.c
+++ b/src/core.c
@@ -365,11 +365,11 @@ int mtdev_open(struct mtdev *dev, int fd)
goto error;
ret = mtdev_configure(dev, fd);
if (ret)
- goto mtdev;
+ goto error;
return 0;
- mtdev:
- mtdev_close(dev);
+
error:
+ mtdev_close(dev);
return ret;
}
@@ -411,8 +411,10 @@ void mtdev_close_delete(struct mtdev *dev)
void mtdev_close(struct mtdev *dev)
{
- free(dev->state);
- memset(dev, 0, sizeof(struct mtdev));
+ if (dev) {
+ free(dev->state);
+ memset(dev, 0, sizeof(struct mtdev));
+ }
}
void mtdev_delete(struct mtdev *dev)