Index: trunk/src/layer.c =================================================================== --- trunk/src/layer.c (revision 13679) +++ trunk/src/layer.c (revision 13680) @@ -589,10 +589,10 @@ void pcb_layer_link_trees(pcb_layer_t *dst, pcb_layer_t *src) { /* we can't link non-existing trees - make sure src does have the trees initialized */ - if (src->line_tree == NULL) src->line_tree = pcb_r_create_tree(NULL, 0, 0); - if (src->arc_tree == NULL) src->arc_tree = pcb_r_create_tree(NULL, 0, 0); - if (src->text_tree == NULL) src->text_tree = pcb_r_create_tree(NULL, 0, 0); - if (src->polygon_tree == NULL) src->polygon_tree = pcb_r_create_tree(NULL, 0, 0); + if (src->line_tree == NULL) src->line_tree = pcb_r_create_tree(); + if (src->arc_tree == NULL) src->arc_tree = pcb_r_create_tree(); + if (src->text_tree == NULL) src->text_tree = pcb_r_create_tree(); + if (src->polygon_tree == NULL) src->polygon_tree = pcb_r_create_tree(); dst->line_tree = src->line_tree; dst->arc_tree = src->arc_tree; Index: trunk/src/obj_arc.c =================================================================== --- trunk/src/obj_arc.c (revision 13679) +++ trunk/src/obj_arc.c (revision 13680) @@ -255,7 +255,7 @@ { pcb_arc_bbox(Arc); if (!Layer->arc_tree) - Layer->arc_tree = pcb_r_create_tree(NULL, 0, 0); + Layer->arc_tree = pcb_r_create_tree(); pcb_r_insert_entry(Layer->arc_tree, (pcb_box_t *) Arc, 0); Arc->type = PCB_OBJ_ARC; PCB_SET_PARENT(Arc, layer, Layer); @@ -340,7 +340,7 @@ PCB_FLAG_CLEAR(PCB_FLAG_FOUND, arc); if (!lay->arc_tree) - lay->arc_tree = pcb_r_create_tree(NULL, 0, 0); + lay->arc_tree = pcb_r_create_tree(); pcb_r_insert_entry(lay->arc_tree, (pcb_box_t *) arc, 0); pcb_poly_clear_from_poly(ctx->buffer.dst, PCB_TYPE_ARC, lay, arc); @@ -574,7 +574,7 @@ arclist_append(&Destination->Arc, arc); if (!Destination->arc_tree) - Destination->arc_tree = pcb_r_create_tree(NULL, 0, 0); + Destination->arc_tree = pcb_r_create_tree(); pcb_r_insert_entry(Destination->arc_tree, (pcb_box_t *) arc, 0); PCB_SET_PARENT(arc, layer, Destination); Index: trunk/src/obj_elem.c =================================================================== --- trunk/src/obj_elem.c (revision 13679) +++ trunk/src/obj_elem.c (revision 13680) @@ -808,7 +808,7 @@ pcb_r_delete_entry(Data->name_tree[n], (pcb_box_t *) text); pcb_text_bbox(Font, text); if (Data && !Data->name_tree[n]) - Data->name_tree[n] = pcb_r_create_tree(NULL, 0, 0); + Data->name_tree[n] = pcb_r_create_tree(); if (Data) pcb_r_insert_entry(Data->name_tree[n], (pcb_box_t *) text, 0); } @@ -851,7 +851,7 @@ pcb_pin_bbox(pin); if (Data) { if (!Data->pin_tree) - Data->pin_tree = pcb_r_create_tree(NULL, 0, 0); + Data->pin_tree = pcb_r_create_tree(); pcb_r_insert_entry(Data->pin_tree, (pcb_box_t *) pin, 0); } PCB_MAKE_MIN(box->X1, pin->BoundingBox.X1); @@ -871,7 +871,7 @@ pcb_pad_bbox(pad); if (Data) { if (!Data->pad_tree) - Data->pad_tree = pcb_r_create_tree(NULL, 0, 0); + Data->pad_tree = pcb_r_create_tree(); pcb_r_insert_entry(Data->pad_tree, (pcb_box_t *) pad, 0); } PCB_MAKE_MIN(box->X1, pad->BoundingBox.X1); @@ -924,7 +924,7 @@ pcb_close_box(box); pcb_close_box(vbox); if (Data && !Data->element_tree) - Data->element_tree = pcb_r_create_tree(NULL, 0, 0); + Data->element_tree = pcb_r_create_tree(); if (Data) pcb_r_insert_entry(Data->element_tree, box, 0); } Index: trunk/src/obj_line.c =================================================================== --- trunk/src/obj_line.c (revision 13679) +++ trunk/src/obj_line.c (revision 13680) @@ -248,7 +248,7 @@ { pcb_line_bbox(Line); if (!Layer->line_tree) - Layer->line_tree = pcb_r_create_tree(NULL, 0, 0); + Layer->line_tree = pcb_r_create_tree(); pcb_r_insert_entry(Layer->line_tree, (pcb_box_t *) Line, 0); } @@ -364,7 +364,7 @@ PCB_FLAG_CLEAR(PCB_FLAG_FOUND, line); if (!lay->line_tree) - lay->line_tree = pcb_r_create_tree(NULL, 0, 0); + lay->line_tree = pcb_r_create_tree(); pcb_r_insert_entry(lay->line_tree, (pcb_box_t *) line, 0); pcb_poly_clear_from_poly(ctx->buffer.dst, PCB_TYPE_LINE, lay, line); @@ -604,7 +604,7 @@ linelist_append(&(Destination->Line), line); if (!Destination->line_tree) - Destination->line_tree = pcb_r_create_tree(NULL, 0, 0); + Destination->line_tree = pcb_r_create_tree(); pcb_r_insert_entry(Destination->line_tree, (pcb_box_t *) line, 0); PCB_SET_PARENT(line, layer, Destination); Index: trunk/src/obj_pinvia.c =================================================================== --- trunk/src/obj_pinvia.c (revision 13679) +++ trunk/src/obj_pinvia.c (revision 13680) @@ -233,7 +233,7 @@ { pcb_pin_bbox(Via); if (!Data->via_tree) - Data->via_tree = pcb_r_create_tree(NULL, 0, 0); + Data->via_tree = pcb_r_create_tree(); pcb_r_insert_entry(Data->via_tree, (pcb_box_t *) Via, 0); PCB_SET_PARENT(Via, data, Data); } @@ -371,7 +371,7 @@ PCB_FLAG_CLEAR(PCB_FLAG_WARN | PCB_FLAG_FOUND, via); if (!ctx->buffer.dst->via_tree) - ctx->buffer.dst->via_tree = pcb_r_create_tree(NULL, 0, 0); + ctx->buffer.dst->via_tree = pcb_r_create_tree(); pcb_r_insert_entry(ctx->buffer.dst->via_tree, (pcb_box_t *) via, 0); pcb_poly_clear_from_poly(ctx->buffer.dst, PCB_TYPE_VIA, via, via); PCB_SET_PARENT(via, data, ctx->buffer.dst); Index: trunk/src/obj_poly.c =================================================================== --- trunk/src/obj_poly.c (revision 13679) +++ trunk/src/obj_poly.c (revision 13680) @@ -242,7 +242,7 @@ { pcb_poly_bbox(polygon); if (!Layer->polygon_tree) - Layer->polygon_tree = pcb_r_create_tree(NULL, 0, 0); + Layer->polygon_tree = pcb_r_create_tree(); pcb_r_insert_entry(Layer->polygon_tree, (pcb_box_t *) polygon, 0); PCB_SET_PARENT(polygon, layer, Layer); pcb_poly_clear_from_poly(Layer->parent, PCB_TYPE_POLY, Layer, polygon); @@ -391,7 +391,7 @@ * skeleton polygon object, which won't have correct bounds. */ if (!layer->polygon_tree) - layer->polygon_tree = pcb_r_create_tree(NULL, 0, 0); + layer->polygon_tree = pcb_r_create_tree(); pcb_r_insert_entry(layer->polygon_tree, (pcb_box_t *) polygon, 0); PCB_FLAG_CLEAR(PCB_FLAG_FOUND | ctx->buffer.extraflg, polygon); @@ -414,7 +414,7 @@ PCB_FLAG_CLEAR(PCB_FLAG_FOUND, polygon); if (!lay->polygon_tree) - lay->polygon_tree = pcb_r_create_tree(NULL, 0, 0); + lay->polygon_tree = pcb_r_create_tree(); pcb_r_insert_entry(lay->polygon_tree, (pcb_box_t *) polygon, 0); PCB_SET_PARENT(polygon, layer, lay); @@ -600,7 +600,7 @@ polylist_append(&Destination->Polygon, polygon); if (!Destination->polygon_tree) - Destination->polygon_tree = pcb_r_create_tree(NULL, 0, 0); + Destination->polygon_tree = pcb_r_create_tree(); pcb_r_insert_entry(Destination->polygon_tree, (pcb_box_t *) polygon, 0); PCB_SET_PARENT(polygon, layer, Destination); @@ -844,7 +844,7 @@ pcb_poly_copy(polygon, Polygon, ctx->copy.DeltaX, ctx->copy.DeltaY); pcb_poly_copy_meta(polygon, Polygon); if (!Layer->polygon_tree) - Layer->polygon_tree = pcb_r_create_tree(NULL, 0, 0); + Layer->polygon_tree = pcb_r_create_tree(); pcb_r_insert_entry(Layer->polygon_tree, (pcb_box_t *) polygon, 0); pcb_poly_init_clip(PCB->Data, Layer, polygon); pcb_poly_invalidate_draw(Layer, polygon); Index: trunk/src/obj_pstk.c =================================================================== --- trunk/src/obj_pstk.c (revision 13679) +++ trunk/src/obj_pstk.c (revision 13680) @@ -104,7 +104,7 @@ { pcb_pstk_bbox(ps); if (!data->padstack_tree) - data->padstack_tree = pcb_r_create_tree(NULL, 0, 0); + data->padstack_tree = pcb_r_create_tree(); pcb_r_insert_entry(data->padstack_tree, (pcb_box_t *)ps, 0); PCB_SET_PARENT(ps, data, data); } Index: trunk/src/obj_pstk_op.c =================================================================== --- trunk/src/obj_pstk_op.c (revision 13679) +++ trunk/src/obj_pstk_op.c (revision 13680) @@ -56,7 +56,7 @@ PCB_FLAG_CLEAR(PCB_FLAG_WARN | PCB_FLAG_FOUND, ps); if (!ctx->buffer.dst->padstack_tree) - ctx->buffer.dst->padstack_tree = pcb_r_create_tree(NULL, 0, 0); + ctx->buffer.dst->padstack_tree = pcb_r_create_tree(); pcb_r_insert_entry(ctx->buffer.dst->padstack_tree, (pcb_box_t *)ps, 0); pcb_poly_clear_from_poly(ctx->buffer.dst, PCB_TYPE_PSTK, NULL, ps); Index: trunk/src/obj_rat.c =================================================================== --- trunk/src/obj_rat.c (revision 13679) +++ trunk/src/obj_rat.c (revision 13680) @@ -93,7 +93,7 @@ Line->group2 = group2; pcb_line_bbox((pcb_line_t *) Line); if (!Data->rat_tree) - Data->rat_tree = pcb_r_create_tree(NULL, 0, 0); + Data->rat_tree = pcb_r_create_tree(); pcb_r_insert_entry(Data->rat_tree, &Line->BoundingBox, 0); return Line; } @@ -145,7 +145,7 @@ PCB_FLAG_CLEAR(PCB_FLAG_FOUND, rat); if (!ctx->buffer.dst->rat_tree) - ctx->buffer.dst->rat_tree = pcb_r_create_tree(NULL, 0, 0); + ctx->buffer.dst->rat_tree = pcb_r_create_tree(); pcb_r_insert_entry(ctx->buffer.dst->rat_tree, (pcb_box_t *) rat, 0); PCB_SET_PARENT(rat, data, ctx->buffer.dst); Index: trunk/src/obj_subc.c =================================================================== --- trunk/src/obj_subc.c (revision 13679) +++ trunk/src/obj_subc.c (revision 13680) @@ -763,10 +763,10 @@ /* bind the via rtree so that vias added in this subc show up on the board */ if (pcb != NULL) { if (pcb->Data->via_tree == NULL) - pcb->Data->via_tree = pcb_r_create_tree(NULL, 0, 0); + pcb->Data->via_tree = pcb_r_create_tree(); sc->data->via_tree = pcb->Data->via_tree; if (pcb->Data->padstack_tree == NULL) - pcb->Data->padstack_tree = pcb_r_create_tree(NULL, 0, 0); + pcb->Data->padstack_tree = pcb_r_create_tree(); sc->data->padstack_tree = pcb->Data->padstack_tree; } @@ -816,7 +816,7 @@ if (pcb != NULL) { if (!dst->subc_tree) - dst->subc_tree = pcb_r_create_tree(NULL, 0, 0); + dst->subc_tree = pcb_r_create_tree(); pcb_r_insert_entry(dst->subc_tree, (pcb_box_t *)sc, 0); } @@ -861,7 +861,7 @@ if (Data->subc_tree != NULL) pcb_r_delete_entry(Data->subc_tree, (pcb_box_t *)sc); else - Data->subc_tree = pcb_r_create_tree(NULL, 0, 0); + Data->subc_tree = pcb_r_create_tree(); } /* execute on layer locals */ @@ -1129,7 +1129,7 @@ if (dst_is_pcb) { if (ctx->buffer.dst->subc_tree == NULL) - ctx->buffer.dst->subc_tree = pcb_r_create_tree(NULL, 0, 0); + ctx->buffer.dst->subc_tree = pcb_r_create_tree(); pcb_r_insert_entry(ctx->buffer.dst->subc_tree, (pcb_box_t *)sc, 0); } @@ -1146,10 +1146,10 @@ } else { /* need to create the trees so that move and other ops work */ - if (sl->line_tree == NULL) sl->line_tree = pcb_r_create_tree(NULL, 0, 0); - if (sl->arc_tree == NULL) sl->arc_tree = pcb_r_create_tree(NULL, 0, 0); - if (sl->text_tree == NULL) sl->text_tree = pcb_r_create_tree(NULL, 0, 0); - if (sl->polygon_tree == NULL) sl->polygon_tree = pcb_r_create_tree(NULL, 0, 0); + if (sl->line_tree == NULL) sl->line_tree = pcb_r_create_tree(); + if (sl->arc_tree == NULL) sl->arc_tree = pcb_r_create_tree(); + if (sl->text_tree == NULL) sl->text_tree = pcb_r_create_tree(); + if (sl->polygon_tree == NULL) sl->polygon_tree = pcb_r_create_tree(); pcb_message(PCB_MSG_ERROR, "Couldn't bind subc layer %s on buffer move\n", sl->name == NULL ? "" : sl->name); } } @@ -1188,11 +1188,11 @@ /* bind globals */ if (dst_is_pcb) { if (ctx->buffer.dst->via_tree == NULL) - ctx->buffer.dst->via_tree = pcb_r_create_tree(NULL, 0, 0); + ctx->buffer.dst->via_tree = pcb_r_create_tree(); sc->data->via_tree = ctx->buffer.dst->via_tree; if (ctx->buffer.dst->padstack_tree == NULL) - ctx->buffer.dst->padstack_tree = pcb_r_create_tree(NULL, 0, 0); + ctx->buffer.dst->padstack_tree = pcb_r_create_tree(); sc->data->padstack_tree = ctx->buffer.dst->padstack_tree; } else { @@ -1255,10 +1255,10 @@ continue; /* make sure all trees exist on the dest layer - if these are the first objects there we may need to create them */ - if (dl->line_tree == NULL) dl->line_tree = pcb_r_create_tree(NULL, 0, 0); - if (dl->arc_tree == NULL) dl->arc_tree = pcb_r_create_tree(NULL, 0, 0); - if (dl->text_tree == NULL) dl->text_tree = pcb_r_create_tree(NULL, 0, 0); - if (dl->polygon_tree == NULL) dl->polygon_tree = pcb_r_create_tree(NULL, 0, 0); + if (dl->line_tree == NULL) dl->line_tree = pcb_r_create_tree(); + if (dl->arc_tree == NULL) dl->arc_tree = pcb_r_create_tree(); + if (dl->text_tree == NULL) dl->text_tree = pcb_r_create_tree(); + if (dl->polygon_tree == NULL) dl->polygon_tree = pcb_r_create_tree(); } if (subc_relocate_layer_objs(dl, pcb->Data, sl, src_has_real_layer, 1) > 0) Index: trunk/src/obj_text.c =================================================================== --- trunk/src/obj_text.c (revision 13679) +++ trunk/src/obj_text.c (revision 13680) @@ -132,7 +132,7 @@ /* calculate size of the bounding box */ pcb_text_bbox(PCBFont, text); if (!Layer->text_tree) - Layer->text_tree = pcb_r_create_tree(NULL, 0, 0); + Layer->text_tree = pcb_r_create_tree(); pcb_r_insert_entry(Layer->text_tree, (pcb_box_t *) text, 0); } @@ -350,7 +350,7 @@ textlist_append(&lay->Text, text); if (!lay->text_tree) - lay->text_tree = pcb_r_create_tree(NULL, 0, 0); + lay->text_tree = pcb_r_create_tree(); pcb_r_insert_entry(lay->text_tree, (pcb_box_t *) text, 0); pcb_poly_clear_from_poly(ctx->buffer.dst, PCB_TYPE_TEXT, lay, text); @@ -507,7 +507,7 @@ /* re-calculate the bounding box (it could be mirrored now) */ pcb_text_bbox(pcb_font(PCB, text->fid, 1), text); if (!Destination->text_tree) - Destination->text_tree = pcb_r_create_tree(NULL, 0, 0); + Destination->text_tree = pcb_r_create_tree(); pcb_r_insert_entry(Destination->text_tree, (pcb_box_t *) text, 0); pcb_poly_clear_from_poly(PCB->Data, PCB_TYPE_TEXT, Destination, text); Index: trunk/src/polygon.c =================================================================== --- trunk/src/polygon.c (revision 13679) +++ trunk/src/polygon.c (revision 13680) @@ -2300,7 +2300,7 @@ pcb_poly_init_clip(Destination, Layer, Polygon); pcb_poly_bbox(Polygon); if (!Layer->polygon_tree) - Layer->polygon_tree = pcb_r_create_tree(NULL, 0, 0); + Layer->polygon_tree = pcb_r_create_tree(); pcb_r_insert_entry(Layer->polygon_tree, (pcb_box_t *) Polygon, 0); pcb_poly_invalidate_draw(Layer, Polygon); Index: trunk/src/polygon1.c =================================================================== --- trunk/src/polygon1.c (revision 13679) +++ trunk/src/polygon1.c (revision 13680) @@ -634,7 +634,7 @@ { struct seg *s; pcb_vnode_t *bv; - pcb_rtree_t *ans = pcb_r_create_tree(NULL, 0, 0); + pcb_rtree_t *ans = pcb_r_create_tree(); bv = &pb->head; do { s = (seg *) malloc(sizeof(struct seg)); @@ -1090,7 +1090,7 @@ newp->f->b = newp->b->f = newp; } newp->contours = c; - newp->contour_tree = pcb_r_create_tree(NULL, 0, 0); + newp->contour_tree = pcb_r_create_tree(); pcb_r_insert_entry(newp->contour_tree, (pcb_box_t *) c, 0); c->next = NULL; } /* InsCntr */ @@ -1209,7 +1209,7 @@ /* make a polyarea info table */ /* make an rtree of polyarea info table */ all_pa_info = (struct polyarea_info *) malloc(sizeof(struct polyarea_info) * num_polyareas); - tree = pcb_r_create_tree(NULL, 0, 0); + tree = pcb_r_create_tree(); i = 0; curc = dest; do { @@ -2467,7 +2467,7 @@ *dst = (pcb_polyarea_t *) calloc(1, sizeof(pcb_polyarea_t)); if (*dst == NULL) return pcb_false; - (*dst)->contour_tree = pcb_r_create_tree(NULL, 0, 0); + (*dst)->contour_tree = pcb_r_create_tree(); return pcb_polyarea_copy1(*dst, src); } @@ -2788,7 +2788,7 @@ { p->f = p->b = p; p->contours = NULL; - p->contour_tree = pcb_r_create_tree(NULL, 0, 0); + p->contour_tree = pcb_r_create_tree(); } pcb_polyarea_t *pcb_polyarea_create(void) @@ -3393,7 +3393,7 @@ } if (pa->contour_tree != NULL) pcb_r_destroy_tree(&pa->contour_tree); - pa->contour_tree = pcb_r_create_tree(NULL, 0, 0); + pa->contour_tree = pcb_r_create_tree(); for(pl = pa->contours; pl != NULL; pl = pl->next) { pcb_vnode_t *v; int cnt2 = 0; Index: trunk/src/rtree.c =================================================================== --- trunk/src/rtree.c (revision 13679) +++ trunk/src/rtree.c (revision 13680) @@ -338,7 +338,7 @@ * it, so don't free the box list until you've called r_destroy_tree. * if you set 'manage' to pcb_true, r_destroy_tree will free your boxlist. */ -pcb_rtree_t *pcb_r_create_tree(const pcb_box_t * boxlist[], int N, int manage) +pcb_rtree_t *pcb_r_create_tree_old(const pcb_box_t * boxlist[], int N, int manage) { pcb_rtree_t *rtree; struct rtree_node *node; @@ -362,6 +362,11 @@ return rtree; } +pcb_rtree_t *pcb_r_create_tree(void) +{ + return pcb_r_create_tree_old(NULL, 0, 0); +} + static void __r_destroy_tree(struct rtree_node *node) { int i, flag = 1; Index: trunk/src/rtree.h =================================================================== --- trunk/src/rtree.h (revision 13679) +++ trunk/src/rtree.h (revision 13680) @@ -63,7 +63,9 @@ /* create an rtree from the list of boxes. if 'manage' is pcb_true, then * the tree will take ownership of 'boxlist' and free it when the tree * is destroyed. */ -pcb_rtree_t *pcb_r_create_tree(const pcb_box_t * boxlist[], int N, int manage); +pcb_rtree_t *pcb_r_create_tree_old(const pcb_box_t * boxlist[], int N, int manage); +pcb_rtree_t *pcb_r_create_tree(); + /* destroy an rtree */ void pcb_r_destroy_tree(pcb_rtree_t ** rtree); Index: trunk/src_plugins/autoplace/autoplace.c =================================================================== --- trunk/src_plugins/autoplace/autoplace.c (revision 13679) +++ trunk/src_plugins/autoplace/autoplace.c (revision 13680) @@ -601,8 +601,8 @@ } PCB_END_LOOP; - rt_s = pcb_r_create_tree((const pcb_box_t **) seboxes.array, vtp0_len(&seboxes), 1); - rt_c = pcb_r_create_tree((const pcb_box_t **) ceboxes.array, vtp0_len(&ceboxes), 1); + rt_s = pcb_r_create_tree_old((const pcb_box_t **) seboxes.array, vtp0_len(&seboxes), 1); + rt_c = pcb_r_create_tree_old((const pcb_box_t **) ceboxes.array, vtp0_len(&ceboxes), 1); vtp0_uninit(&seboxes); vtp0_uninit(&ceboxes); /* now, for each element, find its neighbor on all four sides */ Index: trunk/src_plugins/autoroute/autoroute.c =================================================================== --- trunk/src_plugins/autoroute/autoroute.c (revision 13679) +++ trunk/src_plugins/autoroute/autoroute.c (revision 13680) @@ -1146,7 +1146,7 @@ /* create r-trees from pointer lists */ for (i = 0; i < pcb_max_group(PCB); i++) { /* create the r-tree */ - rd->layergrouptree[i] = pcb_r_create_tree((const pcb_box_t **) layergroupboxes[i].array, vtp0_len(&layergroupboxes[i]), 1); + rd->layergrouptree[i] = pcb_r_create_tree_old((const pcb_box_t **) layergroupboxes[i].array, vtp0_len(&layergroupboxes[i]), 1); } if (AutoRouteParameters.use_vias) { @@ -3660,7 +3660,7 @@ #endif } PCB_END_LOOP; - targets = pcb_r_create_tree((const pcb_box_t **) target_list, i, 0); + targets = pcb_r_create_tree_old((const pcb_box_t **) target_list, i, 0); assert(i <= num_targets); free(target_list); Index: trunk/src_plugins/autoroute/mtspace.c =================================================================== --- trunk/src_plugins/autoroute/mtspace.c (revision 13679) +++ trunk/src_plugins/autoroute/mtspace.c (revision 13680) @@ -96,9 +96,9 @@ /* create mtspace data structure */ mtspace = (mtspace_t *) malloc(sizeof(*mtspace)); - mtspace->ftree = pcb_r_create_tree(NULL, 0, 0); - mtspace->etree = pcb_r_create_tree(NULL, 0, 0); - mtspace->otree = pcb_r_create_tree(NULL, 0, 0); + mtspace->ftree = pcb_r_create_tree(); + mtspace->etree = pcb_r_create_tree(); + mtspace->otree = pcb_r_create_tree(); /* done! */ return mtspace; } Index: trunk/src_plugins/io_lihata/read.c =================================================================== --- trunk/src_plugins/io_lihata/read.c (revision 13679) +++ trunk/src_plugins/io_lihata/read.c (revision 13680) @@ -946,11 +946,11 @@ parse_minuid(sc->uid, lht_dom_hash_get(obj, "uid")); if (!dt->via_tree) - dt->via_tree = pcb_r_create_tree(NULL, 0, 0); + dt->via_tree = pcb_r_create_tree(); sc->data->via_tree = dt->via_tree; if (!dt->padstack_tree) - dt->padstack_tree = pcb_r_create_tree(NULL, 0, 0); + dt->padstack_tree = pcb_r_create_tree(); sc->data->padstack_tree = dt->padstack_tree; pcb_add_subc_to_data(dt, sc); @@ -963,7 +963,7 @@ pcb_data_bbox(&sc->BoundingBox, sc->data, pcb_true); if (!dt->subc_tree) - dt->subc_tree = pcb_r_create_tree(NULL, 0, 0); + dt->subc_tree = pcb_r_create_tree(); pcb_r_insert_entry(dt->subc_tree, (pcb_box_t *)sc, 0); if (subc_out != NULL) Index: trunk/src_plugins/io_pcb/parse_y.c =================================================================== --- trunk/src_plugins/io_pcb/parse_y.c (revision 13679) +++ trunk/src_plugins/io_pcb/parse_y.c (revision 13680) @@ -2413,7 +2413,7 @@ { pcb_poly_bbox(Polygon); if (!Layer->polygon_tree) - Layer->polygon_tree = pcb_r_create_tree(NULL, 0, 0); + Layer->polygon_tree = pcb_r_create_tree(); pcb_r_insert_entry(Layer->polygon_tree, (pcb_box_t *) Polygon, 0); } } Index: trunk/src_plugins/io_pcb/parse_y.y =================================================================== --- trunk/src_plugins/io_pcb/parse_y.y (revision 13679) +++ trunk/src_plugins/io_pcb/parse_y.y (revision 13680) @@ -1193,7 +1193,7 @@ { pcb_poly_bbox(Polygon); if (!Layer->polygon_tree) - Layer->polygon_tree = pcb_r_create_tree(NULL, 0, 0); + Layer->polygon_tree = pcb_r_create_tree(); pcb_r_insert_entry(Layer->polygon_tree, (pcb_box_t *) Polygon, 0); } } Index: trunk/src_plugins/lib_polyhelp/polyhelp.c =================================================================== --- trunk/src_plugins/lib_polyhelp/polyhelp.c (revision 13679) +++ trunk/src_plugins/lib_polyhelp/polyhelp.c (revision 13680) @@ -190,7 +190,7 @@ res->alloced = alloced; res->used = 0; - res->edge_tree = pcb_r_create_tree(NULL, 0, 0); + res->edge_tree = pcb_r_create_tree(); res->bbox.X1 = res->bbox.Y1 = PCB_MAX_COORD; res->bbox.X2 = res->bbox.Y2 = -PCB_MAX_COORD;