Better solution to previous fix.
authorArthur Gleckler <edu/mit/csail/zurich/arthur>
Tue, 24 Nov 1992 04:28:08 +0000 (04:28 +0000)
committerArthur Gleckler <edu/mit/csail/zurich/arthur>
Tue, 24 Nov 1992 04:28:08 +0000 (04:28 +0000)
v7/src/edwin/sort.scm

index 95581991c73ab958b5139485220d4c17eda964b8..fc559ce43c40c640231a3ccf926574b5ae323d95 100644 (file)
@@ -1,6 +1,6 @@
 ;;; -*-Scheme-*-
 ;;;
-;;;    $Id: sort.scm,v 1.4 1992/11/24 04:03:25 arthur Exp $
+;;;    $Id: sort.scm,v 1.5 1992/11/24 04:28:08 arthur Exp $
 ;;;
 ;;;    Copyright (c) 1992 Massachusetts Institute of Technology
 ;;;
 (define (identify-records region forward-record record-end)
   (define (mark-temporary-right-inserting-copy mark)
     (make-temporary-mark (mark-group mark) (mark-index mark) false))
-  (map
-   (lambda (record)
-     (cons (car record)
-          (mark-temporary-right-inserting-copy (cdr record))))
-   (let ((limit (region-end region)))
-     (let next-record ((start (region-start region)))
-       (if (and start (mark< start limit))
-          (let ((end (record-end start)))
-            (if (and end (mark< end limit))
-                (cons (cons start end)
-                      (next-record (forward-record end)))
-                (list (cons start (region-end region)))))
-          '())))))
+  (let ((limit (region-end region)))
+    (let next-record ((start (region-start region)))
+      (if (and start (mark< start limit))
+         (let ((end (record-end start)))
+           (if (and end (mark< end limit))
+               (cons (cons start
+                           (mark-temporary-right-inserting-copy end))
+                     (next-record (forward-record end)))
+               (list (cons start
+                           (mark-temporary-right-inserting-copy
+                            (region-end region))))))
+         '()))))
 
 (define (insert-reordered-region start end sorted-list unsorted-list)
   (let ((end-mark (mark-right-inserting-copy end))