Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBastien Montagne <montagne29@wanadoo.fr>2018-06-22 13:35:41 +0300
committerBastien Montagne <montagne29@wanadoo.fr>2018-06-22 13:35:41 +0300
commit2fe528424d168f124efca5d94c6b0363be49dbf3 (patch)
tree04bbd895c10e1e155a90eb53f268b593e6421e96 /source/blender/makesrna/intern/rna_ID.c
parent101fd7ec0639c03ab017e90cb46367f50e512cbb (diff)
Cleanup: remove last G.main from RNA.
Again, we cannot actually get rid of G_MAIN global access here, so in most case just 'marked' them as valid, and added assert checks to ensure we do only work with IDs in G_MAIN in those cases.
Diffstat (limited to 'source/blender/makesrna/intern/rna_ID.c')
-rw-r--r--source/blender/makesrna/intern/rna_ID.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/source/blender/makesrna/intern/rna_ID.c b/source/blender/makesrna/intern/rna_ID.c
index d3331e6ca52..b45ddf4dc8b 100644
--- a/source/blender/makesrna/intern/rna_ID.c
+++ b/source/blender/makesrna/intern/rna_ID.c
@@ -121,7 +121,8 @@ void rna_ID_name_set(PointerRNA *ptr, const char *value)
{
ID *id = (ID *)ptr->data;
BLI_strncpy_utf8(id->name + 2, value, sizeof(id->name) - 2);
- BLI_libblock_ensure_unique_name(G.main, id->name);
+ BLI_assert(BKE_id_is_in_gobal_main(id));
+ BLI_libblock_ensure_unique_name(G_MAIN, id->name);
}
static int rna_ID_name_editable(PointerRNA *ptr, const char **UNUSED(r_info))
@@ -414,7 +415,9 @@ int rna_IDMaterials_assign_int(PointerRNA *ptr, int key, const PointerRNA *assig
short *totcol = give_totcolp_id(id);
Material *mat_id = assign_ptr->id.data;
if (totcol && (key >= 0 && key < *totcol)) {
- assign_material_id(G.main, id, mat_id, key + 1);
+ BLI_assert(BKE_id_is_in_gobal_main(id));
+ BLI_assert(BKE_id_is_in_gobal_main(&mat_id->id));
+ assign_material_id(G_MAIN, id, mat_id, key + 1);
return 1;
}
else {
@@ -470,7 +473,8 @@ static void rna_IDMaterials_clear_id(ID *id, Main *bmain, int remove_material_sl
static void rna_Library_filepath_set(PointerRNA *ptr, const char *value)
{
Library *lib = (Library *)ptr->data;
- BKE_library_filepath_set(G.main, lib, value);
+ BLI_assert(BKE_id_is_in_gobal_main(&lib->id));
+ BKE_library_filepath_set(G_MAIN, lib, value);
}
/* ***** ImagePreview ***** */