Commit: ca99a59605e52e6b4ec759523b1403b2b7e33ee7
Author: Jacques Lucke
Date: Thu Feb 2 17:20:57 2023 +0100
Branches: master
https://developer.blender.org/rBca99a59605e52e6b4ec759523b1403b2b7e33ee7
Fix T104261: crash when trying to draw viewer overlay for empty curve
`BKE_displist_make_curveTypes` only sets `curve_eval` if the final geometry
of the object actually contains curve data, otherwise it's null.
===================================================================
M source/blender/draw/engines/overlay/overlay_viewer_attribute.cc
===================================================================
diff --git a/source/blender/draw/engines/overlay/overlay_viewer_attribute.cc
b/source/blender/draw/engines/overlay/overlay_viewer_attribute.cc
index 69ff877c1e5..fe20fb135c5 100644
--- a/source/blender/draw/engines/overlay/overlay_viewer_attribute.cc
+++ b/source/blender/draw/engines/overlay/overlay_viewer_attribute.cc
@@ -131,11 +131,13 @@ static void populate_cache_for_geometry(Object &object,
}
case OB_CURVES_LEGACY: {
Curve *curve = static_cast<Curve *>(object.data);
- const bke::CurvesGeometry &curves = curve->curve_eval->geometry.wrap();
- if (curves.attributes().contains(".viewer")) {
- GPUBatch *batch =
DRW_cache_curve_edge_wire_viewer_attribute_get(&object);
- DRW_shgroup_uniform_float_copy(pd.viewer_attribute_curve_grp,
"opacity", opacity);
- DRW_shgroup_call_obmat(pd.viewer_attribute_curve_grp, batch,
object.object_to_world);
+ if (curve->curve_eval) {
+ const bke::CurvesGeometry &curves = curve->curve_eval->geometry.wrap();
+ if (curves.attributes().contains(".viewer")) {
+ GPUBatch *batch =
DRW_cache_curve_edge_wire_viewer_attribute_get(&object);
+ DRW_shgroup_uniform_float_copy(pd.viewer_attribute_curve_grp,
"opacity", opacity);
+ DRW_shgroup_call_obmat(pd.viewer_attribute_curve_grp, batch,
object.object_to_world);
+ }
}
break;
}
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
List details, subscription details or unsubscribe:
https://lists.blender.org/mailman/listinfo/bf-blender-cvs