diff options
author | Peter Hutterer <peter.hutterer@who-t.net> | 2011-04-19 11:41:04 +0200 |
---|---|---|
committer | Henrik Rydberg <rydberg@euromail.se> | 2011-04-19 11:47:08 +0200 |
commit | 61684cf0466200631b6a44af1c662eb760ad3f5d (patch) | |
tree | 8d5beddec509aaa4ad668b6e5d546ac027009794 | |
parent | 9e3daba37d1d15c99a41a2d838bf683934cc7077 (diff) | |
download | mtdev-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.c | 12 |
1 files changed, 7 insertions, 5 deletions
@@ -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) |