diff --git a/pcbnew/tools/drawing_tool.cpp b/pcbnew/tools/drawing_tool.cpp index e0dba85de5..38684559a0 100644 --- a/pcbnew/tools/drawing_tool.cpp +++ b/pcbnew/tools/drawing_tool.cpp @@ -1893,7 +1893,10 @@ int DRAWING_TOOL::DrawVia( const TOOL_EVENT& aEvent ) if( viaPos != track->GetStart() && viaPos != track->GetEnd() ) { aCommit.Modify( track ); + TRACK* newTrack = dynamic_cast( track->Clone() ); + const_cast( newTrack->m_Uuid ) = KIID(); + track->SetEnd( viaPos ); newTrack->SetStart( viaPos ); aCommit.Add( newTrack );