diff options
author | Philipp Oeser <info@graphics-engineer.com> | 2021-11-23 14:27:17 +0300 |
---|---|---|
committer | Philipp Oeser <info@graphics-engineer.com> | 2021-11-26 16:40:07 +0300 |
commit | ef88047a97a10283cca21a3fe75c8d69d8fc40eb (patch) | |
tree | 021afa63042211b1168c4d90199bc8a51e0f3888 /source | |
parent | a773cd3850ee542f0bc919e67d1ec04221ec95a5 (diff) |
Fix T89081: Freestyle noise seed of zero crash
This leads to division by zero in Freestyle's NoiseShader which also
crashes blender.
Not sure if we really need a do_version patch for old files, as an
alternative we could also force a positive number in the NoiseShader.
This patch does not do either, just force a positive range in RNA from
now on.
Maniphest Tasks: T89081
Differential Revision: https://developer.blender.org/D13332
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/makesrna/intern/rna_linestyle.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/source/blender/makesrna/intern/rna_linestyle.c b/source/blender/makesrna/intern/rna_linestyle.c index c47b2ce9042..93e8e4bc31e 100644 --- a/source/blender/makesrna/intern/rna_linestyle.c +++ b/source/blender/makesrna/intern/rna_linestyle.c @@ -949,8 +949,9 @@ static void rna_def_linestyle_modifiers(BlenderRNA *brna) RNA_def_property_ui_text(prop, "Period", "Period of the noise"); RNA_def_property_update(prop, NC_LINESTYLE, "rna_LineStyle_update"); - prop = RNA_def_property(srna, "seed", PROP_INT, PROP_NONE); + prop = RNA_def_property(srna, "seed", PROP_INT, PROP_UNSIGNED); RNA_def_property_int_sdna(prop, NULL, "seed"); + RNA_def_property_range(prop, 1, SHRT_MAX); RNA_def_property_ui_text(prop, "Seed", "Seed for the noise generation"); RNA_def_property_update(prop, NC_LINESTYLE, "rna_LineStyle_update"); @@ -1051,8 +1052,9 @@ static void rna_def_linestyle_modifiers(BlenderRNA *brna) RNA_def_property_ui_text(prop, "Period", "Period of the noise"); RNA_def_property_update(prop, NC_LINESTYLE, "rna_LineStyle_update"); - prop = RNA_def_property(srna, "seed", PROP_INT, PROP_NONE); + prop = RNA_def_property(srna, "seed", PROP_INT, PROP_UNSIGNED); RNA_def_property_int_sdna(prop, NULL, "seed"); + RNA_def_property_range(prop, 1, SHRT_MAX); RNA_def_property_ui_text(prop, "Seed", "Seed for the noise generation"); RNA_def_property_update(prop, NC_LINESTYLE, "rna_LineStyle_update"); @@ -1191,8 +1193,9 @@ static void rna_def_linestyle_modifiers(BlenderRNA *brna) RNA_def_property_ui_text(prop, "Period", "Period of the noise"); RNA_def_property_update(prop, NC_LINESTYLE, "rna_LineStyle_update"); - prop = RNA_def_property(srna, "seed", PROP_INT, PROP_NONE); + prop = RNA_def_property(srna, "seed", PROP_INT, PROP_UNSIGNED); RNA_def_property_int_sdna(prop, NULL, "seed"); + RNA_def_property_range(prop, 1, SHRT_MAX); RNA_def_property_ui_text(prop, "Seed", "Seed for the noise generation"); RNA_def_property_update(prop, NC_LINESTYLE, "rna_LineStyle_update"); |