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>
Tue, 14 Jan 2025 07:29:07 +0000 (15:29 +0800)
Change-Id: I89320faf4c1063b9404cfca1d528edef4cfa8fb3
Signed-off-by: Xuelian Bai <xuelian.bai@samsung.com>
loader/loader.c

index c5ff12c6ed630556f8acd045fc8a41cfd7d4fea7..c55c1737836f5d8eb494ae883da20f2e9e819847 100644 (file)
@@ -726,7 +726,8 @@ VkResult loader_resize_generic_list(const struct loader_instance *inst, struct l
 }
 
 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);
     memset(list, 0, sizeof(struct loader_generic_list));
 }
 
@@ -5693,6 +5694,7 @@ VKAPI_ATTR void VKAPI_CALL terminator_DestroyInstance(VkInstance instance, const
 
         icd_terms = next_icd_term;
     }
+    ptr_instance->icd_terms = NULL;
 
     loader_clear_scanned_icd_list(ptr_instance, &ptr_instance->icd_tramp_list);
     loader_destroy_generic_list(ptr_instance, (struct loader_generic_list *)&ptr_instance->ext_list);