RNA: disallow negative fcurve data-path array index

This commit is contained in:
Campbell Barton 2020-12-15 12:41:44 +11:00
parent 612598acd7
commit a05d98884a
2 changed files with 7 additions and 2 deletions

View File

@ -612,7 +612,12 @@ typedef struct FCurve {
char _pad[3];
/* RNA - data link */
/** When the RNA property from `rna_path` is an array, use this to access the array index. */
/**
* When the RNA property from `rna_path` is an array, use this to access the array index.
*
* \note This may be negative (as it wasn't prevented in 2.91 and older).
* Currently it silently fails to resolve the data-path in this case.
*/
int array_index;
/**
* RNA-path to resolve data-access, see: #RNA_path_resolve_property.

View File

@ -2341,7 +2341,7 @@ static void rna_def_fcurve(BlenderRNA *brna)
RNA_def_property_update(prop, NC_ANIMATION, "rna_FCurve_update_data_relations");
/* called 'index' when given as function arg */
prop = RNA_def_property(srna, "array_index", PROP_INT, PROP_NONE);
prop = RNA_def_property(srna, "array_index", PROP_INT, PROP_UNSIGNED);
RNA_def_property_ui_text(
prop, "RNA Array Index", "Index to the specific property affected by F-Curve if applicable");
/* XXX need an update callback for this so that animation gets evaluated */