diff options
author | Manoj Kumar AVM <manojavm@codeaurora.org> | 2014-04-29 22:08:51 -0700 |
---|---|---|
committer | Ramkumar Radhakrishnan <ramkumar@codeaurora.org> | 2014-05-07 19:08:50 -0700 |
commit | 001b30942d137b532f25edecac34633612a31a0a (patch) | |
tree | eac0d53097c68cecdfe054b1e27056cb2e86c370 /liblight | |
parent | 1b481cb04233b875ec2b91df2b752e66368eb564 (diff) | |
download | display-001b30942d137b532f25edecac34633612a31a0a.tar.gz |
hqd: Fix Klocwork errors in liblight
1. Fix null pointer de-reference klocwork error in liblight.
2. sprintf is part of ScanBan function. Replace sprintf with
snprintf.
Change-Id: I0b88967a2bdf4adf563753c09df88d2c6a432045
Diffstat (limited to 'liblight')
-rw-r--r-- | liblight/lights.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/liblight/lights.c b/liblight/lights.c index 1aa0b588..6fd12904 100644 --- a/liblight/lights.c +++ b/liblight/lights.c @@ -83,7 +83,7 @@ write_int(char const* path, int value) fd = open(path, O_RDWR); if (fd >= 0) { char buffer[20]; - int bytes = sprintf(buffer, "%d\n", value); + int bytes = snprintf(buffer, sizeof(buffer), "%d\n", value); ssize_t amt = write(fd, buffer, (size_t)bytes); close(fd); return amt == -1 ? -errno : 0; @@ -271,6 +271,10 @@ static int open_lights(const struct hw_module_t* module, char const* name, pthread_once(&g_init, init_globals); struct light_device_t *dev = malloc(sizeof(struct light_device_t)); + + if(!dev) + return -ENOMEM; + memset(dev, 0, sizeof(*dev)); dev->common.tag = HARDWARE_DEVICE_TAG; |