1.0.12.27: FILL on lists was broken by 1.0.12.16, oops!
[sbcl.git] / src / code / seq.lisp
index 8fe9d9f..a51435d 100644 (file)
           (setf pointer (nthcdr (1- start) pointer)))
         (if pointer
             (pop pointer)
-            (oops))
-        (if end
-            (let ((n (- end start)))
-              (declare (integer n))
-              (when (minusp n)
-                (oops))
-              (when (plusp n)
-                (loop repeat n
-                      do (rplaca pointer item))))
-            (loop while pointer
-                  do (setf pointer (cdr (rplaca pointer item)))))))))
+            (oops)))
+      (if end
+          (let ((n (- end start)))
+            (declare (integer n))
+            (when (minusp n)
+              (oops))
+            (when (plusp n)
+              (loop repeat n
+                    do (setf pointer (cdr (rplaca pointer item))))))
+          (loop while pointer
+                do (setf pointer (cdr (rplaca pointer item))))))))
 
 (defun vector-fill* (sequence item start end)
   (with-array-data ((data sequence)