Skip to content

Commit e12ab86

Browse files
committed
rust: Fix segfault
Signed-off-by: gatecat <[email protected]>
1 parent 1bbcc5f commit e12ab86

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

rust/rust.cc

+5-5
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ extern "C" {
104104
*pips = new uint64_t[size];
105105
auto idx = 0;
106106
for (auto pip : ctx->getPips()) {
107-
*pips[idx] = wrap(pip);
107+
(*pips)[idx] = wrap(pip);
108108
idx++;
109109
}
110110
// Yes, by never deleting pip_vec, we leak memory.
@@ -118,7 +118,7 @@ extern "C" {
118118
*wires = new uint64_t[size];
119119
auto idx = 0;
120120
for (auto wire : ctx->getWires()) {
121-
*wires[idx] = wrap(wire);
121+
(*wires)[idx] = wrap(wire);
122122
idx++;
123123
}
124124
// Yes, by never deleting wires, we leak memory.
@@ -142,8 +142,8 @@ extern "C" {
142142
*nets = new NetInfo*[size];
143143
auto idx = 0;
144144
for (auto& item : ctx->nets) {
145-
*names[idx] = item.first.index;
146-
*nets[idx] = item.second.get();
145+
(*names)[idx] = item.first.index;
146+
(*nets)[idx] = item.second.get();
147147
idx++;
148148
}
149149
// Yes, by never deleting `names` and `nets` we leak memory.
@@ -179,7 +179,7 @@ extern "C" {
179179
*users = new PortRef*[size];
180180
auto idx = 0;
181181
for (auto& item : net->users) {
182-
*users[idx] = &item;
182+
(*users)[idx] = &item;
183183
idx++;
184184
}
185185
// Yes, by not freeing `users`, we leak memory.

0 commit comments

Comments
 (0)