From b00d23c46c638a97dc22b1f81cc1e5840046997d Mon Sep 17 00:00:00 2001 From: Wayne Stambaugh Date: Tue, 17 Sep 2013 10:03:16 -0400 Subject: [PATCH] Fix board parsing error when module name is empty. (fixes lp:1226546) --- pcbnew/pcb_parser.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/pcbnew/pcb_parser.cpp b/pcbnew/pcb_parser.cpp index 5712ab3992..4ef1695f2d 100644 --- a/pcbnew/pcb_parser.cpp +++ b/pcbnew/pcb_parser.cpp @@ -1540,17 +1540,19 @@ MODULE* PCB_PARSER::parseMODULE( wxArrayString* aInitialComments ) throw( IO_ERR wxCHECK_MSG( CurTok() == T_module, NULL, wxT( "Cannot parse " ) + GetTokenString( CurTok() ) + wxT( " as MODULE." ) ); - wxPoint pt; - T token; - FPID fpid; + wxString name; + wxPoint pt; + T token; + FPID fpid; auto_ptr< MODULE > module( new MODULE( m_board ) ); module->SetInitialComments( aInitialComments ); NeedSYMBOLorNUMBER(); + name = FromUTF8(); - if( fpid.Parse( FromUTF8() ) >= 0 ) + if( !name.IsEmpty() && fpid.Parse( FromUTF8() ) >= 0 ) { wxString error; error.Printf( _( "invalid PFID in\nfile: <%s>\nline: %d\noffset: %d" ),