summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Albinus <michael.albinus@gmx.de>2007-07-23 20:37:33 +0000
committerMichael Albinus <michael.albinus@gmx.de>2007-07-23 20:37:33 +0000
commitd4443a0d7d0f65bd73a2059a46cb9992ffbfd779 (patch)
treecb5293fc7baa5dd6172f0b3f170d85cda7fa2811
parent297b8ccd7a0a30b566ea95d6c3ac20a8e68e9818 (diff)
downloademacs-d4443a0d7d0f65bd73a2059a46cb9992ffbfd779.tar.gz
* net/tramp.el (tramp-perl-file-attributes)
(tramp-perl-directory-files-and-attributes) (tramp-handle-file-attributes-with-stat) (tramp-handle-directory-files-and-attributes-with-stat( (tramp-convert-file-attributes): Handle huge file sizes.
-rw-r--r--lisp/ChangeLog8
-rw-r--r--lisp/net/tramp.el13
2 files changed, 17 insertions, 4 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index b8872038d0a..1c2cb6e9529 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,11 @@
+2007-07-23 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-perl-file-attributes)
+ (tramp-perl-directory-files-and-attributes)
+ (tramp-handle-file-attributes-with-stat)
+ (tramp-handle-directory-files-and-attributes-with-stat)
+ (tramp-convert-file-attributes): Handle huge file sizes.
+
2007-07-23 Juri Linkov <juri@jurta.org>
* isearch.el (isearch-message-function): New variable.
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index cbe7040f609..aa7456ad29a 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -1528,7 +1528,7 @@ else
$uid = ($ARGV[1] eq \"integer\") ? $stat[4] : \"\\\"\" . getpwuid($stat[4]) . \"\\\"\";
$gid = ($ARGV[1] eq \"integer\") ? $stat[5] : \"\\\"\" . getgrgid($stat[5]) . \"\\\"\";
printf(
- \"(%%s %%u %%s %%s (%%u %%u) (%%u %%u) (%%u %%u) %%u %%u t (%%u . %%u) -1)\\n\",
+ \"(%%s %%u %%s %%s (%%u %%u) (%%u %%u) (%%u %%u) %%u.0 %%u t (%%u . %%u) -1)\\n\",
$type,
$stat[3],
$uid,
@@ -1577,7 +1577,7 @@ for($i = 0; $i < $n; $i++)
$uid = ($ARGV[1] eq \"integer\") ? $stat[4] : \"\\\"\" . getpwuid($stat[4]) . \"\\\"\";
$gid = ($ARGV[1] eq \"integer\") ? $stat[5] : \"\\\"\" . getgrgid($stat[5]) . \"\\\"\";
printf(
- \"(\\\"%%s\\\" %%s %%u %%s %%s (%%u %%u) (%%u %%u) (%%u %%u) %%u %%u t (%%u . %%u) (%%u %%u))\\n\",
+ \"(\\\"%%s\\\" %%s %%u %%s %%s (%%u %%u) (%%u %%u) (%%u %%u) %%u.0 %%u t (%%u . %%u) (%%u %%u))\\n\",
$filename,
$type,
$stat[3],
@@ -2390,7 +2390,7 @@ target of the symlink differ."
(tramp-send-command-and-read
vec
(format
- "%s -c '((\"%%N\") %%h %s %s %%X.0 %%Y.0 %%Z.0 %%s \"%%A\" t %%i.0 -1)' %s"
+ "%s -c '((\"%%N\") %%h %s %s %%X.0 %%Y.0 %%Z.0 %%s.0 \"%%A\" t %%i.0 -1)' %s"
(tramp-get-remote-stat vec)
(if (eq id-format 'integer) "%u" "\"%U\"")
(if (eq id-format 'integer) "%g" "\"%G\"")
@@ -2740,7 +2740,7 @@ of."
(format
(concat
"cd %s; echo \"(\"; (%s -ab | xargs "
- "%s -c '(\"%%n\" (\"%%N\") %%h %s %s %%X.0 %%Y.0 %%Z.0 %%s \"%%A\" t %%i.0 -1)'); "
+ "%s -c '(\"%%n\" (\"%%N\") %%h %s %s %%X.0 %%Y.0 %%Z.0 %%s.0 \"%%A\" t %%i.0 -1)'); "
"echo \")\"")
(tramp-shell-quote-argument localname)
(tramp-get-ls-command vec)
@@ -6253,6 +6253,11 @@ Return ATTR."
(setcar (nthcdr 6 attr)
(list (floor (nth 6 attr) 65536)
(floor (mod (nth 6 attr) 65536)))))
+ ;; Convert file size.
+ (when (< (nth 7 attr) 0)
+ (setcar (nthcdr 7 attr) -1))
+ (when (and (floatp (nth 7 attr)) (<= (nth 7 attr) most-positive-fixnum))
+ (setcar (nthcdr 7 attr) (round (nth 7 attr))))
;; Convert file mode bits to string.
(unless (stringp (nth 8 attr))
(setcar (nthcdr 8 attr) (tramp-file-mode-from-int (nth 8 attr))))