diff options
author | Philipp Oeser <info@graphics-engineer.com> | 2021-11-23 14:27:17 +0300 |
---|---|---|
committer | Philipp Oeser <info@graphics-engineer.com> | 2022-01-17 19:06:17 +0300 |
commit | 9d519f1db48602b5b728ae4fcef2bae6c2369c6f (patch) | |
tree | 9f66793a74d73f64082f630055d7c489458066a1 | |
parent | 50733e1479943d2652cbb3a60d92877674250b60 (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
-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 945f13fa90b..9e0645d5e0c 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"); |