Skip to content

Commit 81443d8

Browse files
authored
Fix allocations introduced in step (#454)
1 parent e55a8e8 commit 81443d8

File tree

1 file changed

+4
-8
lines changed

1 file changed

+4
-8
lines changed

src/integrator.jl

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -226,10 +226,8 @@ function step(
226226
ϵ = fwd ? step_size(lf) : -step_size(lf)
227227
ϵ = ϵ'
228228

229-
res = if FullTraj
230-
Vector{P}(undef, n_steps)
231-
else
232-
Vector{P}(undef, 1)
229+
if FullTraj
230+
res = Vector{P}(undef, n_steps)
233231
end
234232

235233
(; θ, r) = z
@@ -252,20 +250,18 @@ function step(
252250
# Update result
253251
if FullTraj
254252
res[i] = z
255-
else
256-
res[1] = z
257253
end
258254
if !isfinite(z)
259255
# Remove undef
260256
if FullTraj
261-
res = res[isassigned.(Ref(res), 1:n_steps)]
257+
resize!(res, i)
262258
end
263259
break
264260
end
265261
end
266262
return if FullTraj
267263
res
268264
else
269-
first(res)
265+
z
270266
end
271267
end

0 commit comments

Comments
 (0)