summaryrefslogtreecommitdiffstats
path: root/lib/libcam
diff options
context:
space:
mode:
authordelphij <delphij@FreeBSD.org>2005-07-13 10:40:07 +0000
committerdelphij <delphij@FreeBSD.org>2005-07-13 10:40:07 +0000
commitb01a145dbf9b0649925cd1b8fccb00a7e78b8615 (patch)
tree321da183dcdfce50bead227fc8cbc472bed2fedc /lib/libcam
parent8f5f7d592abf7290a99058bdbb3682f7fb6671d7 (diff)
downloadFreeBSD-src-b01a145dbf9b0649925cd1b8fccb00a7e78b8615.zip
FreeBSD-src-b01a145dbf9b0649925cd1b8fccb00a7e78b8615.tar.gz
Better memory handling:
- It is acceptable to call free(3) when the given pointer itself is NULL, so we do not need to determine NULL before passing a pointer to free(3) - Handle failure of malloc(3) MT6/5 Candidate Submitted by: Dan Lukes <dan at obluda cz> PR: bin/83352
Diffstat (limited to 'lib/libcam')
-rw-r--r--lib/libcam/camlib.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/lib/libcam/camlib.c b/lib/libcam/camlib.c
index 03754bb..c62d3a6 100644
--- a/lib/libcam/camlib.c
+++ b/lib/libcam/camlib.c
@@ -97,8 +97,7 @@ cam_getccb(struct cam_device *dev)
void
cam_freeccb(union ccb *ccb)
{
- if (ccb != NULL)
- free(ccb);
+ free(ccb);
}
/*
@@ -708,8 +707,7 @@ cam_close_device(struct cam_device *dev)
cam_close_spec_device(dev);
- if (dev != NULL)
- free(dev);
+ free(dev);
}
void
@@ -757,6 +755,11 @@ cam_device_dup(struct cam_device *device)
}
newdev = malloc(sizeof(struct cam_device));
+ if (newdev == NULL) {
+ snprintf(cam_errbuf, CAM_ERRBUF_SIZE,
+ "%s: couldn't malloc CAM device structure", func_name);
+ return(NULL);
+ }
bcopy(device, newdev, sizeof(struct cam_device));
OpenPOWER on IntegriCloud