+ (if (or (file-remote-p buffer-file-name)
+ (if (eq vlf-save-in-place 'ask)
+ (y-or-n-p "File content needs be adjusted\
+ till end. Use temporary copy of the whole file (slower but safer)? ")
+ (not vlf-save-in-place)))
+ (let ((file-tmp (make-temp-file "vlf")))
+ (setq time (float-time))
+ (copy-file buffer-file-name file-tmp t t t t)
+ (if (< 0 size-change)
+ (vlf-file-shift-back size-change region-length
+ file-tmp)
+ (vlf-file-shift-forward (- size-change)
+ region-length file-tmp))
+ (rename-file file-tmp buffer-file-name t))
+ (setq time (float-time))