mirror of https://github.com/openXC7/prjxray.git
xc7series: fix bug with missing empty frames
Signed-off-by: Tomasz Michalak <tmichalak@antmicro.com>
This commit is contained in:
parent
710658ebf8
commit
1f6ba5d734
|
|
@ -63,22 +63,20 @@ int Frames::readFrames(const std::string& frm_file_str) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void Frames::addMissingFrames(const absl::optional<Part>& part) {
|
void Frames::addMissingFrames(const absl::optional<Part>& part) {
|
||||||
auto current_frame_address = frames_data_.begin()->first;
|
auto current_frame_address =
|
||||||
auto next_frame_address =
|
absl::optional<FrameAddress>(FrameAddress(0));
|
||||||
part->GetNextFrameAddress(current_frame_address);
|
do {
|
||||||
while (next_frame_address) {
|
auto iter = frames_data_.find(*current_frame_address);
|
||||||
current_frame_address = *next_frame_address;
|
|
||||||
auto iter = frames_data_.find(current_frame_address);
|
|
||||||
if (iter == frames_data_.end()) {
|
if (iter == frames_data_.end()) {
|
||||||
FrameData frame_data(101, 0);
|
FrameData frame_data(101, 0);
|
||||||
// TODO make sure if this is needed
|
// TODO make sure if this is needed
|
||||||
updateECC(frame_data);
|
updateECC(frame_data);
|
||||||
frames_data_.insert(std::pair<FrameAddress, FrameData>(
|
frames_data_.insert(std::pair<FrameAddress, FrameData>(
|
||||||
current_frame_address, frame_data));
|
*current_frame_address, frame_data));
|
||||||
}
|
}
|
||||||
next_frame_address =
|
current_frame_address =
|
||||||
part->GetNextFrameAddress(current_frame_address);
|
part->GetNextFrameAddress(*current_frame_address);
|
||||||
}
|
} while (current_frame_address);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Frames::updateECC(FrameData& data) {
|
void Frames::updateECC(FrameData& data) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue