From 231b06d8ab9257a4b6ee924b634a41b3caa6ee93 Mon Sep 17 00:00:00 2001 From: fgilham <fgilham> Date: Thu, 11 Jan 2007 22:11:08 +0000 Subject: [PATCH] Fix bug in vector-push-extend where (adjust-array) is called but the return value is discarded. Since (adjust-array) may return a new array, this is wrong. --- code/array.lisp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/array.lisp b/code/array.lisp index 0ed778328..e0c906189 100644 --- a/code/array.lisp +++ b/code/array.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/array.lisp,v 1.40 2006/06/30 18:41:22 rtoy Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/array.lisp,v 1.41 2007/01/11 22:11:08 fgilham Exp $") ;;; ;;; ********************************************************************** ;;; @@ -670,7 +670,7 @@ (let ((fill-pointer (fill-pointer array))) (declare (fixnum fill-pointer)) (when (= fill-pointer (%array-available-elements array)) - (adjust-array array (+ fill-pointer extension))) + (setf array (adjust-array array (+ fill-pointer extension)))) (setf (aref array fill-pointer) new-el) (setf (%array-fill-pointer array) (1+ fill-pointer)) fill-pointer)) -- GitLab