Fix svace critial and major issue 07/77407/3
authorSangjin Lee <lsj119@samsung.com>
Wed, 29 Jun 2016 13:07:00 +0000 (22:07 +0900)
committerSangjin Lee <lsj119@samsung.com>
Wed, 29 Jun 2016 13:23:53 +0000 (22:23 +0900)
Change-Id: Ic8bb6f890910b2cb35e0d4efefc75278e91674a0

src/bin/doctor/server.c
src/lib/desktop-shell/shell-surface.c
src/lib/drm/drm-common.c
src/lib/drm/drm-output.c
src/lib/pepper/subsurface.c
src/lib/pepper/touch.c
src/lib/pepper/utils-log.c
src/lib/render/gl-renderer.c

index a12f8d9d5449ce3bc659eef32110611e013a6b52..c692febb51f7412506a2a94de994b17254e58ce9 100644 (file)
@@ -35,7 +35,14 @@ main(int argc, char **argv)
        pepper_compositor_t *compositor;
 
        compositor = pepper_compositor_create("wayland-0");
+       if (!compositor)
+               return -1;
+
        display = pepper_compositor_get_display(compositor);
+       if (!display) {
+               pepper_compositor_destroy(compositor);
+               return -1;
+       }
 
        /* Enter main loop. */
        wl_display_run(display);
index ea479e5255a634778ee188239a8f251cb82c0d6b..74869bc5d69f6f640c1d9263ad15d7db2207a6c6 100644 (file)
@@ -1368,6 +1368,8 @@ shell_surface_resize(shell_surface_t *shsurf, pepper_seat_t *seat,
 {
        pepper_pointer_t   *pointer = pepper_seat_get_pointer(seat);
 
+       PEPPER_CHECK(pointer, return, "pointer does not exist.\n");
+
        if (shsurf->type == SHELL_SURFACE_TYPE_FULLSCREEN ||
                shsurf->type == SHELL_SURFACE_TYPE_MAXIMIZED  ||
                shsurf->type == SHELL_SURFACE_TYPE_MINIMIZED) {
index a02d8af9cb9b6e328c2c1f04fe7e919a73a75551..7c2f98de98c066188c03763a8ecc8ff0d4d0f756 100644 (file)
@@ -87,7 +87,7 @@ find_primary_gpu(struct udev *udev) /* FIXME: copied from weston */
 static void
 drm_sprd_init(int fd)
 {
-       drmVersionPtr drm_info;
+       drmVersionPtr drm_info=NULL;
        int drmIRQ = 78;
        int length = 0;
 
@@ -96,6 +96,8 @@ drm_sprd_init(int fd)
        }
 
        drm_info = drmGetVersion(fd);
+       PEPPER_CHECK(drm_info, return, "drmGetVersion() failed.\n");
+
        length = drm_info->name_len;
 
        if (length != 4) {
index d68639ecfcb89c1a2e0eecbe33b931dd626ce9ff..e4c18a64270359c29bd42692fcc732cfb0463489 100644 (file)
@@ -279,6 +279,9 @@ assign_overlay_plane(drm_output_t *output, pepper_view_t *view)
        if (!surface)
                return NULL;
 
+       pepper_view_get_position(view, &x, &y);
+       pepper_view_get_size(view, &w, &h);
+
        buffer = pepper_surface_get_buffer(surface);
        if (!buffer)
                return NULL;
@@ -350,8 +353,6 @@ assign_overlay_plane(drm_output_t *output, pepper_view_t *view)
        }
 
        /* set position  */
-       pepper_view_get_position(view, &x, &y);
-       pepper_view_get_size(view, &w, &h);
        plane->dx = (int)x;
        plane->dy = (int)y;
        plane->dw = w;
index e720bc0290452e9b7227c2ef4a79f22002bb2874..eeea1f98eab4720bcfe01e53d091752990820184 100644 (file)
@@ -614,6 +614,9 @@ subsurface_create_children_views(pepper_subsurface_t *subsurface,
                if (child && (child != subsurface)) {
                        pepper_view_t *view = pepper_compositor_add_view(
                                                                          subsurface->surface->compositor);
+
+                       PEPPER_CHECK(view, continue, "pepper_compositor_add_view() failed\n");
+
                        pepper_view_set_surface(view, child->surface);
                        pepper_view_set_parent(view, parent_view);
                        pepper_view_set_transform_inherit(view, PEPPER_TRUE);
index 3f6af7d954f875d3c50e8e96b168c079c2df4803..836ecf5015ce0898b0fbb5f3917b1d449e2ffa9d 100644 (file)
@@ -111,6 +111,8 @@ pepper_touch_handle_event(pepper_touch_t *touch, uint32_t id,
        case PEPPER_EVENT_TOUCH_MOTION: {
                pepper_touch_point_t *point = get_touch_point(touch, event->slot);
 
+               PEPPER_CHECK(point, return, "get_touch_point() failed.\n");
+
                point->x = event->x;
                point->y = event->y;
 
@@ -296,6 +298,8 @@ pepper_touch_set_focus(pepper_touch_t *touch, uint32_t id, pepper_view_t *focus)
 {
        pepper_touch_point_t *point = get_touch_point(touch, id);
 
+       PEPPER_CHECK(point, return, "Touch point %d does not exist.\n", id);
+
        if (focus) {
                if (!point)
                        pepper_touch_add_point(touch, id, 0, 0);
index dab511b2a8266ffc46a076e9ad4b4f7103924941..80f03aa9aa1577b2f8b749dba4c9617a083baca4 100644 (file)
@@ -56,8 +56,7 @@ pepper_print_timestamp(void)
        if (!brokendown_time)
                return fprintf(pepper_log_file, "failed to calloc for brokendown_time\n");
 
-       localtime_r(&tv.tv_sec, brokendown_time);
-       if (brokendown_time == NULL)
+       if (!localtime_r(&tv.tv_sec, brokendown_time))
                return fprintf(pepper_log_file, "[(NULL)localtime] ");
 
        if (brokendown_time->tm_mday != cached_tm_mday) {
index 185d22a2f4db17b48e912a6eb9d996b0659c1a65..572c9de5793bb49abab38c7baf49905ba63bf346 100644 (file)
@@ -1496,7 +1496,7 @@ setup_egl_extensions(gl_renderer_t *gr)
                gr->unbind_display    = (void *)eglGetProcAddress("eglUnbindWaylandDisplayWL");
                gr->query_buffer      = (void *)eglGetProcAddress("eglQueryWaylandBufferWL");
 
-               if (!gr->bind_display(gr->display,
+               if (!gr->bind_display || !gr->bind_display(gr->display,
                                                          pepper_compositor_get_display(gr->base.compositor))) {
                        gr->bind_display = NULL;
                        gr->unbind_display = NULL;