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:
authorSergey Sharybin <sergey@blender.org>2022-03-25 13:36:08 +0300
committerSergey Sharybin <sergey@blender.org>2022-03-25 13:45:50 +0300
commit0c33e84020deca84c987dffa1302651f59c27158 (patch)
tree7921c909a2e76fcc260bbbf2556fe4ffe4d91abd /source/blender/blenkernel/intern
parent03df72ee4e7e7f9893df73de426cdc3af1c7a676 (diff)
Fix compilation warnings after previous change
Thanks Jacques for finding solution for deprecation warning which was generated by GCC for constructor. The rest of the change is related on fixing memaccess warning which was happening when memset/memcpy was used directly on the DNA object pointer. Now there are two utility functions for this: - blender::dna::zero_memory - blender::dna::copy_memory
Diffstat (limited to 'source/blender/blenkernel/intern')
-rw-r--r--source/blender/blenkernel/intern/mesh_convert.cc10
-rw-r--r--source/blender/blenkernel/intern/object.cc2
2 files changed, 6 insertions, 6 deletions
diff --git a/source/blender/blenkernel/intern/mesh_convert.cc b/source/blender/blenkernel/intern/mesh_convert.cc
index 1be2d06ce61..fc484e73967 100644
--- a/source/blender/blenkernel/intern/mesh_convert.cc
+++ b/source/blender/blenkernel/intern/mesh_convert.cc
@@ -911,9 +911,9 @@ static void curve_to_mesh_eval_ensure(Object &object)
* So we create temporary copy of the object which will use same data as the original bevel, but
* will have no modifiers. */
Object bevel_object;
- memset(&bevel_object, 0, sizeof(bevel_object));
+ blender::dna::zero_memory(bevel_object);
if (curve.bevobj != nullptr) {
- memcpy(&bevel_object, curve.bevobj, sizeof(bevel_object));
+ blender::dna::copy_memory(bevel_object, *curve.bevobj);
BLI_listbase_clear(&bevel_object.modifiers);
BKE_object_runtime_reset(&bevel_object);
curve.bevobj = &bevel_object;
@@ -921,9 +921,9 @@ static void curve_to_mesh_eval_ensure(Object &object)
/* Same thing for taper. */
Object taper_object;
- memset(&taper_object, 0, sizeof(taper_object));
+ blender::dna::zero_memory(taper_object);
if (curve.taperobj != nullptr) {
- memcpy(&taper_object, curve.taperobj, sizeof(taper_object));
+ blender::dna::copy_memory(taper_object, *curve.taperobj);
BLI_listbase_clear(&taper_object.modifiers);
BKE_object_runtime_reset(&taper_object);
curve.taperobj = &taper_object;
@@ -1068,7 +1068,7 @@ static Mesh *mesh_new_from_mesh_object_with_layers(Depsgraph *depsgraph,
}
Object object_for_eval;
- memcpy(&object_for_eval, object, sizeof(object_for_eval));
+ blender::dna::zero_memory(object_for_eval);
if (object_for_eval.runtime.data_orig != nullptr) {
object_for_eval.data = object_for_eval.runtime.data_orig;
}
diff --git a/source/blender/blenkernel/intern/object.cc b/source/blender/blenkernel/intern/object.cc
index 6d1eac5af49..098b7c52664 100644
--- a/source/blender/blenkernel/intern/object.cc
+++ b/source/blender/blenkernel/intern/object.cc
@@ -1236,7 +1236,7 @@ IDTypeInfo IDType_ID_OB = {
void BKE_object_workob_clear(Object *workob)
{
- memset(workob, 0, sizeof(Object));
+ blender::dna::zero_memory(*workob);
workob->scale[0] = workob->scale[1] = workob->scale[2] = 1.0f;
workob->dscale[0] = workob->dscale[1] = workob->dscale[2] = 1.0f;