diff options
Diffstat (limited to 'source/blender/makesrna/intern/rna_main_api.c')
-rw-r--r-- | source/blender/makesrna/intern/rna_main_api.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/source/blender/makesrna/intern/rna_main_api.c b/source/blender/makesrna/intern/rna_main_api.c index af2f007307b..806b1f6521b 100644 --- a/source/blender/makesrna/intern/rna_main_api.c +++ b/source/blender/makesrna/intern/rna_main_api.c @@ -118,6 +118,7 @@ #endif #include "WM_api.h" +#include "WM_types.h" static void rna_idname_validate(const char *name, char *r_name) @@ -135,6 +136,8 @@ static void rna_Main_ID_remove( if (do_unlink) { BKE_id_delete(bmain, id); RNA_POINTER_INVALIDATE(id_ptr); + /* Force full redraw, mandatory to avoid crashes when running this from UI... */ + WM_main_add_notifier(NC_WINDOW, NULL); } else if (ID_REAL_USERS(id) <= 0) { const int flag = (do_id_user ? 0 : LIB_ID_FREE_NO_USER_REFCOUNT) | |