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:
@@ -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);
|
||||
}
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user