From 333e9fd675294c3fd5ca683099dc24f096df0135 Mon Sep 17 00:00:00 2001 From: Gregory Lirent Date: Fri, 10 Jun 2022 17:59:53 +0300 Subject: [PATCH] Fix list slice --- src/list/copy.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/list/copy.c b/src/list/copy.c index c9839c6..b790652 100644 --- a/src/list/copy.c +++ b/src/list/copy.c @@ -169,17 +169,14 @@ size_t list_slice(list_t* x, list_t* s, ssize_t i, size_t n, _Bool cut) { } else { if (c->prev) { c->prev->next = e->next; - } else x->first = e->next; + } else s->first = e->next; if (e->next) { e->next->prev = c->prev; } else s->last = c->prev; - e->next = nullptr; - c->prev = nullptr; - - x->first = c; - x->last = e; + (x->first = c)->prev = nullptr; + (x->last = e)->next = nullptr; } return r;