null-driver: Fixed to prevent memory & nonterminated string problem. 23/168623/1
authorjoonbum.ko <joonbum.ko@samsung.com>
Mon, 29 Jan 2018 10:51:54 +0000 (19:51 +0900)
committerjoonbum.ko <joonbum.ko@samsung.com>
Mon, 29 Jan 2018 10:54:03 +0000 (19:54 +0900)
 - MEMORY_LEAK.EX WGID: 305114
 - NONTERMINATING_STRING.STYLE WGID: 305119

Change-Id: I4a0c991db6e18974f72f0e1d0ce26e1e91c97706
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
src/null-driver/null-driver.c

index 8872f93..ce99542 100644 (file)
@@ -523,8 +523,10 @@ nulldrv_mem_alloc(struct nulldrv_dev *dev,
                return VK_ERROR_OUT_OF_HOST_MEMORY;
 
        mem->bo = malloc(info->allocationSize);
-       if (!mem->bo)
+       if (!mem->bo) {
+               free(mem);
                return VK_ERROR_OUT_OF_HOST_MEMORY;
+       }
 
        mem->size = info->allocationSize;
 
@@ -1451,6 +1453,8 @@ get_physical_device_properties(VkPhysicalDevice pdev,
        props->deviceID = 0;
        props->deviceType = VK_PHYSICAL_DEVICE_TYPE_OTHER;
        strncpy(props->deviceName, "nulldrv", strlen("nulldrv"));
+       if (strlen("nulldrv") < VK_MAX_PHYSICAL_DEVICE_NAME_SIZE)
+               props->deviceName[strlen("nulldrv")] = '\0';
 
        /* TODO: fill out limits */
        memset(&props->limits, 0, sizeof(VkPhysicalDeviceLimits));