[Bf-blender-cvs] [620b960d3d8] master: Cleanup: style, use braces for editors

Campbell Barton noreply at git.blender.org
Mon Apr 22 13:15:34 CEST 2019


Commit: 620b960d3d8cfd90b9f0df6ba3671c33eccb8309
Author: Campbell Barton
Date:   Mon Apr 22 09:19:45 2019 +1000
Branches: master
https://developer.blender.org/rB620b960d3d8cfd90b9f0df6ba3671c33eccb8309

Cleanup: style, use braces for editors

===================================================================

M	source/blender/editors/animation/anim_channels_defines.c
M	source/blender/editors/animation/anim_channels_edit.c
M	source/blender/editors/animation/anim_deps.c
M	source/blender/editors/animation/anim_draw.c
M	source/blender/editors/animation/anim_filter.c
M	source/blender/editors/animation/anim_ipo_utils.c
M	source/blender/editors/animation/anim_markers.c
M	source/blender/editors/animation/anim_motion_paths.c
M	source/blender/editors/animation/anim_ops.c
M	source/blender/editors/animation/drivers.c
M	source/blender/editors/animation/fmodifier_ui.c
M	source/blender/editors/animation/keyframes_draw.c
M	source/blender/editors/animation/keyframes_edit.c
M	source/blender/editors/animation/keyframes_general.c
M	source/blender/editors/animation/keyframing.c
M	source/blender/editors/animation/keyingsets.c
M	source/blender/editors/armature/armature_add.c
M	source/blender/editors/armature/armature_edit.c
M	source/blender/editors/armature/armature_naming.c
M	source/blender/editors/armature/armature_relations.c
M	source/blender/editors/armature/armature_select.c
M	source/blender/editors/armature/armature_skinning.c
M	source/blender/editors/armature/armature_utils.c
M	source/blender/editors/armature/meshlaplacian.c
M	source/blender/editors/armature/pose_edit.c
M	source/blender/editors/armature/pose_group.c
M	source/blender/editors/armature/pose_lib.c
M	source/blender/editors/armature/pose_select.c
M	source/blender/editors/armature/pose_slide.c
M	source/blender/editors/armature/pose_transform.c
M	source/blender/editors/armature/pose_utils.c
M	source/blender/editors/gizmo_library/gizmo_library_utils.c
M	source/blender/editors/gizmo_library/gizmo_types/cage2d_gizmo.c
M	source/blender/editors/gizmo_library/gizmo_types/cage3d_gizmo.c
M	source/blender/editors/gpencil/annotate_draw.c
M	source/blender/editors/gpencil/annotate_paint.c
M	source/blender/editors/gpencil/drawgpencil.c
M	source/blender/editors/gpencil/editaction_gpencil.c
M	source/blender/editors/gpencil/gpencil_armature.c
M	source/blender/editors/gpencil/gpencil_brush.c
M	source/blender/editors/gpencil/gpencil_convert.c
M	source/blender/editors/gpencil/gpencil_data.c
M	source/blender/editors/gpencil/gpencil_edit.c
M	source/blender/editors/gpencil/gpencil_fill.c
M	source/blender/editors/gpencil/gpencil_interpolate.c
M	source/blender/editors/gpencil/gpencil_merge.c
M	source/blender/editors/gpencil/gpencil_paint.c
M	source/blender/editors/gpencil/gpencil_primitive.c
M	source/blender/editors/gpencil/gpencil_select.c
M	source/blender/editors/gpencil/gpencil_utils.c
M	source/blender/editors/io/io_alembic.c
M	source/blender/editors/io/io_collada.c
M	source/blender/editors/lattice/editlattice_select.c
M	source/blender/editors/lattice/editlattice_tools.c
M	source/blender/editors/mask/mask_add.c
M	source/blender/editors/mask/mask_draw.c
M	source/blender/editors/mask/mask_edit.c
M	source/blender/editors/mask/mask_editaction.c
M	source/blender/editors/mask/mask_ops.c
M	source/blender/editors/mask/mask_select.c
M	source/blender/editors/mesh/editface.c
M	source/blender/editors/mesh/editmesh_bevel.c
M	source/blender/editors/mesh/editmesh_extrude.c
M	source/blender/editors/mesh/editmesh_extrude_screw.c
M	source/blender/editors/mesh/editmesh_inset.c
M	source/blender/editors/mesh/editmesh_intersect.c
M	source/blender/editors/mesh/editmesh_knife.c
M	source/blender/editors/mesh/editmesh_loopcut.c
M	source/blender/editors/mesh/editmesh_path.c
M	source/blender/editors/mesh/editmesh_preselect_edgering.c
M	source/blender/editors/mesh/editmesh_rip.c
M	source/blender/editors/mesh/editmesh_rip_edge.c
M	source/blender/editors/mesh/editmesh_select.c
M	source/blender/editors/mesh/editmesh_select_similar.c
M	source/blender/editors/mesh/editmesh_tools.c
M	source/blender/editors/mesh/editmesh_utils.c
M	source/blender/editors/mesh/mesh_data.c
M	source/blender/editors/mesh/mesh_mirror.c
M	source/blender/editors/mesh/meshtools.c
M	source/blender/editors/object/object_add.c
M	source/blender/editors/object/object_bake.c
M	source/blender/editors/object/object_bake_api.c
M	source/blender/editors/object/object_collection.c
M	source/blender/editors/object/object_constraint.c
M	source/blender/editors/object/object_edit.c
M	source/blender/editors/object/object_facemap_ops.c
M	source/blender/editors/object/object_gpencil_modifier.c
M	source/blender/editors/object/object_hook.c
M	source/blender/editors/object/object_modes.c
M	source/blender/editors/object/object_modifier.c
M	source/blender/editors/object/object_relations.c
M	source/blender/editors/object/object_select.c
M	source/blender/editors/object/object_shader_fx.c
M	source/blender/editors/object/object_shapekey.c
M	source/blender/editors/object/object_transform.c
M	source/blender/editors/object/object_vgroup.c
M	source/blender/editors/physics/dynamicpaint_ops.c
M	source/blender/editors/physics/particle_boids.c
M	source/blender/editors/physics/particle_edit.c
M	source/blender/editors/physics/particle_object.c
M	source/blender/editors/physics/physics_fluid.c
M	source/blender/editors/physics/rigidbody_constraint.c
M	source/blender/editors/physics/rigidbody_object.c
M	source/blender/editors/physics/rigidbody_world.c
M	source/blender/editors/render/render_internal.c
M	source/blender/editors/render/render_opengl.c
M	source/blender/editors/render/render_preview.c
M	source/blender/editors/render/render_shading.c
M	source/blender/editors/render/render_update.c
M	source/blender/editors/render/render_view.c
M	source/blender/editors/scene/scene_edit.c
M	source/blender/editors/screen/area.c
M	source/blender/editors/screen/glutil.c
M	source/blender/editors/screen/screen_context.c
M	source/blender/editors/screen/screen_edit.c
M	source/blender/editors/screen/screen_geometry.c
M	source/blender/editors/screen/screen_ops.c
M	source/blender/editors/screen/screendump.c
M	source/blender/editors/sculpt_paint/paint_cursor.c
M	source/blender/editors/sculpt_paint/paint_curve.c
M	source/blender/editors/sculpt_paint/paint_hide.c
M	source/blender/editors/sculpt_paint/paint_image.c
M	source/blender/editors/sculpt_paint/paint_image_2d.c
M	source/blender/editors/sculpt_paint/paint_image_proj.c
M	source/blender/editors/sculpt_paint/paint_mask.c
M	source/blender/editors/sculpt_paint/paint_ops.c
M	source/blender/editors/sculpt_paint/paint_stroke.c
M	source/blender/editors/sculpt_paint/paint_utils.c
M	source/blender/editors/sculpt_paint/paint_vertex.c
M	source/blender/editors/sculpt_paint/paint_vertex_color_ops.c
M	source/blender/editors/sculpt_paint/sculpt.c
M	source/blender/editors/sculpt_paint/sculpt_undo.c
M	source/blender/editors/sculpt_paint/sculpt_uv.c
M	source/blender/editors/sound/sound_ops.c
M	source/blender/editors/space_action/action_data.c
M	source/blender/editors/space_action/action_draw.c
M	source/blender/editors/space_action/action_edit.c
M	source/blender/editors/space_action/action_select.c
M	source/blender/editors/space_action/space_action.c
M	source/blender/editors/space_api/spacetypes.c
M	source/blender/editors/space_clip/clip_buttons.c
M	source/blender/editors/space_clip/clip_dopesheet_draw.c
M	source/blender/editors/space_clip/clip_dopesheet_ops.c
M	source/blender/editors/space_clip/clip_draw.c
M	source/blender/editors/space_clip/clip_editor.c
M	source/blender/editors/space_clip/clip_graph_draw.c
M	source/blender/editors/space_clip/clip_graph_ops.c
M	source/blender/editors/space_clip/clip_ops.c
M	source/blender/editors/space_clip/clip_toolbar.c
M	source/blender/editors/space_clip/clip_utils.c
M	source/blender/editors/space_clip/space_clip.c
M	source/blender/editors/space_clip/tracking_ops.c
M	source/blender/editors/space_clip/tracking_ops_orient.c
M	source/blender/editors/space_clip/tracking_ops_solve.c
M	source/blender/editors/space_clip/tracking_select.c
M	source/blender/editors/space_file/file_draw.c
M	source/blender/editors/space_file/file_ops.c
M	source/blender/editors/space_file/filelist.c
M	source/blender/editors/space_file/filesel.c
M	source/blender/editors/space_file/fsmenu.c
M	source/blender/editors/space_file/space_file.c
M	source/blender/editors/space_graph/graph_buttons.c
M	source/blender/editors/space_graph/graph_draw.c
M	source/blender/editors/space_graph/graph_edit.c
M	source/blender/editors/space_graph/graph_ops.c
M	source/blender/editors/space_graph/graph_select.c
M	source/blender/editors/space_graph/graph_utils.c
M	source/blender/editors/space_graph/space_graph.c
M	source/blender/editors/space_info/textview.c
M	source/blender/editors/space_nla/nla_buttons.c
M	source/blender/editors/space_nla/nla_channels.c
M	source/blender/editors/space_nla/nla_draw.c
M	source/blender/editors/space_nla/nla_edit.c
M	source/blender/editors/space_nla/nla_ops.c
M	source/blender/editors/space_nla/nla_select.c
M	source/blender/editors/space_nla/space_nla.c
M	source/blender/editors/space_outliner/outliner_select.c
M	source/blender/editors/space_outliner/outliner_tree.c
M	source/blender/editors/space_text/space_text.c
M	source/blender/editors/space_text/text_autocomplete.c
M	source/blender/editors/space_text/text_draw.c
M	source/blender/editors/space_text/text_format.c
M	source/blender/editors/space_text/text_format_lua.c
M	source/blender/editors/space_text/text_format_osl.c
M	source/blender/editors/space_text/text_format_pov.c
M	source/blender/editors/space_text/text_format_pov_ini.c
M	source/blender/editors/space_text/text_format_py.c
M	source/blender/editors/space_text/text_header.c
M	source/blender/editors/space_text/text_ops.c
M	source/blender/editors/transform/transform.c
M	source/blender/editors/transform/transform_constraints.c
M	source/blender/editors/transform/transform_conversions.c
M	source/blender/editors/transform/transform_generics.c
M	source/blender/editors/transform/transform_gizmo_2d.c
M	source/blender/editors/transform/transform_gizmo_3d.c
M	source/blender/editors/transform/transform_input.c
M	source/blender/editors/transform/transform_ops.c
M	source/blender/editors/transform/transform_orientations.c
M	source/blender/editors/transform/transform_snap.c
M	source/blender/editors/transform/transform_snap_object.c
M	source/blender/editors/undo/ed_undo.c
M	source/blender/editors/util/ed_transverts.c
M	source/blender/editors/util/ed_util.c
M	source/blender/editors/uvedit/uvedit_buttons.c
M	source/blender/editors/uvedit/uvedit_draw.c
M	source/blender/editors/uvedit/uvedit_ops.c
M	source/blender/editors/uvedit/uvedit_parametrizer.c
M	source/blender/editors/uvedit/uvedit_smart_stitch.c
M	source/blender/editors/uvedit/uvedit_unwrap_ops.c

