Index: trunk/src_plugins/import_mucs/mucs.c =================================================================== --- trunk/src_plugins/import_mucs/mucs.c (revision 6759) +++ trunk/src_plugins/import_mucs/mucs.c (revision 6760) @@ -104,6 +104,7 @@ x2 = (getc(fi) + (getc(fi) * 256)); y2 = (getc(fi) + (getc(fi) * 256)); pcb_printf("Line(%d %d %d %d 20 \" \")\n", x1, y1, x2, y2); + /* consider a bounds checking function to censor absurd coord sizes */ pcb_line_new(&PCB->Data->Layer[0], PCB_MIL_TO_COORD(x1), PCB_MIL_TO_COORD(y1), PCB_MIL_TO_COORD(x2), PCB_MIL_TO_COORD(y2), PCB_MIL_TO_COORD(10), PCB_MIL_TO_COORD(10), pcb_flag_make(PCB_FLAG_AUTO)); break; case 'c': @@ -114,9 +115,10 @@ pcb_via_new(PCB->Data, PCB_MIL_TO_COORD(x1), PCB_MIL_TO_COORD(y1), PCB_MIL_TO_COORD(60), PCB_MIL_TO_COORD(10), 0, PCB_MIL_TO_COORD(30), 0, pcb_flag_make(PCB_FLAG_AUTO)); break; case 'n': - x1 = 100 * (getc(fi) + (getc(fi) * 256)); - y1 = 100 * (getc(fi) + (getc(fi) * 256)); - pcb_printf("Line[%d %d %d %d 2000 \" \"]\n", x1, y1, x2, y2); + x1 = (getc(fi) + (getc(fi) * 256)); + y1 = (getc(fi) + (getc(fi) * 256)); + pcb_printf("Line(%d %d %d %d 20 \" \")\n", x1, y1, x2, y2); + pcb_line_new(&PCB->Data->Layer[0], PCB_MIL_TO_COORD(x1), PCB_MIL_TO_COORD(y1), PCB_MIL_TO_COORD(x2), PCB_MIL_TO_COORD(y2), PCB_MIL_TO_COORD(10), PCB_MIL_TO_COORD(10), pcb_flag_make(PCB_FLAG_AUTO)); x2 = x1; y2 = y1; break;