Index: trunk/src/find.c =================================================================== --- trunk/src/find.c (revision 37379) +++ trunk/src/find.c (revision 37380) @@ -103,7 +103,7 @@ pcb_pstk_shape_t *shp; /* do anything only if there are disjoint copper shapes */ - if ((proto == NULL) || (proto->all_copper_connd && proto->hplated) || ((pcb_pstk_t *)obj)->term) + if ((proto == NULL) || proto->all_copper_connd || ((pcb_pstk_t *)obj)->term) return; mm = pcb_find_get_mm(ctx, obj); @@ -173,7 +173,7 @@ rnd_layer_id_t lid; /* do anything only if there are disjoint copper shapes */ - if ((proto == NULL) || (proto->all_copper_connd && proto->hplated) || ((pcb_pstk_t *)obj)->term) + if ((proto == NULL) || proto->all_copper_connd || ((pcb_pstk_t *)obj)->term) return 1; mm = pcb_find_get_mm(ctx, obj); @@ -217,7 +217,7 @@ rnd_layer_id_t lid; /* do anything only if there are disjoint copper shapes */ - if ((proto == NULL) || (proto->all_copper_connd && proto->hplated) || ((pcb_pstk_t *)obj)->term) + if ((proto == NULL) || proto->all_copper_connd || ((pcb_pstk_t *)obj)->term) return 1; mm = pcb_find_get_mm(ctx, obj); Index: trunk/src/obj_pstk_proto.c =================================================================== --- trunk/src/obj_pstk_proto.c (revision 37379) +++ trunk/src/obj_pstk_proto.c (revision 37380) @@ -87,7 +87,7 @@ /* mark each shape with whether it overlaps with the hole/mech shape or not */ hole = pcb_pstk_shape_mech_or_hole_(NULL, dst, &holetmp); - dst->all_copper_connd = (hole != NULL); + dst->all_copper_connd = (hole != NULL) && dst->hplated; for(n = 0; n < ts->len; n++) { if ((ts->shape[n].layer_mask & PCB_LYT_COPPER) && !(ts->shape[n].layer_mask & PCB_LYT_INTERN)) coppers++;