===================================================================

diff --git a/source/blender/editors/animation/anim_channels_defines.c b/source/blender/editors/animation/anim_channels_defines.c
index a17ee820595..bab76911449 100644
--- a/source/blender/editors/animation/anim_channels_defines.c
+++ b/source/blender/editors/animation/anim_channels_defines.c
@@ -298,8 +298,9 @@ static short acf_generic_indention_flexible(bAnimContext *UNUSED(ac), bAnimListE
     FCurve *fcu = (FCurve *)ale->data;
 
     // TODO: we need some way of specifying that the indention color should be one less...
-    if (fcu->grp)
+    if (fcu->grp) {
       indent++;
+    }
   }
 
   /* no indention */
@@ -311,10 +312,12 @@ static short acf_generic_basic_offset(bAnimContext *ac, bAnimListElem *ale)
 {
   const bAnimChannelType *acf = ANIM_channel_get_typeinfo(ale);
 
-  if (acf && acf->get_indent_level)
+  if (acf && acf->get_indent_level) {
     return acf->get_indent_level(ac, ale) * INDENT_STEP_SIZE;
-  else
+  }
+  else {
     return 0;
+  }
 }
 
 /* offset based on nodetree type */
@@ -353,13 +356,15 @@ static short acf_generic_group_offset(bAnimContext *ac, bAnimListElem *ale)
       offset += U.widget_unit;
     }
     /* materials and particles animdata */
