diff --git a/eeschema/sch_symbol.cpp b/eeschema/sch_symbol.cpp index 4f49755329..50371f9197 100644 --- a/eeschema/sch_symbol.cpp +++ b/eeschema/sch_symbol.cpp @@ -1221,7 +1221,11 @@ bool SCH_SYMBOL::ResolveTextVar( wxString* token, int aDepth, const SCH_SHEET_PA wxArrayString parts = wxSplit( footprint, ':' ); - *token = parts[ 0 ]; + if( parts.Count() > 0 ) + *token = parts[ 0 ]; + else + *token = wxEmptyString; + return true; } else if( token->IsSameAs( wxT( "FOOTPRINT_NAME" ) ) ) @@ -1232,7 +1236,11 @@ bool SCH_SYMBOL::ResolveTextVar( wxString* token, int aDepth, const SCH_SHEET_PA wxArrayString parts = wxSplit( footprint, ':' ); - *token = parts[ std::min( 1, (int) parts.size() - 1 ) ]; + if( parts.Count() > 1 ) + *token = parts[ std::min( 1, (int) parts.size() - 1 ) ]; + else + *token = wxEmptyString; + return true; } else if( token->IsSameAs( wxT( "UNIT" ) ) )