Merged changes in the trunk up to revision 51126.
authorTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>
Sat, 6 Oct 2012 23:32:21 +0000 (23:32 +0000)
committerTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>
Sat, 6 Oct 2012 23:32:21 +0000 (23:32 +0000)
Conflicts resolved:
source/blender/blenloader/intern/readfile.c
source/blender/windowmanager/WM_types.h

20 files changed:
1  2 
release/scripts/startup/bl_ui/space_view3d.py
source/blender/blenkernel/intern/object.c
source/blender/blenkernel/intern/scene.c
source/blender/blenlib/intern/bpath.c
source/blender/blenloader/intern/readfile.c
source/blender/blenloader/intern/writefile.c
source/blender/bmesh/intern/bmesh_construct.c
source/blender/editors/interface/interface_templates.c
source/blender/editors/mesh/editmesh_select.c
source/blender/editors/mesh/editmesh_tools.c
source/blender/editors/space_view3d/drawobject.c
source/blender/editors/transform/transform.c
source/blender/makesdna/DNA_mesh_types.h
source/blender/makesdna/intern/makesdna.c
source/blender/makesrna/RNA_enum_types.h
source/blender/makesrna/intern/rna_internal.h
source/blender/makesrna/intern/rna_scene.c
source/blender/render/intern/source/convertblender.c
source/blender/windowmanager/WM_types.h
source/blender/windowmanager/intern/wm_files.c

Simple merge
@@@ -8196,36 -7988,34 +8177,64 @@@ static void do_versions(FileData *fd, L
                }
        }
  
+       /* correction for files saved in blender version when BKE_pose_copy_data
+        * didn't copy animation visualization, which lead to deadlocks on motion
+        * path calculation for proxied armatures, see [#32742]
+        */
+       if (main->versionfile < 264) {
+               Object *ob;
+               for (ob = main->object.first; ob; ob = ob->id.next) {
+                       if (ob->pose) {
+                               if (ob->pose->avs.path_step == 0) {
+                                       animviz_settings_init(&ob->pose->avs);
+                               }
+                       }
+               }
+       }
+       if (main->versionfile < 264 || (main->versionfile == 264 && main->subversionfile < 1)) {
+               bNodeTreeType *ntreetype = ntreeGetType(NTREE_SHADER);
+               bNodeTree *ntree;
+               if (ntreetype && ntreetype->foreach_nodetree)
+                       ntreetype->foreach_nodetree(main, NULL, do_version_ntree_tex_coord_from_dupli_264);
+               
+               for (ntree=main->nodetree.first; ntree; ntree=ntree->id.next)
+                       if (ntree->type==NTREE_SHADER)
+                               do_version_ntree_tex_coord_from_dupli_264(NULL, NULL, ntree);
+       }
 +      /* default values in Freestyle settings */
 +      {
 +              Scene *sce;
 +              SceneRenderLayer *srl;
 +              FreestyleLineStyle *linestyle;
 +
 +              for(sce = main->scene.first; sce; sce = sce->id.next) {
 +                      if (sce->r.line_thickness_mode == 0) {
 +                              sce->r.line_thickness_mode= R_LINE_THICKNESS_ABSOLUTE;
 +                              sce->r.unit_line_thickness= 1.f;
 +                      }
 +                      for(srl= sce->r.layers.first; srl; srl= srl->next) {
 +                              if (srl->freestyleConfig.mode == 0)
 +                                      srl->freestyleConfig.mode= FREESTYLE_CONTROL_EDITOR_MODE;
 +                              if (srl->freestyleConfig.raycasting_algorithm == 0)
 +                                      srl->freestyleConfig.raycasting_algorithm= FREESTYLE_ALGO_CULLED_ADAPTIVE_CUMULATIVE;
 +                      }
 +              }
 +              for(linestyle = main->linestyle.first; linestyle; linestyle = linestyle->id.next) {
 +                      if (linestyle->thickness_position == 0) {
 +                              linestyle->thickness_position= LS_THICKNESS_CENTER;
 +                              linestyle->thickness_ratio= 0.5f;
 +                      }
 +                      if (linestyle->chaining == 0)
 +                              linestyle->chaining= LS_CHAINING_PLAIN;
 +                      if (linestyle->rounds == 0)
 +                              linestyle->rounds= 3;
 +              }
 +      }
 +
        /* WATCH IT!!!: pointers from libdata have not been converted yet here! */
        /* WATCH IT 2!: Userdef struct init has to be in editors/interface/resources.c! */
  
@@@ -238,7 -238,7 +238,8 @@@ typedef struct wmNotifier 
  #define NC_LOGIC                      (19<<24)
  #define NC_MOVIECLIP                  (20<<24)
  #define NC_MASK                               (21<<24)
- #define NC_LINESTYLE                  (22<<24)
+ #define NC_GPENCIL                    (22<<24)
++#define NC_LINESTYLE                  (23<<24)
  
  /* data type, 256 entries is enough, it can overlap */
  #define NOTE_DATA                     0x00FF0000