mirror of
				https://github.com/vim/vim.git
				synced 2025-10-30 09:47:20 -04:00 
			
		
		
		
	patch 8.2.3133: Vim9: memory leak when add() fails
Problem: Vim9: memory leak when add() fails. Solution: Allocate listitem_T after type check.
This commit is contained in:
		| @@ -602,11 +602,12 @@ list_append(list_T *l, listitem_T *item) | ||||
|     int | ||||
| list_append_tv(list_T *l, typval_T *tv) | ||||
| { | ||||
|     listitem_T	*li = listitem_alloc(); | ||||
|     listitem_T	*li; | ||||
|  | ||||
|     if (l->lv_type != NULL && l->lv_type->tt_member != NULL | ||||
| 		&& check_typval_arg_type(l->lv_type->tt_member, tv, 0) == FAIL) | ||||
| 	return FAIL; | ||||
|     li = listitem_alloc(); | ||||
|     if (li == NULL) | ||||
| 	return FAIL; | ||||
|     copy_tv(tv, &li->li_tv); | ||||
|   | ||||
| @@ -755,6 +755,8 @@ static char *(features[]) = | ||||
|  | ||||
| static int included_patches[] = | ||||
| {   /* Add new patch number below this line */ | ||||
| /**/ | ||||
|     3133, | ||||
| /**/ | ||||
|     3132, | ||||
| /**/ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user