Corners::copy use copy constructor for parasitic_analysis_pts_

Signed-off-by: James Cherry <cherry@parallaxsw.com>
This commit is contained in:
James Cherry 2023-10-16 12:15:46 -07:00
parent 9e75a7a928
commit 29b94cc31d
1 changed files with 4 additions and 12 deletions

View File

@ -105,8 +105,7 @@ Corners::copy(Corners *corners)
clear();
int index = 0;
for (Corner *orig : corners->corners_) {
const char *name = orig->name();
Corner *corner = new Corner(name, index);
Corner *corner = new Corner(orig->name(), index);
corners_.push_back(corner);
// Use the copied name in the map.
corner_map_[corner->name()] = corner;
@ -120,17 +119,10 @@ Corners::copy(Corners *corners)
parasitic_analysis_pts_.push_back(ap);
}
int i = 0;
for (Corner *orig : corners->corners_) {
for (size_t i = 0; i < corners->corners_.size(); i++) {
Corner *orig = corners->corners_[i];
Corner *corner = corners_[i];
auto &orig_aps = orig->parasitic_analysis_pts_;
auto &corner_aps = corner->parasitic_analysis_pts_;
corner_aps.resize(orig_aps.size());
for (ParasiticAnalysisPt *orig_ap : orig_aps) {
int ap_index = orig_ap->index();
corner_aps.push_back(parasitic_analysis_pts_[ap_index]);
}
i++;
corner->parasitic_analysis_pts_ = orig->parasitic_analysis_pts_;
}
}