Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2014-05-26 03:11:42 +0400
committerCampbell Barton <ideasman42@gmail.com>2014-05-26 03:35:32 +0400
commiteaf815f14a928f7d99db93013c9ad8daae539094 (patch)
tree39dbe47367aa37c83ef0f9455e4ea8f707e1acca /source/blender/makesrna/intern/rna_curve.c
parentf574b1ca3cda82b2cffa992bd4288c44e99cc643 (diff)
Fix for curve having invalid active vertex after setting type
also allow passing NULL vertex to BKE_curve_nurb_vert_active_set
Diffstat (limited to 'source/blender/makesrna/intern/rna_curve.c')
-rw-r--r--source/blender/makesrna/intern/rna_curve.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/source/blender/makesrna/intern/rna_curve.c b/source/blender/makesrna/intern/rna_curve.c
index 79c19c4c246..29f1dd5f29f 100644
--- a/source/blender/makesrna/intern/rna_curve.c
+++ b/source/blender/makesrna/intern/rna_curve.c
@@ -323,8 +323,15 @@ static int rna_Nurb_length(PointerRNA *ptr)
static void rna_Nurb_type_set(PointerRNA *ptr, int value)
{
+ Curve *cu = (Curve *)ptr->id.data;
Nurb *nu = (Nurb *)ptr->data;
- BKE_nurb_type_convert(nu, value, true);
+ const int pntsu_prev = nu->pntsu;
+
+ if (BKE_nurb_type_convert(nu, value, true)) {
+ if (nu->pntsu != pntsu_prev) {
+ cu->actvert = CU_ACT_NONE;
+ }
+ }
}
static void rna_BPoint_array_begin(CollectionPropertyIterator *iter, PointerRNA *ptr)