diff --git a/source/blender/blenkernel/intern/smoke.c b/source/blender/blenkernel/intern/smoke.c index 08871cfeec7..adaab2046dc 100644 --- a/source/blender/blenkernel/intern/smoke.c +++ b/source/blender/blenkernel/intern/smoke.c @@ -975,7 +975,6 @@ static void smoke_calc_domain(Scene *scene, Object *ob, SmokeModifierData *smd) { ParticleSimulationData sim; ParticleSystem *psys = sfs->psys; - ParticleSettings *part=psys->part; int p = 0; float *density = smoke_get_density(sds->fluid); float *bigdensity = smoke_turbulence_get_density(sds->wt); diff --git a/source/blender/editors/animation/keyframes_general.c b/source/blender/editors/animation/keyframes_general.c index 07c8ddcdb4a..a0585acf305 100644 --- a/source/blender/editors/animation/keyframes_general.c +++ b/source/blender/editors/animation/keyframes_general.c @@ -515,7 +515,7 @@ short copy_animedit_keys (bAnimContext *ac, ListBase *anim_data) for (ale= anim_data->first; ale; ale= ale->next) { FCurve *fcu= (FCurve *)ale->key_data; tAnimCopybufItem *aci; - BezTriple *bezt, *newbuf; + BezTriple *bezt, *nbezt, *newbuf; int i; /* firstly, check if F-Curve has any selected keyframes @@ -546,8 +546,14 @@ short copy_animedit_keys (bAnimContext *ac, ListBase *anim_data) memcpy(newbuf, aci->bezt, sizeof(BezTriple)*(aci->totvert)); /* copy current beztriple across too */ - *(newbuf + aci->totvert)= *bezt; - + nbezt= &newbuf[aci->totvert]; + *nbezt= *bezt; + + /* ensure copy buffer is selected so pasted keys are selected */ + nbezt->f1 |= SELECT; + nbezt->f2 |= SELECT; + nbezt->f3 |= SELECT; + /* free old array and set the new */ if (aci->bezt) MEM_freeN(aci->bezt); aci->bezt= newbuf; diff --git a/source/blender/editors/animation/keyframing.c b/source/blender/editors/animation/keyframing.c index 5d5f660213b..899f5ed2229 100644 --- a/source/blender/editors/animation/keyframing.c +++ b/source/blender/editors/animation/keyframing.c @@ -229,6 +229,10 @@ int insert_bezt_fcurve (FCurve *fcu, BezTriple *bezt, short flag) dst->vec[0][1] += dy; dst->vec[1][1] += dy; dst->vec[2][1] += dy; + + dst->f1= bezt->f1; + dst->f2= bezt->f2; + dst->f3= bezt->f3; // TODO: perform some other operations? } diff --git a/source/blender/modifiers/intern/MOD_smoke.c b/source/blender/modifiers/intern/MOD_smoke.c index 91197376ae9..fc7d66b278e 100644 --- a/source/blender/modifiers/intern/MOD_smoke.c +++ b/source/blender/modifiers/intern/MOD_smoke.c @@ -98,7 +98,7 @@ static int dependsOnTime(ModifierData *UNUSED(md)) static void updateDepgraph(ModifierData *md, DagForest *forest, struct Scene *scene, - Object *ob, + Object *UNUSED(ob), DagNode *obNode) { SmokeModifierData *smd = (SmokeModifierData *) md;