aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lisp/ChangeLog6
-rw-r--r--lisp/net/tramp-gvfs.el15
2 files changed, 17 insertions, 4 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 2efcf47f1eb..1f20980de5e 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,9 @@
12009-07-02 Michael Albinus <michael.albinus@gmx.de>
2
3 * net/tramp-gvfs.el (tramp-gvfs-handler-mounted-unmounted)
4 (tramp-gvfs-connection-mounted-p): Handle changed mount-info
5 interface.
6
12009-07-02 Kenichi Handa <handa@m17n.org> 72009-07-02 Kenichi Handa <handa@m17n.org>
2 8
3 * international/mule.el (set-keyboard-coding-system): Force *-unix 9 * international/mule.el (set-keyboard-coding-system): Force *-unix
diff --git a/lisp/net/tramp-gvfs.el b/lisp/net/tramp-gvfs.el
index 7ac652eb0e9..e46727216d6 100644
--- a/lisp/net/tramp-gvfs.el
+++ b/lisp/net/tramp-gvfs.el
@@ -869,7 +869,10 @@ ADDRESS can have the form \"xx:xx:xx:xx:xx:xx\" or \"[xx:xx:xx:xx:xx:xx]\"."
869\"org.gtk.vfs.MountTracker.unmounted\" signals." 869\"org.gtk.vfs.MountTracker.unmounted\" signals."
870 (ignore-errors 870 (ignore-errors
871 (let* ((signal-name (dbus-event-member-name last-input-event)) 871 (let* ((signal-name (dbus-event-member-name last-input-event))
872 (mount-spec (nth 1 (nth 9 mount-info))) 872 ;; The interface of mount-info has been changed. We must
873 ;; handle both cases.
874 (last-nth (if (nth 9 mount-info) 9 8))
875 (mount-spec (nth 1 (nth last-nth mount-info)))
873 (method (dbus-byte-array-to-string (cadr (assoc "type" mount-spec)))) 876 (method (dbus-byte-array-to-string (cadr (assoc "type" mount-spec))))
874 (user (dbus-byte-array-to-string (cadr (assoc "user" mount-spec)))) 877 (user (dbus-byte-array-to-string (cadr (assoc "user" mount-spec))))
875 (domain (dbus-byte-array-to-string 878 (domain (dbus-byte-array-to-string
@@ -898,7 +901,7 @@ ADDRESS can have the form \"xx:xx:xx:xx:xx:xx\" or \"[xx:xx:xx:xx:xx:xx]\"."
898 (tramp-set-file-property 901 (tramp-set-file-property
899 v "/" "fuse-mountpoint" 902 v "/" "fuse-mountpoint"
900 (file-name-nondirectory 903 (file-name-nondirectory
901 (dbus-byte-array-to-string (nth 8 mount-info))))))))) 904 (dbus-byte-array-to-string (nth (1- last-nth) mount-info)))))))))
902 905
903(dbus-register-signal 906(dbus-register-signal
904 :session nil tramp-gvfs-path-mounttracker 907 :session nil tramp-gvfs-path-mounttracker
@@ -920,7 +923,10 @@ ADDRESS can have the form \"xx:xx:xx:xx:xx:xx\" or \"[xx:xx:xx:xx:xx:xx]\"."
920 :session tramp-gvfs-service-daemon tramp-gvfs-path-mounttracker 923 :session tramp-gvfs-service-daemon tramp-gvfs-path-mounttracker
921 tramp-gvfs-interface-mounttracker "listMounts")) 924 tramp-gvfs-interface-mounttracker "listMounts"))
922 nil) 925 nil)
923 (let* ((mount-spec (nth 1 (nth 9 elt))) 926 ;; The interface of mount-info has been changed. We must handle
927 ;; both cases.
928 (let* ((last-nth (if (nth 9 mount-info) 9 8))
929 (mount-spec (nth 1 (nth last-nth elt)))
924 (method (dbus-byte-array-to-string 930 (method (dbus-byte-array-to-string
925 (cadr (assoc "type" mount-spec)))) 931 (cadr (assoc "type" mount-spec))))
926 (user (dbus-byte-array-to-string 932 (user (dbus-byte-array-to-string
@@ -950,7 +956,8 @@ ADDRESS can have the form \"xx:xx:xx:xx:xx:xx\" or \"[xx:xx:xx:xx:xx:xx]\"."
950 (string-equal host (tramp-file-name-host vec))) 956 (string-equal host (tramp-file-name-host vec)))
951 (tramp-set-file-property 957 (tramp-set-file-property
952 vec "/" "fuse-mountpoint" 958 vec "/" "fuse-mountpoint"
953 (file-name-nondirectory (dbus-byte-array-to-string (nth 8 elt)))) 959 (file-name-nondirectory
960 (dbus-byte-array-to-string (nth (1- last-nth) elt))))
954 (throw 'mounted t)))))) 961 (throw 'mounted t))))))
955 962
956(defun tramp-gvfs-mount-spec (vec) 963(defun tramp-gvfs-mount-spec (vec)