Index: /trunk/ccl/level-1/l1-sysio.lisp
===================================================================
--- /trunk/ccl/level-1/l1-sysio.lisp	(revision 7804)
+++ /trunk/ccl/level-1/l1-sysio.lisp	(revision 7805)
@@ -62,5 +62,5 @@
                 (do* ((i 0 (1+ i))
                       (last-was-cr nil))
-                     ((= nchars) (if last-was-cr :cr))
+                     ((= i nchars) (if last-was-cr :cr))
                   (declare (fixnum i))
                   (let* ((char (schar string i)))
@@ -73,8 +73,8 @@
                         (#\Line_Separator (return :unicode))
                         (#\Return (setq last-was-cr t))))))))
-        (when line-termination
-          (install-ioblock-input-line-termination file-ioblock line-termination)
-          (when (file-ioblock-outbuf file-ioblock)
-            (install-ioblock-output-line-termination file-ioblock line-termination))))))))
+          (when line-termination
+            (install-ioblock-input-line-termination file-ioblock line-termination)
+            (when (file-ioblock-outbuf file-ioblock)
+              (install-ioblock-output-line-termination file-ioblock line-termination))))))))
 
 
