anchor.diff:                                 (read-buffer-position stream)
                                  (fat host)
                                  (read-buffer stream)))
  -                 ;; Set file size
  -                 (setf (sys.int::ub16ref/le directory (+ offset 22)) time
  -                       (sys.int::ub16ref/le directory (+ offset 24)) date
  -                       (sys.int::ub32ref/le directory (+ 28 offset)) file-length))
  -               ;; Set last accsess date
  -               (setf (sys.int::ub16ref/le directory (+ offset 18)) date))
  +                 (setf (read-write-time directory offset) time
  +                       (read-write-date directory offset) date
  +                       (read-file-size directory offset) file-size))
  +               (setf (read-last-access-date directory offset) date))
                ;; Write to disk new metadata
                (write-file (fat32-structure host) (partition host) cluster-n (fat host) directory))))
           (t (error "Aborted close not suported")))
  
positive.code: (defmethod close ((stream fat32-file-stream) &key abort)
    (cond ((not abort)
           (let* ((host (host stream))
                  (file-length (read-buffer-size stream)))
             (multiple-value-bind (directory cluster-n offset)
                 (find-file host (file-stream-pathname stream))
               (multiple-value-bind (time date) (get-fat32-time)
  
negative.code:         ;; Write to disk
          (write-file (fat32-structure host) (partition host) cluster-n (fat host) file)
          ;; Update fat
          (setf (sys.int::ub32ref/le (fat host) (* cluster-number 4)) #x0FFFFFFF)
          (write-fat (partition host) (fat32-structure host) (fat host))
          ;; Return cluster-number
          cluster-number))))
  
  ;;; Host integration
  
  