[Mesa-dev] [PATCH v2] vl: Fix off-by-one error in device_name_length allocation.

Vinson Lee vlee at freedesktop.org
Fri Feb 22 20:37:34 PST 2013


Fixes out-of-bounds write reported by Coverity.

Signed-off-by: Vinson Lee <vlee at freedesktop.org>
---
 src/gallium/auxiliary/vl/vl_winsys_dri.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/gallium/auxiliary/vl/vl_winsys_dri.c b/src/gallium/auxiliary/vl/vl_winsys_dri.c
index 560c914..88e17fe 100644
--- a/src/gallium/auxiliary/vl/vl_winsys_dri.c
+++ b/src/gallium/auxiliary/vl/vl_winsys_dri.c
@@ -338,9 +338,8 @@ vl_screen_create(Display *display, int screen)
       goto free_screen;
 
    device_name_length = xcb_dri2_connect_device_name_length(connect);
-   device_name = CALLOC(1, device_name_length);
+   device_name = CALLOC(1, device_name_length + 1);
    memcpy(device_name, xcb_dri2_connect_device_name(connect), device_name_length);
-   device_name[device_name_length] = 0;
    fd = open(device_name, O_RDWR);
    free(device_name);
 
-- 
1.8.1.2



More information about the mesa-dev mailing list