;;; tramp-cache.el --- file information caching for Tramp
-;; Copyright (C) 2000, 2005-2013 Free Software Foundation, Inc.
+;; Copyright (C) 2000, 2005-2014 Free Software Foundation, Inc.
;; Author: Daniel Pittman <daniel@inanna.danann.net>
;; Michael Albinus <michael.albinus@gmx.de>
(let (result)
(maphash
(lambda (key value)
- ;; Remove text properties from KEY.
- (when (vectorp key)
- (dotimes (i (length key))
- (when (stringp (aref key i))
- (aset key i
- (funcall
- ;; `substring-no-properties' does not exist in XEmacs.
- (if (functionp 'substring-no-properties)
- 'substring-no-properties 'identity)
- (aref key i))))))
+ ;; Remove text properties from KEY and VALUE.
+ ;; `substring-no-properties' does not exist in XEmacs.
+ (when (functionp 'substring-no-properties)
+ (when (vectorp key)
+ (dotimes (i (length key))
+ (when (stringp (aref key i))
+ (aset key i
+ (tramp-compat-funcall
+ 'substring-no-properties (aref key i))))))
+ (when (stringp key)
+ (setq key (tramp-compat-funcall 'substring-no-properties key)))
+ (when (stringp value)
+ (setq value
+ (tramp-compat-funcall 'substring-no-properties value))))
+ ;; Dump.
(let ((tmp (format
"(%s %s)"
(if (processp key)
(with-temp-buffer
(insert-file-contents tramp-persistency-file-name)
(let ((list (read (current-buffer)))
+ (tramp-verbose 0)
element key item)
(while (setq element (pop list))
(setq key (pop element))