-    else if (ELEM(GS(ale->id->name), ID_MA, ID_PA))
+    else if (ELEM(GS(ale->id->name), ID_MA, ID_PA)) {
       offset += (short)(0.7f * U.widget_unit);
 
-    /* If not in Action Editor mode, action-groups (and their children)
+      /* If not in Action Editor mode, action-groups (and their children)
      * must carry some offset too. */
-    else if (ac->datatype != ANIMCONT_ACTION)
+    }
+    else if (ac->datatype != ANIMCONT_ACTION) {
       offset += (short)(0.7f * U.widget_unit);
+    }
 
     /* nodetree animdata */
     if (GS(ale->id->name) == ID_NT) {
@@ -379,8 +384,9 @@ static void acf_generic_idblock_name(bAnimListElem *ale, char *name)
   ID *id = (ID *)ale->data; /* data pointed to should be an ID block */
 
   /* just copy the name... */
-  if (id && name)
+  if (id && name) {
     BLI_strncpy(name, id->name + 2, ANIM_CHAN_NAME_SIZE);
+  }
 }
 
 /* name property for ID block entries */
@@ -477,8 +483,9 @@ static void acf_summary_backdrop(bAnimContext *ac, bAnimListElem *ale, float ymi
 /* name for summary entries */
 static void acf_summary_name(bAnimListElem *UNUSED(ale), char *name)
 {
-  if (name)
+  if (name) {
     BLI_strncpy(name, IFACE_("Dope Sheet Summary"), ANIM_CHAN_NAME_SIZE);
+  }
 }
 
 // FIXME: this is really a temp icon I think
@@ -636,8 +643,9 @@ static void *acf_scene_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings set
 
     case ACHANNEL_SETTING_MUTE:    /* mute (only in NLA) */
     case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
-      if (scene->adt)
+      if (scene->adt) {
         return GET_ACF_FLAG_PTR(scene->adt->flag, type);
+      }
       return NULL;
 
     default: /* unsupported */
@@ -711,8 +719,9 @@ static void acf_object_name(bAnimListElem *ale, char *name)
   Object *ob = base->object;
 
   /* just copy the name... */
-  if (ob && name)
+  if (ob && name) {
     BLI_strncpy(name, ob->id.name + 2, ANIM_CHAN_NAME_SIZE);
+  }
 }
 
 /* name property for object */
