Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/object/object_edit.c
| Show First 20 Lines • Show All 537 Lines • ▼ Show 20 Lines | |||||
| { | { | ||||
| const bool freedata = (flag & EM_FREEDATA) != 0; | const bool freedata = (flag & EM_FREEDATA) != 0; | ||||
| if (ED_object_editmode_load_ex(bmain, obedit, freedata) == false) { | if (ED_object_editmode_load_ex(bmain, obedit, freedata) == false) { | ||||
| /* in rare cases (background mode) its possible active object | /* in rare cases (background mode) its possible active object | ||||
| * is flagged for editmode, without 'obedit' being set [#35489] */ | * is flagged for editmode, without 'obedit' being set [#35489] */ | ||||
| if (UNLIKELY(obedit && obedit->mode & OB_MODE_EDIT)) { | if (UNLIKELY(obedit && obedit->mode & OB_MODE_EDIT)) { | ||||
| obedit->mode &= ~OB_MODE_EDIT; | obedit->mode &= ~OB_MODE_EDIT; | ||||
| } | |||||
| /* Also happens when mesh is shared across multiple objects. [#T69834] */ | /* Also happens when mesh is shared across multiple objects. [#T69834] */ | ||||
| DEG_id_tag_update(&obedit->id, ID_RECALC_TRANSFORM | ID_RECALC_GEOMETRY); | DEG_id_tag_update(&obedit->id, ID_RECALC_TRANSFORM | ID_RECALC_GEOMETRY); | ||||
| } | |||||
| return true; | return true; | ||||
| } | } | ||||
| /* freedata only 0 now on file saves and render */ | /* freedata only 0 now on file saves and render */ | ||||
| if (freedata) { | if (freedata) { | ||||
| ListBase pidlist; | ListBase pidlist; | ||||
| PTCacheID *pid; | PTCacheID *pid; | ||||
| ▲ Show 20 Lines • Show All 1,301 Lines • Show Last 20 Lines | |||||