[Bf-blender-cvs] [3469e06c1a6] master: Fix memory leak when opening file browser

Julian Eisel noreply at git.blender.org
Fri Jan 22 16:58:35 CET 2021


Commit: 3469e06c1a6b84fbf6888f57e8f03653bacce354
Author: Julian Eisel
Date:   Fri Jan 22 16:57:02 2021 +0100
Branches: master
https://developer.blender.org/rB3469e06c1a6b84fbf6888f57e8f03653bacce354

Fix memory leak when opening file browser

The name string of each file was duplicated but not freed. The new flag to
ensure the file-list frees the name wasn't set. Mistake in ca475479eb26.

===================================================================

M	source/blender/editors/space_file/filelist.c

===================================================================

diff --git a/source/blender/editors/space_file/filelist.c b/source/blender/editors/space_file/filelist.c
index a50751b6b96..33c37875372 100644
--- a/source/blender/editors/space_file/filelist.c
+++ b/source/blender/editors/space_file/filelist.c
@@ -1954,7 +1954,13 @@ static FileDirEntry *filelist_file_create_entry(FileList *filelist, const int in
 
   ret->entry = rev;
   ret->relpath = BLI_strdup(entry->relpath);
-  ret->name = entry->free_name ? BLI_strdup(entry->name) : entry->name;
+  if (entry->free_name) {
+    ret->name = BLI_strdup(entry->name);
+    ret->flags |= FILE_ENTRY_NAME_FREE;
+  }
+  else {
+    ret->name = entry->name;
+  }
   ret->description = BLI_strdupcat(filelist->filelist.root, entry->relpath);
   memcpy(ret->uuid, entry->uuid, sizeof(ret->uuid));
   ret->blentype = entry->blentype;



More information about the Bf-blender-cvs mailing list