diff options
author | Peter Hutterer <peter.hutterer@who-t.net> | 2018-10-08 13:05:09 +1000 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2018-10-08 13:16:28 +1000 |
commit | 3370b6b6a41a27123a45b95ba4820395127c84e7 (patch) | |
tree | 90ae3f633f7c0c52751ee49b838e077439f80afa | |
parent | a020fda02fd0aca0c53b2368e6602bbd12002936 (diff) |
Fix handling of realloc failure
Coverity complaint and whatnot
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Dave Airlie <airlied@redhat.com>
-rw-r--r-- | src/v4l.c | 7 |
1 files changed, 6 insertions, 1 deletions
@@ -1120,6 +1120,7 @@ V4LInit(ScrnInfoPtr pScrn, XF86VideoAdaptorPtr **adaptors) XF86VideoAdaptorPtr *VAR = NULL; char dev[18]; int fd,i,j,d; + void *tmp; for (i = 0, d = 0; d < MAX_V4L_DEVICES; d++) { sprintf(dev, "/dev/video%d", d); @@ -1164,7 +1165,11 @@ V4LInit(ScrnInfoPtr pScrn, XF86VideoAdaptorPtr **adaptors) return FALSE; /* alloc VideoAdaptorRec */ - VAR = realloc(VAR,sizeof(XF86VideoAdaptorPtr)*(i+1)); + tmp = realloc(VAR,sizeof(XF86VideoAdaptorPtr)*(i+1)); + if (!tmp) + return FALSE; + VAR = tmp; + VAR[i] = malloc(sizeof(XF86VideoAdaptorRec)); if (!VAR[i]) return FALSE; |