diff --git a/source/blender/src/butspace.c b/source/blender/src/butspace.c index 507e89b3122..cdc99f13b82 100644 --- a/source/blender/src/butspace.c +++ b/source/blender/src/butspace.c @@ -148,7 +148,7 @@ void test_actionpoin_but(char *name, ID **idpp) id= G.main->action.first; while(id) { if( strcmp(name, id->name+2)==0 ) { - id_lib_extern(id); /* checks lib data, sets correct flag for saving then */ + id_us_plus(id); *idpp= id; return; } diff --git a/source/blender/src/buttons_editing.c b/source/blender/src/buttons_editing.c index 6fa00ff46a8..0c307382187 100644 --- a/source/blender/src/buttons_editing.c +++ b/source/blender/src/buttons_editing.c @@ -3172,6 +3172,9 @@ static void editing_panel_armature_type(Object *ob, bArmature *arm) but= uiDefButBitS(block, BUT_TOGDUAL, 1<layer, 0, 0, 0, 0, ""); uiButSetFunc(but, armature_layer_cb, &arm->layer, (void *)(1<pose) + ob->pose->proxy_layer= arm->layer; uiBlockBeginAlign(block); uiDefButI(block, ROW, REDRAWVIEW3D, "Octahedron", 10, 100,90,20, &arm->drawtype, 0, ARM_OCTA, 0, 0, "Draw bones as octahedra"); diff --git a/source/blender/src/edit.c b/source/blender/src/edit.c index 576b9c665d4..b915e1b6627 100644 --- a/source/blender/src/edit.c +++ b/source/blender/src/edit.c @@ -519,12 +519,12 @@ static void count_object(Object *ob, int sel, int totob) ModifierData *md = modifiers_findByType(ob, eModifierType_Subsurf); int totvert, totface; + subsurf= 1; if (md) { SubsurfModifierData *smd = (SubsurfModifierData*) md; - - subsurf= 1<<(2*smd->levels); + if(smd->modifier.mode & eModifierMode_Realtime) + subsurf= 1<<(2*smd->levels); } - else subsurf= 1; totvert= subsurf*me->totvert*totob; totface= subsurf*me->totface*totob; @@ -731,7 +731,7 @@ void countall() if(base->flag & SELECT) G.totobjsel++; - if(ob->parent && (ob->parent->transflag & OB_DUPLIVERTS)) { + if(ob->parent && (ob->parent->transflag & (OB_DUPLIVERTS|OB_DUPLIFACES))) { int tot= count_duplilist(ob->parent); G.totobj+=tot; count_object(ob, base->flag & SELECT, tot); diff --git a/source/blender/src/poseobject.c b/source/blender/src/poseobject.c index 7f61505131a..501c3977de1 100644 --- a/source/blender/src/poseobject.c +++ b/source/blender/src/poseobject.c @@ -917,6 +917,8 @@ void pose_movetolayer(void) if( movetolayer_short_buts(&lay, "Armature Layers")==0 ) return; if(lay==0) return; arm->layer= lay; + if(ob->pose) + ob->pose->proxy_layer= lay; allqueue(REDRAWVIEW3D, 0); allqueue(REDRAWACTION, 0);