Skip to content

Commit 0149cc4

Browse files
committed
Correctly set previous and next nodes when appending
1 parent c4b8b5f commit 0149cc4

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

src/mutable_list.jl

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,13 @@ end
153153
function Base.append!(l1::MutableLinkedList{T}, l2::MutableLinkedList{T}) where T
154154
l1.node.prev.next = l2.node.next # l1's last's next is now l2's first
155155
l2.node.prev.next = l1.node # l2's last's next is now l1.node
156+
l2.node.next.prev = l1.node.prev # l2's first's prev is now l1's last
157+
l1.node.prev = l2.node.prev # l1's first's prev is now l2's last
156158
l1.len += length(l2)
159+
# make l2 empty
160+
l2.node.prev = l2.node
161+
l2.node.next = l2.node
162+
l2.len = 0
157163
return l1
158164
end
159165

0 commit comments

Comments
 (0)