Commit 3f8c0910 authored by unknown's avatar unknown Committed by jean-pierre charras

export IDF without empty PLACEMENT section

parent 76436943
......@@ -3053,6 +3053,27 @@ void IDF3_BOARD::writeBoardFile( const std::string& aFileName )
std::map< std::string, IDF3_COMPONENT*>::iterator itcs = components.begin();
std::map< std::string, IDF3_COMPONENT*>::iterator itce = components.end();
// determine if there are any component outlines at all and avoid
// writing an empty PLACEMENT section if there are no outlines.
// this will cost a little time but prevents software such as
// CircuitWorks from segfaulting on an empty section.
bool hasOutlines = false;
while( itcs != itce )
{
if( itcs->second->GetOutlinesSize() > 0 )
{
itcs = components.begin();
hasOutlines = true;
break;
}
++itcs;
}
if( hasOutlines )
{
brd << ".PLACEMENT\n";
while( itcs != itce )
......@@ -3065,6 +3086,8 @@ void IDF3_BOARD::writeBoardFile( const std::string& aFileName )
}
}
}
catch( const std::exception& e )
{
brd.exceptions( std::ios_base::goodbit );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment