Index: trunk/src/obj_text.c =================================================================== --- trunk/src/obj_text.c (revision 21366) +++ trunk/src/obj_text.c (revision 21367) @@ -802,8 +802,12 @@ } -void pcb_text_set_font(pcb_layer_t *layer, pcb_text_t *text, pcb_font_id_t fid) +void pcb_text_set_font(pcb_text_t *text, pcb_font_id_t fid) { + pcb_layer_t *layer = text->parent.layer; + + assert(text->parent_type = PCB_PARENT_LAYER); + pcb_poly_restore_to_poly(PCB->Data, PCB_OBJ_TEXT, layer, text); pcb_r_delete_entry(layer->text_tree, (pcb_box_t *) text); text->fid = fid; Index: trunk/src/obj_text.h =================================================================== --- trunk/src/obj_text.h (revision 21366) +++ trunk/src/obj_text.h (revision 21367) @@ -69,7 +69,7 @@ void pcb_text_scale(pcb_text_t *text, double sx, double sy, double sth); void pcb_text_flip_side(pcb_layer_t *layer, pcb_text_t *text, pcb_coord_t y_offs); void pcb_text_mirror_coords(pcb_layer_t *layer, pcb_text_t *text, pcb_coord_t y_offs); /* mirror the coords but do not mirror the text itself (no on-solder) */ -void pcb_text_set_font(pcb_layer_t *layer, pcb_text_t *text, pcb_font_id_t fid); +void pcb_text_set_font(pcb_text_t *text, pcb_font_id_t fid); void pcb_text_update(pcb_layer_t *layer, pcb_text_t *text); void pcb_text_reg(pcb_layer_t *layer, pcb_text_t *text); Index: trunk/src_plugins/draw_fontsel/draw_fontsel.c =================================================================== --- trunk/src_plugins/draw_fontsel/draw_fontsel.c (revision 21366) +++ trunk/src_plugins/draw_fontsel/draw_fontsel.c (revision 21367) @@ -204,7 +204,7 @@ else { switch(fontsel_txt->type) { case PCB_OBJ_TEXT: - pcb_text_set_font(fontsel_layer, fontsel_txt, fid); + pcb_text_set_font(fontsel_txt, fid); break; } pcb_gui->invalidate_all();