@@ -804,8 +813,9 @@ static void *acf_object_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings se
     case ACHANNEL_SETTING_MUTE:    /* mute (only in NLA) */
     case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
     case ACHANNEL_SETTING_ALWAYS_VISIBLE:
-      if (ob->adt)
+      if (ob->adt) {
         return GET_ACF_FLAG_PTR(ob->adt->flag, type);
+      }
       return NULL;
 
     default: /* unsupported */
@@ -844,20 +854,24 @@ static void acf_group_color(bAnimContext *ac, bAnimListElem *ale, float r_color[
     unsigned char cp[3];
 
     /* highlight only for active */
-    if (ale->flag & AGRP_ACTIVE)
+    if (ale->flag & AGRP_ACTIVE) {
       copy_v3_v3_char((char *)cp, agrp->cs.select);
-    else
+    }
+    else {
       copy_v3_v3_char((char *)cp, agrp->cs.solid);
+    }
 
     /* copy the colors over, transforming from bytes to floats */
     rgb_uchar_to_float(r_color, cp);
   }
   else {
     /* highlight only for active */
-    if (ale->flag & AGRP_ACTIVE)
+    if (ale->flag & AGRP_ACTIVE) {
       UI_GetThemeColor3fv(TH_GROUP_ACTIVE, r_color);
-    else
+    }
+    else {
       UI_GetThemeColor3fv(TH_GROUP, r_color);
+    }
   }
 }
 
