Index: trunk/src_plugins/exto_std/cord.c =================================================================== --- trunk/src_plugins/exto_std/cord.c (revision 28981) +++ trunk/src_plugins/exto_std/cord.c (revision 28982) @@ -34,6 +34,7 @@ #define COPPER_END 0 #define SILK_END 1 +static char cord_footprint[] = "fp"; static const char *group_of(pcb_any_obj_t *floater) { @@ -108,7 +109,7 @@ static void pcb_cord_draw_mark(pcb_draw_info_t *info, pcb_subc_t *subc) { pcb_exto_draw_makr(info, subc); - if (!PCB_FLAG_TEST(PCB_FLAG_LOCK, subc)) + if (subc->extobj_data == cord_footprint) pcb_draw_subc_mark((const pcb_box_t *)subc, info); } @@ -384,12 +385,15 @@ if (has_subc) { pcb_attribute_put(&subc->Attributes, "extobj::fixed_origin", "(yes)"); - PCB_FLAG_CLEAR(PCB_FLAG_LOCK, subc); pcb_subc_unreg(subc); pcb_subc_bbox(subc); pcb_subc_reg(dst, subc); + + subc->extobj_data = cord_footprint; } + else + subc->extobj_data = NULL; return subc;