Index: parse_l.c =================================================================== --- parse_l.c (revision 38649) +++ parse_l.c (revision 38650) @@ -2819,6 +2819,15 @@ rnd_conf_update(NULL, -1); } + + /* Failed to load but had setting dest: remove any conf we may + have read before the parser error */ + if ((settings_dest != RND_CFR_invalid) && (retval != 0)) { + rnd_conf_reset(settings_dest, ""); + rnd_conf_update(NULL, -1); + } + + if (retval == 0) { /* restore loader so the next save will use the same units */ const char *loader = pcb_attribute_get(&PCB->Attributes, "PCB::loader"); Index: parse_l.l =================================================================== --- parse_l.l (revision 38649) +++ parse_l.l (revision 38650) @@ -436,6 +436,15 @@ rnd_conf_update(NULL, -1); } + + /* Failed to load but had setting dest: remove any conf we may + have read before the parser error */ + if ((settings_dest != RND_CFR_invalid) && (retval != 0)) { + rnd_conf_reset(settings_dest, ""); + rnd_conf_update(NULL, -1); + } + + if (retval == 0) { /* restore loader so the next save will use the same units */ const char *loader = pcb_attribute_get(&PCB->Attributes, "PCB::loader");