Index: trunk/src/obj_pstk.c =================================================================== --- trunk/src/obj_pstk.c (revision 30389) +++ trunk/src/obj_pstk.c (revision 30390) @@ -1147,7 +1147,7 @@ return neck < min; } -void pcb_pstk_drc_check_and_warn(pcb_pstk_t *ps, pcb_coord_t *err_minring, pcb_coord_t *err_minhole) +void pcb_pstk_drc_check_and_warn(pcb_pstk_t *ps, pcb_coord_t *err_minring, pcb_coord_t *err_minhole, pcb_coord_t minring, pcb_coord_t mindrill) { pcb_pstk_proto_t *proto = pcb_pstk_get_proto(ps); @@ -1158,7 +1158,7 @@ for(n = 0; n < ts->len; n++) { if (!(ts->shape[n].layer_mask & PCB_LYT_COPPER)) continue; /* only copper shapes can break */ - if (pcb_pstk_shape_hole_break(&ts->shape[n], proto->hdia, conf_core.design.min_ring)) { + if (pcb_pstk_shape_hole_break(&ts->shape[n], proto->hdia, minring)) { (*err_minring)++; break; } @@ -1167,7 +1167,7 @@ TODO("slot: check if slot breaks other shapes") - if ((proto->hdia > 0) && (proto->hdia < conf_core.design.min_drill)) + if ((mindrill > 0) && (proto->hdia > 0) && (proto->hdia < mindrill)) *err_minhole = proto->hdia; } Index: trunk/src/obj_pstk.h =================================================================== --- trunk/src/obj_pstk.h (revision 30389) +++ trunk/src/obj_pstk.h (revision 30390) @@ -167,7 +167,7 @@ depend only on the padstack, not on other objects. load err_minring and err_minhole with the relevant data for the report when ring or hole rules are violated */ -void pcb_pstk_drc_check_and_warn(pcb_pstk_t *ps, pcb_coord_t *err_minring, pcb_coord_t *err_minhole); +void pcb_pstk_drc_check_and_warn(pcb_pstk_t *ps, pcb_coord_t *err_minring, pcb_coord_t *err_minhole, pcb_coord_t minring, pcb_coord_t mindrill); /* Generate poly->pa (which should be NULL at the time of call) */ void pcb_pstk_shape_update_pa(pcb_pstk_poly_t *poly); Index: trunk/src_plugins/drc_orig/drc_orig.c =================================================================== --- trunk/src_plugins/drc_orig/drc_orig.c (revision 30389) +++ trunk/src_plugins/drc_orig/drc_orig.c (revision 30390) @@ -256,7 +256,7 @@ { pcb_coord_t ring = 0, hole = 0; pcb_poly_plows(PCB->Data, PCB_OBJ_PSTK, padstack, padstack, drc_callback, lst); - pcb_pstk_drc_check_and_warn(padstack, &ring, &hole); + pcb_pstk_drc_check_and_warn(padstack, &ring, &hole, conf_core.design.min_ring, conf_core.design.min_drill); if ((ring > 0) || (hole > 0)) { pcb_pstk_invalidate_draw(padstack); if (ring) {