Index: trunk/src/obj_pstk.c =================================================================== --- trunk/src/obj_pstk.c (revision 13053) +++ trunk/src/obj_pstk.c (revision 13054) @@ -618,11 +618,13 @@ if (y_offs != 0) { pcb_poly_restore_to_poly(ps->parent.data, PCB_TYPE_PSTK, NULL, ps); pcb_pstk_invalidate_erase(ps); - pcb_r_delete_entry(ps->parent.data->padstack_tree, (pcb_box_t *)ps); + if (ps->parent.data->padstack_tree != NULL) + pcb_r_delete_entry(ps->parent.data->padstack_tree, (pcb_box_t *)ps); pcb_pstk_move(ps, ps->x, ps->y + y_offs); - pcb_r_insert_entry(ps->parent.data->padstack_tree, (pcb_box_t *)ps, 0); + if (ps->parent.data->padstack_tree != NULL) + pcb_r_insert_entry(ps->parent.data->padstack_tree, (pcb_box_t *)ps, 0); pcb_poly_clear_from_poly(ps->parent.data, PCB_TYPE_PSTK, NULL, ps); pcb_pstk_invalidate_draw(ps); } Index: trunk/src/obj_pstk_op.c =================================================================== --- trunk/src/obj_pstk_op.c (revision 13053) +++ trunk/src/obj_pstk_op.c (revision 13054) @@ -114,11 +114,13 @@ assert(ps->parent_type = PCB_PARENT_DATA); if (ctx->clip.restore) { - pcb_r_delete_entry(data->padstack_tree, (pcb_box_t *)ps); + if (data->padstack_tree != NULL) + pcb_r_delete_entry(data->padstack_tree, (pcb_box_t *)ps); pcb_poly_restore_to_poly(data, PCB_TYPE_PSTK, NULL, ps); } if (ctx->clip.clear) { - pcb_r_insert_entry(data->padstack_tree, (pcb_box_t *)ps, 0); + if (data->padstack_tree != NULL) + pcb_r_insert_entry(data->padstack_tree, (pcb_box_t *)ps, 0); pcb_poly_clear_from_poly(data, PCB_TYPE_PSTK, NULL, ps); }