Commit d8ba7b3a authored by Dick Hollenbeck's avatar Dick Hollenbeck
Browse files

pcb_parser failed on (fill yes (arc_segments 16) (thermal_gap 1.99898)...

pcb_parser failed on (fill yes (arc_segments 16) (thermal_gap 1.99898) (thermal_bridge_width 1.99898))
See http://tech.groups.yahoo.com/group/kicad-users/message/15105
parent 00ee6c7b
Loading
Loading
Loading
Loading
+6 −4
Original line number Original line Diff line number Diff line
@@ -2488,18 +2488,22 @@ ZONE_CONTAINER* PCB_PARSER::parseZONE_CONTAINER() throw( IO_ERROR, PARSE_ERROR )


                    // @todo Create an enum for fill modes.
                    // @todo Create an enum for fill modes.
                    zone->SetFillMode( token == T_polygon ? 0 : 1 );
                    zone->SetFillMode( token == T_polygon ? 0 : 1 );
                    NeedRIGHT();
                    break;
                    break;


                case T_arc_segments:
                case T_arc_segments:
                    zone->SetArcSegmentCount( parseInt( "arc segment count" ) );
                    zone->SetArcSegmentCount( parseInt( "arc segment count" ) );
                    NeedRIGHT();
                    break;
                    break;


                case T_thermal_gap:
                case T_thermal_gap:
                    zone->SetThermalReliefGap( parseBoardUnits( T_thermal_gap ) );
                    zone->SetThermalReliefGap( parseBoardUnits( T_thermal_gap ) );
                    NeedRIGHT();
                    break;
                    break;


                case T_thermal_bridge_width:
                case T_thermal_bridge_width:
                    zone->SetThermalReliefCopperBridge( parseBoardUnits( T_thermal_bridge_width ) );
                    zone->SetThermalReliefCopperBridge( parseBoardUnits( T_thermal_bridge_width ) );
                    NeedRIGHT();
                    break;
                    break;


                case T_smoothing:
                case T_smoothing:
@@ -2520,21 +2524,19 @@ ZONE_CONTAINER* PCB_PARSER::parseZONE_CONTAINER() throw( IO_ERROR, PARSE_ERROR )
                    default:
                    default:
                        Expecting( "none, chamfer, or fillet" );
                        Expecting( "none, chamfer, or fillet" );
                    }
                    }

                    NeedRIGHT();
                    break;
                    break;


                case T_radius:
                case T_radius:
                    zone->SetCornerRadius( parseBoardUnits( "corner radius" ) );
                    zone->SetCornerRadius( parseBoardUnits( "corner radius" ) );
                    NeedRIGHT();
                    break;
                    break;


                default:
                default:
                    Expecting( "mode, arc_segments, thermal_gap, thermal_bridge_width, "
                    Expecting( "mode, arc_segments, thermal_gap, thermal_bridge_width, "
                               "smoothing, or radius" );
                               "smoothing, or radius" );
                }
                }

                NeedRIGHT();
            }
            }

            break;
            break;


        case T_keepout:
        case T_keepout: