Index: source/blender/src/editipo_mods.c =================================================================== --- source/blender/src/editipo_mods.c (revision 10870) +++ source/blender/src/editipo_mods.c (working copy) @@ -79,11 +79,9 @@ void ipo_toggle_showkey(void) { - if(G.sipo->showkey) { - G.sipo->showkey= 0; - swap_selectall_editipo(); /* sel all */ - } + if(G.sipo->showkey) G.sipo->showkey= 0; else G.sipo->showkey= 1; + free_ipokey(&G.sipo->ipokey); if(G.sipo->ipo) G.sipo->ipo->showkey= G.sipo->showkey; Index: source/blender/src/editobject.c =================================================================== --- source/blender/src/editobject.c (revision 10870) +++ source/blender/src/editobject.c (working copy) @@ -5184,18 +5184,17 @@ } else { base->object->ipoflag &= ~OB_DRAWKEY; + if(base->object->ipo) base->object->ipo->showkey= 0; } } base= base->next; } allqueue(REDRAWVIEW3D, 0); allqueue(REDRAWBUTSOBJECT, 0); - if(set) { - allqueue(REDRAWNLA, 0); - allqueue (REDRAWACTION, 0); - allspace(REMAKEIPO, 0); - allqueue(REDRAWIPO, 0); - } + allqueue(REDRAWNLA, 0); + allqueue (REDRAWACTION, 0); + allspace(REMAKEIPO, 0); + allqueue(REDRAWIPO, 0); } void select_select_keys(void)