Index: trunk/src_plugins/dialogs/dlg_pref_lib.c =================================================================== --- trunk/src_plugins/dialogs/dlg_pref_lib.c (revision 29085) +++ trunk/src_plugins/dialogs/dlg_pref_lib.c (revision 29086) @@ -286,6 +286,7 @@ PCB_DAD_LABEL(ctx.dlg, "Expanded\nversion:"); PCB_DAD_LABEL(ctx.dlg, pcb_strdup(cell[1])); ctx.wexp = PCB_DAD_CURRENT(ctx.dlg); + ctx.dlg[ctx.wexp].val.str = pcb_strdup(cell[1]); PCB_DAD_LABEL(ctx.dlg, ""); PCB_DAD_BUTTON(ctx.dlg, "Help..."); @@ -333,10 +334,18 @@ } } - cell[0] = pcb_strdup(""); - cell[1] = pcb_strdup(""); - cell[2] = pcb_strdup(SRC_BRD); + if (pos != 0) { + cell[0] = pcb_strdup(""); + cell[1] = pcb_strdup(""); + cell[2] = pcb_strdup(SRC_BRD); + } + else { + cell[0] = pcb_strdup(r->cell[0]); + cell[1] = pcb_strdup(r->cell[1]); + cell[2] = pcb_strdup(r->cell[2]); + } cell[3] = NULL; + if (lib_cell_edit(ctx, cell) != 0) { free(cell[0]); free(cell[1]);