Fix: Draw: Asserts due to recent changes

cbcf421db7 could raise asserts as it
didn't use the `!is_empty()` function to test if the name is set.

Pull Request: https://projects.blender.org/blender/blender/pulls/138970
This commit is contained in:
Jeroen Bakker
2025-05-16 11:20:53 +02:00
parent 2ce71fca18
commit 729f6290b8
2 changed files with 7 additions and 7 deletions

View File

@@ -795,7 +795,7 @@ static bool ensure_attributes(const Curves &curves,
switch (type) {
case CD_MTFACE: {
if (layer == -1) {
layer = (name[0] != '\0') ?
layer = !name.is_empty() ?
CustomData_get_named_layer(&cd_curve, CD_PROP_FLOAT2, name) :
CustomData_get_render_layer(&cd_curve, CD_PROP_FLOAT2);
if (layer != -1) {
@@ -803,7 +803,7 @@ static bool ensure_attributes(const Curves &curves,
}
}
if (layer == -1) {
layer = (name[0] != '\0') ?
layer = !name.is_empty() ?
CustomData_get_named_layer(&cd_point, CD_PROP_FLOAT2, name) :
CustomData_get_render_layer(&cd_point, CD_PROP_FLOAT2);
if (layer != -1) {
@@ -811,7 +811,7 @@ static bool ensure_attributes(const Curves &curves,
}
}
if (layer != -1 && name[0] == '\0' && domain.has_value()) {
if (layer != -1 && !name.is_empty() && domain.has_value()) {
name = CustomData_get_layer_name(
domain == bke::AttrDomain::Curve ? &cd_curve : &cd_point, CD_PROP_FLOAT2, layer);
}

View File

@@ -215,7 +215,7 @@ static DRW_MeshCDMask mesh_cd_calc_used_gpu_layers(const Object &object,
*
* We do it based on the specified name.
*/
if (name[0] != '\0') {
if (!name.is_empty()) {
layer = CustomData_get_named_layer(&cd_ldata, CD_PROP_FLOAT2, name);
type = CD_MTFACE;
@@ -252,7 +252,7 @@ static DRW_MeshCDMask mesh_cd_calc_used_gpu_layers(const Object &object,
switch (type) {
case CD_MTFACE: {
if (layer == -1) {
layer = (name[0] != '\0') ?
layer = !name.is_empty() ?
CustomData_get_named_layer(&cd_ldata, CD_PROP_FLOAT2, name) :
CustomData_get_render_layer(&cd_ldata, CD_PROP_FLOAT2);
}
@@ -263,12 +263,12 @@ static DRW_MeshCDMask mesh_cd_calc_used_gpu_layers(const Object &object,
}
case CD_TANGENT: {
if (layer == -1) {
layer = (name[0] != '\0') ?
layer = !name.is_empty() ?
CustomData_get_named_layer(&cd_ldata, CD_PROP_FLOAT2, name) :
CustomData_get_render_layer(&cd_ldata, CD_PROP_FLOAT2);
/* Only fallback to orco (below) when we have no UV layers, see: #56545 */
if (layer == -1 && name[0] != '\0') {
if (layer == -1 && !name.is_empty()) {
layer = CustomData_get_render_layer(&cd_ldata, CD_PROP_FLOAT2);
}
}