Fix crash on pixel phone
authorXuelian Bai <xuelian.bai@samsung.com>
Thu, 3 Aug 2023 06:36:49 +0000 (14:36 +0800)
committerXuelian Bai <xuelian.bai@samsung.com>
Thu, 3 Aug 2023 06:40:28 +0000 (14:40 +0800)
Change-Id: I89320faf4c1063b9404cfca1d528edef4cfa8fb3
Signed-off-by: Xuelian Bai <xuelian.bai@samsung.com>
loader/loader.c

index f6e932f0eb5df088a8f51164ac93ab773620cc79..ceb39dac969ff095cf3f839ff2e0d06115be8fdc 100644 (file)
@@ -644,7 +644,8 @@ VkResult loader_init_generic_list(const struct loader_instance *inst, struct loa
 }
 
 void loader_destroy_generic_list(const struct loader_instance *inst, struct loader_generic_list *list) {
-    loader_instance_heap_free(inst, list->list);
+    if (list->count !=0)
+        loader_instance_heap_free(inst, list->list);
     list->count = 0;
     list->capacity = 0;
     list->list = NULL;
@@ -5843,6 +5844,7 @@ VKAPI_ATTR void VKAPI_CALL terminator_DestroyInstance(VkInstance instance, const
 
         icd_terms = next_icd_term;
     }
+    ptr_instance->icd_terms = NULL;
 
     loader_delete_layer_list_and_properties(ptr_instance, &ptr_instance->instance_layer_list);
     loader_scanned_icd_clear(ptr_instance, &ptr_instance->icd_tramp_list);