@@ -885,8 +899,9 @@ static void acf_group_name(bAnimListElem *ale, char *name)
   bActionGroup *agrp = (bActionGroup *)ale->data;
 
   /* just copy the name... */
-  if (agrp && name)
+  if (agrp && name) {
     BLI_strncpy(name, agrp->name, ANIM_CHAN_NAME_SIZE);
+  }
 }
 
 /* name property for group entries */
@@ -1039,10 +1054,12 @@ static bool acf_fcurve_setting_valid(bAnimContext *ac,
 
     /* conditionally available */
     case ACHANNEL_SETTING_PROTECT: /* Protection is only valid when there's keyframes */
-      if (fcu->bezt)
+      if (fcu->bezt) {
         return true;
-      else
+      }
+      else {
         return false;  // NOTE: in this special case, we need to draw ICON_ZOOMOUT
+      }
 
     case ACHANNEL_SETTING_VISIBLE: /* Only available in Graph Editor */
       return (ac->spacetype == SPACE_GRAPH);
@@ -1492,8 +1509,9 @@ static void *acf_dsmat_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings set
     case ACHANNEL_SETTING_SELECT:  /* selected */
     case ACHANNEL_SETTING_MUTE:    /* muted (for NLA only) */
     case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
-      if (ma->adt)
+      if (ma->adt) {
         return GET_ACF_FLAG_PTR(ma->adt->flag, type);
+      }
       return NULL;
 
     default: /* unsupported */
@@ -1572,8 +1590,9 @@ static void *acf_dslight_setting_ptr(bAnimListElem *ale,
     case ACHANNEL_SETTING_SELECT:  /* selected */
     case ACHANNEL_SETTING_MUTE:    /* muted (for NLA only) */
     case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
-      if (la->adt)
+      if (la->adt) {
         return GET_ACF_FLAG_PTR(la->adt->flag, type);
+      }
       return NULL;
 
     default: /* unsupported */
@@ -1657,8 +1676,9 @@ static void *acf_dstex_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings set
     case ACHANNEL_SETTING_SELECT:  /* selected */
     case ACHANNEL_SETTING_MUTE:    /* muted (for NLA only) */
     case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
-      if (tex->adt)
+      if (tex->adt) {
         return GET_ACF_FLAG_PTR(tex->adt->flag, type);
+      }
       return NULL;
 
     default: /* unsupported */
@@ -1822,8 +1842,9 @@ static void *acf_dscam_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings set
     case ACHANNEL_SETTING_MUTE:    /* muted (for NLA only) */
     case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
     case ACHANNEL_SETTING_ALWAYS_VISIBLE:
-      if (ca->adt)
+      if (ca->adt) {
         return GET_ACF_FLAG_PTR(ca->adt->flag, type);
+      }
       return NULL;
 
     default: /* unsupported */
@@ -1910,8 +1931,9 @@ static void *acf_dscur_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings set
     case ACHANNEL_SETTING_SELECT:  /* selected */
     case ACHANNEL_SETTING_MUTE:    /* muted (for NLA only) */
     case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
-      if (cu->adt)
+      if (cu->adt) {
         return GET_ACF_FLAG_PTR(cu->adt->flag, type);
+      }
       return NULL;
 
     default: /* unsupported */
@@ -1988,8 +2010,9 @@ static void *acf_dsskey_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings se
     case ACHANNEL_SETTING_SELECT:  /* selected */
     case ACHANNEL_SETTING_MUTE:    /* muted (for NLA only) */
     case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
-      if (key->adt)
+      if (key->adt) {
         return GET_ACF_FLAG_PTR(key->adt->flag, type);
+      }
       return NULL;
 
     default: /* unsupported */
@@ -2066,8 +2089,9 @@ static void *acf_dswor_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings set
     case ACHANNEL_SETTING_SELECT:  /* selected */
     case ACHANNEL_SETTING_MUTE:    /* muted (for NLA only) */
     case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
-      if (wo->adt)
+      if (wo->adt) {
         return GET_ACF_FLAG_PTR(wo->adt->flag, type);
+      }
       return NULL;
 
     default: /* unsupported */
@@ -2144,8 +2168,9 @@ static void *acf_dspart_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings se
     case ACHANNEL_SETTING_SELECT:  /* selected */
     case ACHANNEL_SETTING_MUTE:    /* muted (for NLA only) */
     case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
-      if (part->adt)
+      if (part->adt) {
         return GET_ACF_FLAG_PTR(part->adt->flag, type);
+      }
       return NULL;
 
     default: /* unsupported */
@@ -2224,8 +2249,9 @@ static void *acf_dsmball_setting_ptr(bAnimListElem *ale,
     case ACHANNEL_SETTING_SELECT:  /* selected */
     case ACHANNEL_SETTING_MUTE:    /* muted (for NLA only) */
     case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
-      if (mb->adt)
+      if (mb->adt) {
         return GET_ACF_FLAG_PTR(mb->adt->flag, type);
+      }
       return NULL;
 
     default: /* unsupported */
@@ -2302,8 +2328,9 @@ static void *acf_dsarm_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings set
     case ACHANNEL_SETTING_SELECT:  /* selected */
     case ACHANNEL_SETTING_MUTE:    /* muted (for NLA only) */
     case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
-      if (arm->adt)
+      if (arm->adt) {
         return GET_ACF_FLAG_PTR(arm->adt->flag, type);
+      }
       return NULL;
 
     default: /* unsupported */
@@ -2393,8 +2420,9 @@ static void *acf_dsntree_setting_ptr(bAnimListElem *ale,
     case ACHANNEL_SETTING_SELECT:  /* selected */
     case ACHANNEL_SETTING_MUTE:    /* muted (for NLA only) */
     case ACHANNEL_SETTING_VISIBLE: /* visible (for Graph Editor only) */
-      if (ntree->adt)
+      if (ntree->adt) {
         return GET_ACF_FLAG_PTR(ntree->adt->flag, type);
+      }
       return NULL;
 
     default: /* unsupported */
@@ -2473,8 +2501,9 @@ static void *acf_dslinestyle_setting_ptr(bAnimListElem *ale,
     case ACHANNEL_SETTING_SELECT:  /* selected */

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list