From 4b5b81aab41ec500d766875cc810b6378d8f0129 Mon Sep 17 00:00:00 2001 From: "K. Lange" Date: Fri, 19 Mar 2021 13:25:53 +0900 Subject: [PATCH] l.extend(l) needs to make copy --- src/obj_list.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/obj_list.c b/src/obj_list.c index dba95e6..8904470 100644 --- a/src/obj_list.c +++ b/src/obj_list.c @@ -132,6 +132,9 @@ KRK_METHOD(list,extend,{ METHOD_TAKES_EXACTLY(1); pthread_rwlock_wrlock(&self->rwlock); KrkValueArray * positionals = AS_LIST(argv[0]); + if (krk_valuesSame(argv[0],argv[1])) { + argv[1] = krk_list_of(self->values.count, self->values.values, 0); + } unpackIterableFast(argv[1]); _break_loop: pthread_rwlock_unlock(&self->rwlock);