fix coverity error 51/152751/1
authorSangjin Lee <lsj119@samsung.com>
Wed, 27 Sep 2017 04:49:26 +0000 (13:49 +0900)
committerSangjin Lee <lsj119@samsung.com>
Wed, 27 Sep 2017 04:49:26 +0000 (13:49 +0900)
Change-Id: I4f9452479943944b276207e4282e8e5fa4647abd

src/lib/drm/drm-buffer.c
src/lib/drm/drm-connector.c
src/lib/drm/drm-output.c
src/lib/tdm/tdm-output.c

index b56faf4..cb999af 100644 (file)
@@ -90,7 +90,8 @@ error:
 
                memset(&destroy_arg, 0x00, sizeof(destroy_arg));
                destroy_arg.handle = buffer->handle;
-               drmIoctl(drm->fd, DRM_IOCTL_MODE_DESTROY_DUMB, &destroy_arg);
+               if (drmIoctl(drm->fd, DRM_IOCTL_MODE_DESTROY_DUMB, &destroy_arg))
+                       PEPPER_ERROR("drmIoctl() failed.\n");
        }
 
        if (buffer->image)
@@ -213,7 +214,8 @@ drm_buffer_destroy(drm_buffer_t *buffer)
 
                memset(&destroy_arg, 0x00, sizeof(destroy_arg));
                destroy_arg.handle = buffer->handle;
-               drmIoctl(buffer->drm->fd, DRM_IOCTL_MODE_DESTROY_DUMB, &destroy_arg);
+               if (drmIoctl(buffer->drm->fd, DRM_IOCTL_MODE_DESTROY_DUMB, &destroy_arg))
+                       PEPPER_ERROR("drmIoctl failed.\n");
        } else if (buffer->type == DRM_BUFFER_TYPE_GBM) {
                gbm_bo_set_user_data(buffer->bo, NULL, NULL);
                gbm_surface_release_buffer(buffer->surface, buffer->bo);
index 553c34d..0b7591f 100644 (file)
@@ -78,7 +78,7 @@ drm_init_connectors(pepper_drm_t *drm)
 
        for (i = 0; i < drm->resources->count_connectors; i++) {
                drm_connector_t *conn = calloc(1, sizeof(drm_connector_t));
-               PEPPER_CHECK(conn, continue, "calloc() failed.\n");
+               PEPPER_CHECK(conn, return, "calloc() failed.\n");
 
                conn->drm = drm;
                conn->id = drm->resources->connectors[i];
index 9368966..dfcf3d5 100644 (file)
@@ -847,6 +847,12 @@ drm_output_create(drm_connector_t *conn)
        output->drm = drm;
        output->conn = conn;
        output->crtc_index = find_crtc_for_connector(conn);
+       if (output->crtc_index == -1) {
+               PEPPER_ERROR("find_crtc_for_connector() failed.\n");
+               free(output);
+               return NULL;
+       }
+
        output->crtc_id = drm->resources->crtcs[output->crtc_index];
        output->saved_crtc = drmModeGetCrtc(drm->fd, output->crtc_id);
        output->mode = &conn->connector->modes[0];
@@ -953,11 +959,12 @@ drm_output_destroy(void *o)
                fini_gl_renderer(output);
 
        if (output->saved_crtc) {
-               drmModeSetCrtc(output->conn->drm->fd,
+               if (drmModeSetCrtc(output->conn->drm->fd,
                                           output->saved_crtc->crtc_id,
                                           output->saved_crtc->buffer_id,
                                           output->saved_crtc->x, output->saved_crtc->y,
-                                          &output->conn->connector->connector_id, 1, &output->saved_crtc->mode);
+                                          &output->conn->connector->connector_id, 1, &output->saved_crtc->mode))
+                       PEPPER_ERROR("drmModeSetCrtc was failed.\n");
                drmModeFreeCrtc(output->saved_crtc);
        }
 
index 4af43e6..737a5fb 100644 (file)
@@ -558,7 +558,7 @@ pepper_tdm_output_init(pepper_tdm_t *tdm)
 
        while (num_output--) {
                output = (pepper_tdm_output_t *)calloc(1, sizeof(pepper_tdm_output_t));
-               PEPPER_CHECK(output, continue, "Failed to allocate memory for pepper_tdm_output_t\n");
+               PEPPER_CHECK(output, goto error, "Failed to allocate memory for pepper_tdm_output_t\n");
                output->tdm = tdm;
                output->output = (tdm_output *)tdm_display_get_output(tdm->disp, num_output,
                                                 &err);