Index: trunk/src/obj_subc.c =================================================================== --- trunk/src/obj_subc.c (revision 31844) +++ trunk/src/obj_subc.c (revision 31845) @@ -859,7 +859,7 @@ dst->ID = src->ID; \ } while(0) -pcb_subc_t *pcb_subc_copy_meta(pcb_subc_t *dst, pcb_subc_t *src) +pcb_subc_t *pcb_subc_copy_meta(pcb_subc_t *dst, const pcb_subc_t *src) { if (dst == NULL) return NULL; @@ -868,7 +868,7 @@ } -pcb_subc_t *pcb_subc_dup_at(pcb_board_t *pcb, pcb_data_t *dst, pcb_subc_t *src, rnd_coord_t dx, rnd_coord_t dy, rnd_bool keep_ids) +pcb_subc_t *pcb_subc_dup_at(pcb_board_t *pcb, pcb_data_t *dst, const pcb_subc_t *src, rnd_coord_t dx, rnd_coord_t dy, rnd_bool keep_ids) { pcb_board_t *src_pcb; int n; Index: trunk/src/obj_subc.h =================================================================== --- trunk/src/obj_subc.h (revision 31844) +++ trunk/src/obj_subc.h (revision 31845) @@ -191,9 +191,9 @@ /* Copy non-layer, non-geometrical metadata (e.g. attributes) */ -pcb_subc_t *pcb_subc_copy_meta(pcb_subc_t *dst, pcb_subc_t *src); +pcb_subc_t *pcb_subc_copy_meta(pcb_subc_t *dst, const pcb_subc_t *src); -pcb_subc_t *pcb_subc_dup_at(pcb_board_t *pcb, pcb_data_t *dst, pcb_subc_t *src, rnd_coord_t dx, rnd_coord_t dy, rnd_bool keep_ids); +pcb_subc_t *pcb_subc_dup_at(pcb_board_t *pcb, pcb_data_t *dst, const pcb_subc_t *src, rnd_coord_t dx, rnd_coord_t dy, rnd_bool keep_ids); /* Replace dst with a copy of src in place (preserving location and orientation and attributes. If add_undo is true, add the old subc del and the new subc