Index: trunk/src/data.c =================================================================== --- trunk/src/data.c (revision 18892) +++ trunk/src/data.c (revision 18893) @@ -337,6 +337,13 @@ } } +void pcb_data_unbind_layers(pcb_data_t *data) +{ + pcb_layer_id_t n; + for(n = 0; n < data->LayerN; n++) + data->Layer[n].meta.bound.real = NULL; +} + void pcb_data_binding_update(pcb_board_t *pcb, pcb_data_t *data) { int i; Index: trunk/src/data.h =================================================================== --- trunk/src/data.h (revision 18892) +++ trunk/src/data.h (revision 18893) @@ -138,6 +138,9 @@ /* Recalculate the layer bindings updating meta.bound.real to new board layers */ void pcb_data_binding_update(pcb_board_t *pcb, pcb_data_t *data); +/* Break the binding in data bound layers (set htem all to NULL) */ +void pcb_data_unbind_layers(pcb_data_t *data); + /* Make sure there are no negative coords in data, knowing the bbox of the data */ int pcb_data_normalize_(pcb_data_t *data, pcb_box_t *data_bbox);