UndoType: Fix some incinsistencies re context usage flag.

`use_context_for_encode` was not properly set regarding actual `encode` code for a few types.
This commit is contained in:
Bastien Montagne 2021-01-06 14:09:58 +01:00
parent eb1ff4b3a4
commit 0e4f8ed90e
3 changed files with 6 additions and 3 deletions

View File

@ -1576,7 +1576,7 @@ void ED_sculpt_undosys_type(UndoType *ut)
ut->step_decode = sculpt_undosys_step_decode;
ut->step_free = sculpt_undosys_step_free;
ut->use_context_for_encode = true;
ut->use_context_for_encode = false;
ut->step_size = sizeof(SculptUndoStep);
}

View File

@ -883,6 +883,9 @@ static bool image_undosys_step_encode(struct bContext *C,
}
}
else {
if (C == NULL) {
return false;
}
/* Happens when switching modes. */
ePaintMode paint_mode = BKE_paintmode_get_active_from_context(C);
BLI_assert(ELEM(paint_mode, PAINT_MODE_TEXTURE_2D, PAINT_MODE_TEXTURE_3D));
@ -995,7 +998,7 @@ void ED_image_undosys_type(UndoType *ut)
ut->step_foreach_ID_ref = image_undosys_foreach_ID_ref;
ut->use_context_for_encode = true;
ut->use_context_for_encode = false;
ut->step_size = sizeof(ImageUndoStep);
}

View File

@ -282,7 +282,7 @@ void ED_memfile_undosys_type(UndoType *ut)
ut->step_decode = memfile_undosys_step_decode;
ut->step_free = memfile_undosys_step_free;
ut->use_context_for_encode = true;
ut->use_context_for_encode = false;
ut->step_size = sizeof(MemFileUndoStep);
}