diff options
| author | Glenn Morris | 2014-11-08 10:21:38 -0800 |
|---|---|---|
| committer | Glenn Morris | 2014-11-08 10:21:38 -0800 |
| commit | 416148257afedb97bbe6d732eea3a0c72473dab0 (patch) | |
| tree | 959013e867de73a5ad27e013a1637119833e7856 | |
| parent | 97cd730164baf67617e1031730105523315c068f (diff) | |
| parent | 86b1c771e14efcc98f8fe07510a4238bf94ced7b (diff) | |
| download | emacs-416148257afedb97bbe6d732eea3a0c72473dab0.tar.gz emacs-416148257afedb97bbe6d732eea3a0c72473dab0.zip | |
Merge from emacs-24; up to 117687
| -rw-r--r-- | doc/misc/eww.texi | 8 | ||||
| -rw-r--r-- | lisp/ChangeLog | 36 | ||||
| -rw-r--r-- | lisp/emulation/cua-base.el | 6 | ||||
| -rw-r--r-- | lisp/emulation/cua-gmrk.el | 2 | ||||
| -rw-r--r-- | lisp/files.el | 2 | ||||
| -rw-r--r-- | lisp/net/tramp-adb.el | 23 | ||||
| -rw-r--r-- | lisp/net/tramp-gvfs.el | 234 | ||||
| -rw-r--r-- | lisp/net/tramp-sh.el | 35 | ||||
| -rw-r--r-- | lisp/net/tramp.el | 7 | ||||
| -rw-r--r-- | lisp/progmodes/cc-fonts.el | 4 | ||||
| -rw-r--r-- | src/ChangeLog | 23 | ||||
| -rw-r--r-- | src/callproc.c | 8 | ||||
| -rw-r--r-- | src/dired.c | 5 | ||||
| -rw-r--r-- | src/nsterm.m | 14 | ||||
| -rw-r--r-- | src/syntax.c | 2 | ||||
| -rw-r--r-- | src/xgselect.c | 18 |
16 files changed, 260 insertions, 167 deletions
diff --git a/doc/misc/eww.texi b/doc/misc/eww.texi index f8f87d37a39..edc2e0fdb3a 100644 --- a/doc/misc/eww.texi +++ b/doc/misc/eww.texi | |||
| @@ -198,11 +198,11 @@ specific images completely by customizing @code{shr-blocked-images}. | |||
| 198 | @vindex shr-color-visible-distance-min | 198 | @vindex shr-color-visible-distance-min |
| 199 | @vindex shr-color-visible-luminance-min | 199 | @vindex shr-color-visible-luminance-min |
| 200 | @cindex Contrast | 200 | @cindex Contrast |
| 201 | EWW (or rather its HTML renderer @code{shr}) use the colors declared | 201 | EWW (or rather its HTML renderer @code{shr}) uses the colors declared |
| 202 | in the HTML page but adjust them if needed to keep a certain minimum | 202 | in the HTML page, but adjusts them if needed to keep a certain minimum |
| 203 | contrast. If that is still to low for you, have a look at the | 203 | contrast. If that is still too low for you, you can customize the |
| 204 | variables @code{shr-color-visible-distance-min} and | 204 | variables @code{shr-color-visible-distance-min} and |
| 205 | @code{shr-color-visible-luminance-min}. | 205 | @code{shr-color-visible-luminance-min} to get a better contrast. |
| 206 | 206 | ||
| 207 | @node History and Acknowledgments | 207 | @node History and Acknowledgments |
| 208 | @appendix History and Acknowledgments | 208 | @appendix History and Acknowledgments |
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index a67f9220bbb..ab12e064aaa 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,39 @@ | |||
| 1 | 2014-11-08 Michael Albinus <michael.albinus@gmx.de> | ||
| 2 | |||
| 3 | * net/tramp.el (tramp-check-cached-permissions): Include hop in | ||
| 4 | the constructed Tramp file name. (Bug#18943) | ||
| 5 | |||
| 6 | 2014-11-08 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 7 | |||
| 8 | * emulation/cua-base.el (cua--select-keymaps): Use region-active-p | ||
| 9 | (bug#18952). | ||
| 10 | (cua-set-mark, cua--post-command-handler-1): | ||
| 11 | * emulation/cua-gmrk.el (cua-cancel-global-mark): Same. | ||
| 12 | |||
| 13 | 2014-11-08 Michael Albinus <michael.albinus@gmx.de> | ||
| 14 | |||
| 15 | * files.el (file-name-non-special): Wrap the call of | ||
| 16 | `insert-file-contents' by `unwind-protect', in order to set the | ||
| 17 | buffer's file name anyway. (Bug#18891) | ||
| 18 | |||
| 19 | 2014-11-08 Alan Mackenzie <acm@muc.de> | ||
| 20 | |||
| 21 | Fix wrong bound to c-font-lock-declarators. Fixes bug #18948. | ||
| 22 | * progmodes/cc-fonts.el (c-font-lock-declarations): Pass | ||
| 23 | "(point-max)" as bound to c-font-lock-declarators, not "limit", as | ||
| 24 | the buffer is sometimes narrowed to less than "limit" (e.g., in | ||
| 25 | the presence of macros). | ||
| 26 | |||
| 27 | 2014-11-08 Michael Albinus <michael.albinus@gmx.de> | ||
| 28 | |||
| 29 | * net/tramp.el (tramp-error-with-buffer): Show connection buffer | ||
| 30 | only when message appeared in minibuffer. (Bug#18891) | ||
| 31 | |||
| 32 | * net/tramp-adb.el (tramp-adb-handle-file-attributes): | ||
| 33 | * net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes): | ||
| 34 | * net/tramp-sh.el (tramp-sh-handle-file-attributes): Return nil in | ||
| 35 | case of errors. | ||
| 36 | |||
| 1 | 2014-11-08 Stefan Monnier <monnier@iro.umontreal.ca> | 37 | 2014-11-08 Stefan Monnier <monnier@iro.umontreal.ca> |
| 2 | 38 | ||
| 3 | * emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment): | 39 | * emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment): |
diff --git a/lisp/emulation/cua-base.el b/lisp/emulation/cua-base.el index 0b6891d6d6d..2b4d0f6ba90 100644 --- a/lisp/emulation/cua-base.el +++ b/lisp/emulation/cua-base.el | |||
| @@ -1015,7 +1015,7 @@ With a double \\[universal-argument] prefix argument, unconditionally set mark." | |||
| 1015 | (or (and cua-auto-mark-last-change | 1015 | (or (and cua-auto-mark-last-change |
| 1016 | (cua-pop-to-last-change)) | 1016 | (cua-pop-to-last-change)) |
| 1017 | (pop-to-mark-command))) | 1017 | (pop-to-mark-command))) |
| 1018 | ((and cua-toggle-set-mark mark-active) | 1018 | ((and cua-toggle-set-mark (region-active-p)) |
| 1019 | (cua--deactivate) | 1019 | (cua--deactivate) |
| 1020 | (message "Mark cleared")) | 1020 | (message "Mark cleared")) |
| 1021 | (t | 1021 | (t |
| @@ -1127,7 +1127,7 @@ If ARG is the atom `-', scroll upward by nearly full screen." | |||
| 1127 | (if cua--debug | 1127 | (if cua--debug |
| 1128 | (cond | 1128 | (cond |
| 1129 | (cua--rectangle (cua--rectangle-assert)) | 1129 | (cua--rectangle (cua--rectangle-assert)) |
| 1130 | (mark-active (message "Mark=%d Point=%d" (mark t) (point))))) | 1130 | ((region-active-p) (message "Mark=%d Point=%d" (mark t) (point))))) |
| 1131 | 1131 | ||
| 1132 | (if cua-enable-cursor-indications | 1132 | (if cua-enable-cursor-indications |
| 1133 | (cua--update-indications)) | 1133 | (cua--update-indications)) |
| @@ -1186,7 +1186,7 @@ If ARG is the atom `-', scroll upward by nearly full screen." | |||
| 1186 | (defun cua--select-keymaps () | 1186 | (defun cua--select-keymaps () |
| 1187 | ;; Setup conditions for selecting the proper keymaps in cua--keymap-alist. | 1187 | ;; Setup conditions for selecting the proper keymaps in cua--keymap-alist. |
| 1188 | (setq cua--ena-region-keymap | 1188 | (setq cua--ena-region-keymap |
| 1189 | (and mark-active (not deactivate-mark))) | 1189 | (and (region-active-p) (not deactivate-mark))) |
| 1190 | (setq cua--ena-prefix-override-keymap | 1190 | (setq cua--ena-prefix-override-keymap |
| 1191 | (and cua--ena-region-keymap | 1191 | (and cua--ena-region-keymap |
| 1192 | cua-enable-cua-keys | 1192 | cua-enable-cua-keys |
diff --git a/lisp/emulation/cua-gmrk.el b/lisp/emulation/cua-gmrk.el index b77b2105f64..3d6c9d62a26 100644 --- a/lisp/emulation/cua-gmrk.el +++ b/lisp/emulation/cua-gmrk.el | |||
| @@ -321,7 +321,7 @@ With prefix argument, don't jump to global mark when canceling it." | |||
| 321 | (defun cua-cancel-global-mark () | 321 | (defun cua-cancel-global-mark () |
| 322 | "Cancel the global mark." | 322 | "Cancel the global mark." |
| 323 | (interactive) | 323 | (interactive) |
| 324 | (if mark-active | 324 | (if (region-active-p) |
| 325 | (cua-cancel) | 325 | (cua-cancel) |
| 326 | (if (cua--global-mark-active) | 326 | (if (cua--global-mark-active) |
| 327 | (cua--deactivate-global-mark t))) | 327 | (cua--deactivate-global-mark t))) |
diff --git a/lisp/files.el b/lisp/files.el index be1b6c29d10..c9d1d2da3b8 100644 --- a/lisp/files.el +++ b/lisp/files.el | |||
| @@ -6670,7 +6670,7 @@ only these files will be asked to be saved." | |||
| 6670 | (`add (concat "/:" (apply operation arguments))) | 6670 | (`add (concat "/:" (apply operation arguments))) |
| 6671 | (`insert-file-contents | 6671 | (`insert-file-contents |
| 6672 | (let ((visit (nth 1 arguments))) | 6672 | (let ((visit (nth 1 arguments))) |
| 6673 | (prog1 | 6673 | (unwind-protect |
| 6674 | (apply operation arguments) | 6674 | (apply operation arguments) |
| 6675 | (when (and visit buffer-file-name) | 6675 | (when (and visit buffer-file-name) |
| 6676 | (setq buffer-file-name (concat "/:" buffer-file-name)))))) | 6676 | (setq buffer-file-name (concat "/:" buffer-file-name)))))) |
diff --git a/lisp/net/tramp-adb.el b/lisp/net/tramp-adb.el index 639f07b2f1d..2401b4af479 100644 --- a/lisp/net/tramp-adb.el +++ b/lisp/net/tramp-adb.el | |||
| @@ -316,17 +316,18 @@ pass to the OPERATION." | |||
| 316 | (defun tramp-adb-handle-file-attributes (filename &optional id-format) | 316 | (defun tramp-adb-handle-file-attributes (filename &optional id-format) |
| 317 | "Like `file-attributes' for Tramp files." | 317 | "Like `file-attributes' for Tramp files." |
| 318 | (unless id-format (setq id-format 'integer)) | 318 | (unless id-format (setq id-format 'integer)) |
| 319 | (with-parsed-tramp-file-name filename nil | 319 | (ignore-errors |
| 320 | (with-tramp-file-property | 320 | (with-parsed-tramp-file-name filename nil |
| 321 | v localname (format "file-attributes-%s" id-format) | 321 | (with-tramp-file-property |
| 322 | (and | 322 | v localname (format "file-attributes-%s" id-format) |
| 323 | (tramp-adb-send-command-and-check | 323 | (and |
| 324 | v (format "%s -d -l %s" | 324 | (tramp-adb-send-command-and-check |
| 325 | (tramp-adb-get-ls-command v) | 325 | v (format "%s -d -l %s" |
| 326 | (tramp-shell-quote-argument localname))) | 326 | (tramp-adb-get-ls-command v) |
| 327 | (with-current-buffer (tramp-get-buffer v) | 327 | (tramp-shell-quote-argument localname))) |
| 328 | (tramp-adb-sh-fix-ls-output) | 328 | (with-current-buffer (tramp-get-buffer v) |
| 329 | (cdar (tramp-do-parse-file-attributes-with-ls v id-format))))))) | 329 | (tramp-adb-sh-fix-ls-output) |
| 330 | (cdar (tramp-do-parse-file-attributes-with-ls v id-format)))))))) | ||
| 330 | 331 | ||
| 331 | (defun tramp-do-parse-file-attributes-with-ls (vec &optional id-format) | 332 | (defun tramp-do-parse-file-attributes-with-ls (vec &optional id-format) |
| 332 | "Parse `file-attributes' for Tramp files using the ls(1) command." | 333 | "Parse `file-attributes' for Tramp files using the ls(1) command." |
diff --git a/lisp/net/tramp-gvfs.el b/lisp/net/tramp-gvfs.el index 1b4c1694a92..30802273d5c 100644 --- a/lisp/net/tramp-gvfs.el +++ b/lisp/net/tramp-gvfs.el | |||
| @@ -720,124 +720,128 @@ is no information where to trace the message.") | |||
| 720 | (defun tramp-gvfs-handle-file-attributes (filename &optional id-format) | 720 | (defun tramp-gvfs-handle-file-attributes (filename &optional id-format) |
| 721 | "Like `file-attributes' for Tramp files." | 721 | "Like `file-attributes' for Tramp files." |
| 722 | (unless id-format (setq id-format 'integer)) | 722 | (unless id-format (setq id-format 'integer)) |
| 723 | ;; Don't modify `last-coding-system-used' by accident. | 723 | (ignore-errors |
| 724 | (let ((last-coding-system-used last-coding-system-used) | 724 | ;; Don't modify `last-coding-system-used' by accident. |
| 725 | dirp res-symlink-target res-numlinks res-uid res-gid res-access | 725 | (let ((last-coding-system-used last-coding-system-used) |
| 726 | res-mod res-change res-size res-filemodes res-inode res-device) | 726 | dirp res-symlink-target res-numlinks res-uid res-gid res-access |
| 727 | (with-parsed-tramp-file-name filename nil | 727 | res-mod res-change res-size res-filemodes res-inode res-device) |
| 728 | (with-tramp-file-property | 728 | (with-parsed-tramp-file-name filename nil |
| 729 | v localname (format "file-attributes-%s" id-format) | 729 | (with-tramp-file-property |
| 730 | (tramp-message v 5 "file attributes: %s" localname) | 730 | v localname (format "file-attributes-%s" id-format) |
| 731 | (tramp-gvfs-send-command | 731 | (tramp-message v 5 "file attributes: %s" localname) |
| 732 | v "gvfs-info" (tramp-gvfs-url-file-name filename)) | 732 | (tramp-gvfs-send-command |
| 733 | ;; Parse output ... | 733 | v "gvfs-info" (tramp-gvfs-url-file-name filename)) |
| 734 | (with-current-buffer (tramp-get-connection-buffer v) | 734 | ;; Parse output ... |
| 735 | (goto-char (point-min)) | 735 | (with-current-buffer (tramp-get-connection-buffer v) |
| 736 | (when (re-search-forward "attributes:" nil t) | ||
| 737 | ;; ... directory or symlink | ||
| 738 | (goto-char (point-min)) | ||
| 739 | (setq dirp (if (re-search-forward "type:\\s-+directory" nil t) t)) | ||
| 740 | (goto-char (point-min)) | ||
| 741 | (setq res-symlink-target | ||
| 742 | (if (re-search-forward | ||
| 743 | "standard::symlink-target:\\s-+\\(\\S-+\\)" nil t) | ||
| 744 | (match-string 1))) | ||
| 745 | ;; ... number links | ||
| 746 | (goto-char (point-min)) | ||
| 747 | (setq res-numlinks | ||
| 748 | (if (re-search-forward "unix::nlink:\\s-+\\([0-9]+\\)" nil t) | ||
| 749 | (string-to-number (match-string 1)) 0)) | ||
| 750 | ;; ... uid and gid | ||
| 751 | (goto-char (point-min)) | 736 | (goto-char (point-min)) |
| 752 | (setq res-uid | 737 | (when (re-search-forward "attributes:" nil t) |
| 753 | (or (if (eq id-format 'integer) | 738 | ;; ... directory or symlink |
| 739 | (goto-char (point-min)) | ||
| 740 | (setq dirp (if (re-search-forward "type:\\s-+directory" nil t) t)) | ||
| 741 | (goto-char (point-min)) | ||
| 742 | (setq res-symlink-target | ||
| 743 | (if (re-search-forward | ||
| 744 | "standard::symlink-target:\\s-+\\(\\S-+\\)" nil t) | ||
| 745 | (match-string 1))) | ||
| 746 | ;; ... number links | ||
| 747 | (goto-char (point-min)) | ||
| 748 | (setq res-numlinks | ||
| 749 | (if (re-search-forward | ||
| 750 | "unix::nlink:\\s-+\\([0-9]+\\)" nil t) | ||
| 751 | (string-to-number (match-string 1)) 0)) | ||
| 752 | ;; ... uid and gid | ||
| 753 | (goto-char (point-min)) | ||
| 754 | (setq res-uid | ||
| 755 | (or (if (eq id-format 'integer) | ||
| 756 | (if (re-search-forward | ||
| 757 | "unix::uid:\\s-+\\([0-9]+\\)" nil t) | ||
| 758 | (string-to-number (match-string 1))) | ||
| 754 | (if (re-search-forward | 759 | (if (re-search-forward |
| 755 | "unix::uid:\\s-+\\([0-9]+\\)" nil t) | 760 | "owner::user:\\s-+\\(\\S-+\\)" nil t) |
| 756 | (string-to-number (match-string 1))) | 761 | (match-string 1))) |
| 757 | (if (re-search-forward | 762 | (tramp-get-local-uid id-format))) |
| 758 | "owner::user:\\s-+\\(\\S-+\\)" nil t) | 763 | (setq res-gid |
| 759 | (match-string 1))) | 764 | (or (if (eq id-format 'integer) |
| 760 | (tramp-get-local-uid id-format))) | 765 | (if (re-search-forward |
| 761 | (setq res-gid | 766 | "unix::gid:\\s-+\\([0-9]+\\)" nil t) |
| 762 | (or (if (eq id-format 'integer) | 767 | (string-to-number (match-string 1))) |
| 763 | (if (re-search-forward | 768 | (if (re-search-forward |
| 764 | "unix::gid:\\s-+\\([0-9]+\\)" nil t) | 769 | "owner::group:\\s-+\\(\\S-+\\)" nil t) |
| 765 | (string-to-number (match-string 1))) | 770 | (match-string 1))) |
| 766 | (if (re-search-forward | 771 | (tramp-get-local-gid id-format))) |
| 767 | "owner::group:\\s-+\\(\\S-+\\)" nil t) | 772 | ;; ... last access, modification and change time |
| 768 | (match-string 1))) | 773 | (goto-char (point-min)) |
| 769 | (tramp-get-local-gid id-format))) | 774 | (setq res-access |
| 770 | ;; ... last access, modification and change time | 775 | (if (re-search-forward |
| 771 | (goto-char (point-min)) | 776 | "time::access:\\s-+\\([0-9]+\\)" nil t) |
| 772 | (setq res-access | 777 | (seconds-to-time (string-to-number (match-string 1))) |
| 773 | (if (re-search-forward | 778 | '(0 0))) |
| 774 | "time::access:\\s-+\\([0-9]+\\)" nil t) | 779 | (goto-char (point-min)) |
| 775 | (seconds-to-time (string-to-number (match-string 1))) | 780 | (setq res-mod |
| 776 | '(0 0))) | 781 | (if (re-search-forward |
| 777 | (goto-char (point-min)) | 782 | "time::modified:\\s-+\\([0-9]+\\)" nil t) |
| 778 | (setq res-mod | 783 | (seconds-to-time (string-to-number (match-string 1))) |
| 779 | (if (re-search-forward | 784 | '(0 0))) |
| 780 | "time::modified:\\s-+\\([0-9]+\\)" nil t) | 785 | (goto-char (point-min)) |
| 781 | (seconds-to-time (string-to-number (match-string 1))) | 786 | (setq res-change |
| 782 | '(0 0))) | 787 | (if (re-search-forward |
| 783 | (goto-char (point-min)) | 788 | "time::changed:\\s-+\\([0-9]+\\)" nil t) |
| 784 | (setq res-change | 789 | (seconds-to-time (string-to-number (match-string 1))) |
| 785 | (if (re-search-forward | 790 | '(0 0))) |
| 786 | "time::changed:\\s-+\\([0-9]+\\)" nil t) | 791 | ;; ... size |
| 787 | (seconds-to-time (string-to-number (match-string 1))) | 792 | (goto-char (point-min)) |
| 788 | '(0 0))) | 793 | (setq res-size |
| 789 | ;; ... size | 794 | (if (re-search-forward |
| 790 | (goto-char (point-min)) | 795 | "standard::size:\\s-+\\([0-9]+\\)" nil t) |
| 791 | (setq res-size | 796 | (string-to-number (match-string 1)) 0)) |
| 792 | (if (re-search-forward | 797 | ;; ... file mode flags |
| 793 | "standard::size:\\s-+\\([0-9]+\\)" nil t) | 798 | (goto-char (point-min)) |
| 794 | (string-to-number (match-string 1)) 0)) | 799 | (setq res-filemodes |
| 795 | ;; ... file mode flags | 800 | (if (re-search-forward "unix::mode:\\s-+\\([0-9]+\\)" nil t) |
| 796 | (goto-char (point-min)) | 801 | (tramp-file-mode-from-int |
| 797 | (setq res-filemodes | 802 | (string-to-number (match-string 1))) |
| 798 | (if (re-search-forward "unix::mode:\\s-+\\([0-9]+\\)" nil t) | 803 | (if dirp "drwx------" "-rwx------"))) |
| 799 | (tramp-file-mode-from-int | 804 | ;; ... inode and device |
| 800 | (string-to-number (match-string 1))) | 805 | (goto-char (point-min)) |
| 801 | (if dirp "drwx------" "-rwx------"))) | 806 | (setq res-inode |
| 802 | ;; ... inode and device | 807 | (if (re-search-forward |
| 803 | (goto-char (point-min)) | 808 | "unix::inode:\\s-+\\([0-9]+\\)" nil t) |
| 804 | (setq res-inode | 809 | (string-to-number (match-string 1)) |
| 805 | (if (re-search-forward "unix::inode:\\s-+\\([0-9]+\\)" nil t) | 810 | (tramp-get-inode v))) |
| 806 | (string-to-number (match-string 1)) | 811 | (goto-char (point-min)) |
| 807 | (tramp-get-inode v))) | 812 | (setq res-device |
| 808 | (goto-char (point-min)) | 813 | (if (re-search-forward |
| 809 | (setq res-device | 814 | "unix::device:\\s-+\\([0-9]+\\)" nil t) |
| 810 | (if (re-search-forward "unix::device:\\s-+\\([0-9]+\\)" nil t) | 815 | (string-to-number (match-string 1)) |
| 811 | (string-to-number (match-string 1)) | 816 | (tramp-get-device v))) |
| 812 | (tramp-get-device v))) | 817 | |
| 813 | 818 | ;; Return data gathered. | |
| 814 | ;; Return data gathered. | 819 | (list |
| 815 | (list | 820 | ;; 0. t for directory, string (name linked to) for |
| 816 | ;; 0. t for directory, string (name linked to) for | 821 | ;; symbolic link, or nil. |
| 817 | ;; symbolic link, or nil. | 822 | (or dirp res-symlink-target) |
| 818 | (or dirp res-symlink-target) | 823 | ;; 1. Number of links to file. |
| 819 | ;; 1. Number of links to file. | 824 | res-numlinks |
| 820 | res-numlinks | 825 | ;; 2. File uid. |
| 821 | ;; 2. File uid. | 826 | res-uid |
| 822 | res-uid | 827 | ;; 3. File gid. |
| 823 | ;; 3. File gid. | 828 | res-gid |
| 824 | res-gid | 829 | ;; 4. Last access time, as a list of integers. |
| 825 | ;; 4. Last access time, as a list of integers. | 830 | ;; 5. Last modification time, likewise. |
| 826 | ;; 5. Last modification time, likewise. | 831 | ;; 6. Last status change time, likewise. |
| 827 | ;; 6. Last status change time, likewise. | 832 | res-access res-mod res-change |
| 828 | res-access res-mod res-change | 833 | ;; 7. Size in bytes (-1, if number is out of range). |
| 829 | ;; 7. Size in bytes (-1, if number is out of range). | 834 | res-size |
| 830 | res-size | 835 | ;; 8. File modes. |
| 831 | ;; 8. File modes. | 836 | res-filemodes |
| 832 | res-filemodes | 837 | ;; 9. t if file's gid would change if file were deleted |
| 833 | ;; 9. t if file's gid would change if file were deleted | 838 | ;; and recreated. |
| 834 | ;; and recreated. | 839 | nil |
| 835 | nil | 840 | ;; 10. Inode number. |
| 836 | ;; 10. Inode number. | 841 | res-inode |
| 837 | res-inode | 842 | ;; 11. Device number. |
| 838 | ;; 11. Device number. | 843 | res-device |
| 839 | res-device | 844 | )))))))) |
| 840 | ))))))) | ||
| 841 | 845 | ||
| 842 | (defun tramp-gvfs-handle-file-directory-p (filename) | 846 | (defun tramp-gvfs-handle-file-directory-p (filename) |
| 843 | "Like `file-directory-p' for Tramp files." | 847 | "Like `file-directory-p' for Tramp files." |
diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el index 3103eb0daa2..6e46df254b2 100644 --- a/lisp/net/tramp-sh.el +++ b/lisp/net/tramp-sh.el | |||
| @@ -1103,23 +1103,24 @@ target of the symlink differ." | |||
| 1103 | (defun tramp-sh-handle-file-attributes (filename &optional id-format) | 1103 | (defun tramp-sh-handle-file-attributes (filename &optional id-format) |
| 1104 | "Like `file-attributes' for Tramp files." | 1104 | "Like `file-attributes' for Tramp files." |
| 1105 | (unless id-format (setq id-format 'integer)) | 1105 | (unless id-format (setq id-format 'integer)) |
| 1106 | ;; Don't modify `last-coding-system-used' by accident. | 1106 | (ignore-errors |
| 1107 | (let ((last-coding-system-used last-coding-system-used)) | 1107 | ;; Don't modify `last-coding-system-used' by accident. |
| 1108 | (with-parsed-tramp-file-name (expand-file-name filename) nil | 1108 | (let ((last-coding-system-used last-coding-system-used)) |
| 1109 | (with-tramp-file-property | 1109 | (with-parsed-tramp-file-name (expand-file-name filename) nil |
| 1110 | v localname (format "file-attributes-%s" id-format) | 1110 | (with-tramp-file-property |
| 1111 | (save-excursion | 1111 | v localname (format "file-attributes-%s" id-format) |
| 1112 | (tramp-convert-file-attributes | 1112 | (save-excursion |
| 1113 | v | 1113 | (tramp-convert-file-attributes |
| 1114 | (or | 1114 | v |
| 1115 | (cond | 1115 | (or |
| 1116 | ((tramp-get-remote-stat v) | 1116 | (cond |
| 1117 | (tramp-do-file-attributes-with-stat v localname id-format)) | 1117 | ((tramp-get-remote-stat v) |
| 1118 | ((tramp-get-remote-perl v) | 1118 | (tramp-do-file-attributes-with-stat v localname id-format)) |
| 1119 | (tramp-do-file-attributes-with-perl v localname id-format)) | 1119 | ((tramp-get-remote-perl v) |
| 1120 | (t nil)) | 1120 | (tramp-do-file-attributes-with-perl v localname id-format)) |
| 1121 | ;; The scripts could fail, for example with huge file size. | 1121 | (t nil)) |
| 1122 | (tramp-do-file-attributes-with-ls v localname id-format)))))))) | 1122 | ;; The scripts could fail, for example with huge file size. |
| 1123 | (tramp-do-file-attributes-with-ls v localname id-format))))))))) | ||
| 1123 | 1124 | ||
| 1124 | (defun tramp-do-file-attributes-with-ls (vec localname &optional id-format) | 1125 | (defun tramp-do-file-attributes-with-ls (vec localname &optional id-format) |
| 1125 | "Implement `file-attributes' for Tramp files using the ls(1) command." | 1126 | "Implement `file-attributes' for Tramp files using the ls(1) command." |
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index e3fb177b0c5..5889743e28b 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el | |||
| @@ -1604,7 +1604,9 @@ an input event arrives. The other arguments are passed to `tramp-error'." | |||
| 1604 | (when (and buf | 1604 | (when (and buf |
| 1605 | tramp-message-show-message | 1605 | tramp-message-show-message |
| 1606 | (not (zerop tramp-verbose)) | 1606 | (not (zerop tramp-verbose)) |
| 1607 | (not (tramp-completion-mode-p))) | 1607 | (not (tramp-completion-mode-p)) |
| 1608 | ;; Show only when Emacs has started already. | ||
| 1609 | (current-message)) | ||
| 1608 | (let ((enable-recursive-minibuffers t)) | 1610 | (let ((enable-recursive-minibuffers t)) |
| 1609 | ;; `tramp-error' does not show messages. So we must do it | 1611 | ;; `tramp-error' does not show messages. So we must do it |
| 1610 | ;; ourselves. | 1612 | ;; ourselves. |
| @@ -3917,7 +3919,8 @@ be granted." | |||
| 3917 | (tramp-file-name-method vec) | 3919 | (tramp-file-name-method vec) |
| 3918 | (tramp-file-name-user vec) | 3920 | (tramp-file-name-user vec) |
| 3919 | (tramp-file-name-host vec) | 3921 | (tramp-file-name-host vec) |
| 3920 | (tramp-file-name-localname vec)) | 3922 | (tramp-file-name-localname vec) |
| 3923 | (tramp-file-name-hop vec)) | ||
| 3921 | (intern suffix)))) | 3924 | (intern suffix)))) |
| 3922 | (remote-uid | 3925 | (remote-uid |
| 3923 | (tramp-get-connection-property | 3926 | (tramp-get-connection-property |
diff --git a/lisp/progmodes/cc-fonts.el b/lisp/progmodes/cc-fonts.el index 1c389bc3665..8035c1891d7 100644 --- a/lisp/progmodes/cc-fonts.el +++ b/lisp/progmodes/cc-fonts.el | |||
| @@ -1255,6 +1255,8 @@ casts and declarations are fontified. Used on level 2 and higher." | |||
| 1255 | c-font-lock-maybe-decl-faces | 1255 | c-font-lock-maybe-decl-faces |
| 1256 | 1256 | ||
| 1257 | (lambda (match-pos inside-macro) | 1257 | (lambda (match-pos inside-macro) |
| 1258 | ;; Note to maintainers: don't use `limit' inside this lambda form; | ||
| 1259 | ;; c-find-decl-spots sometimes narrows to less than `limit'. | ||
| 1258 | (setq start-pos (point)) | 1260 | (setq start-pos (point)) |
| 1259 | (when | 1261 | (when |
| 1260 | ;; The result of the form below is true when we don't recognize a | 1262 | ;; The result of the form below is true when we don't recognize a |
| @@ -1487,7 +1489,7 @@ casts and declarations are fontified. Used on level 2 and higher." | |||
| 1487 | ;; At a real declaration? | 1489 | ;; At a real declaration? |
| 1488 | (if (memq (c-forward-type t) '(t known found decltype)) | 1490 | (if (memq (c-forward-type t) '(t known found decltype)) |
| 1489 | (progn | 1491 | (progn |
| 1490 | (c-font-lock-declarators limit t is-typedef) | 1492 | (c-font-lock-declarators (point-max) t is-typedef) |
| 1491 | nil) | 1493 | nil) |
| 1492 | ;; False alarm. Return t to go on to the next check. | 1494 | ;; False alarm. Return t to go on to the next check. |
| 1493 | (goto-char start-pos) | 1495 | (goto-char start-pos) |
diff --git a/src/ChangeLog b/src/ChangeLog index f8ed3b36dde..e3f34e27dfc 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,26 @@ | |||
| 1 | 2014-11-08 Jan Djärv <jan.h.d@swipnet.se> | ||
| 2 | |||
| 3 | * nsterm.m (run): Only use non-system event loop if OSX version is | ||
| 4 | exactly 10.9 (Bug#18993). | ||
| 5 | |||
| 6 | 2014-11-08 Michael Albinus <michael.albinus@gmx.de> | ||
| 7 | |||
| 8 | * callproc.c (encode_current_directory): Support handling of file | ||
| 9 | names prepended by "/:". (Bug#18891) | ||
| 10 | |||
| 11 | 2014-11-08 Alan Mackenzie <acm@muc.de> | ||
| 12 | |||
| 13 | * syntax.c (back_comment): Fix off-by-one error (bug#18022). | ||
| 14 | |||
| 15 | 2014-11-08 Dima Kogan <dima@secretsauce.net> | ||
| 16 | |||
| 17 | * xgselect.c (xg_select): Use g_main_context_acquire (bug#18861). | ||
| 18 | |||
| 19 | 2014-11-08 Michael Albinus <michael.albinus@gmx.de> | ||
| 20 | |||
| 21 | * dired.c (Ffile_attributes): Return Qnil, if Fexpand_file_name | ||
| 22 | raises an error. (Bug#18891) | ||
| 23 | |||
| 1 | 2014-11-08 Martin Rudalics <rudalics@gmx.at> | 24 | 2014-11-08 Martin Rudalics <rudalics@gmx.at> |
| 2 | 25 | ||
| 3 | * frame.c (adjust_frame_size): Call x_set_window_size only if | 26 | * frame.c (adjust_frame_size): Call x_set_window_size only if |
diff --git a/src/callproc.c b/src/callproc.c index e3dcc7bbcca..24b88551851 100644 --- a/src/callproc.c +++ b/src/callproc.c | |||
| @@ -127,6 +127,14 @@ encode_current_directory (void) | |||
| 127 | 127 | ||
| 128 | dir = expand_and_dir_to_file (dir, Qnil); | 128 | dir = expand_and_dir_to_file (dir, Qnil); |
| 129 | 129 | ||
| 130 | if (NILP (Ffile_accessible_directory_p (dir))) | ||
| 131 | report_file_error ("Setting current directory", | ||
| 132 | BVAR (current_buffer, directory)); | ||
| 133 | |||
| 134 | /* Remove "/:" from dir. */ | ||
| 135 | if (! NILP (Fstring_match (build_string ("^/:"), dir, Qnil))) | ||
| 136 | dir = Fsubstring (dir, make_number (2), Qnil); | ||
| 137 | |||
| 130 | if (STRING_MULTIBYTE (dir)) | 138 | if (STRING_MULTIBYTE (dir)) |
| 131 | dir = ENCODE_FILE (dir); | 139 | dir = ENCODE_FILE (dir); |
| 132 | if (! file_accessible_directory_p (dir)) | 140 | if (! file_accessible_directory_p (dir)) |
diff --git a/src/dired.c b/src/dired.c index ba6a61a2f5b..8afba247e61 100644 --- a/src/dired.c +++ b/src/dired.c | |||
| @@ -909,7 +909,10 @@ so last access time will always be midnight of that day. */) | |||
| 909 | Lisp_Object encoded; | 909 | Lisp_Object encoded; |
| 910 | Lisp_Object handler; | 910 | Lisp_Object handler; |
| 911 | 911 | ||
| 912 | filename = Fexpand_file_name (filename, Qnil); | 912 | filename = internal_condition_case_2 (Fexpand_file_name, filename, Qnil, |
| 913 | Qt, Fidentity); | ||
| 914 | if (!STRINGP (filename)) | ||
| 915 | return Qnil; | ||
| 913 | 916 | ||
| 914 | /* If the file name has special constructs in it, | 917 | /* If the file name has special constructs in it, |
| 915 | call the corresponding file handler. */ | 918 | call the corresponding file handler. */ |
diff --git a/src/nsterm.m b/src/nsterm.m index c8ad50ef339..216678357e7 100644 --- a/src/nsterm.m +++ b/src/nsterm.m | |||
| @@ -4501,15 +4501,15 @@ ns_term_shutdown (int sig) | |||
| 4501 | #ifdef NS_IMPL_COCOA | 4501 | #ifdef NS_IMPL_COCOA |
| 4502 | - (void)run | 4502 | - (void)run |
| 4503 | { | 4503 | { |
| 4504 | #ifndef NSAppKitVersionNumber10_8 | 4504 | #ifndef NSAppKitVersionNumber10_9 |
| 4505 | #define NSAppKitVersionNumber10_8 1187 | 4505 | #define NSAppKitVersionNumber10_9 1265 |
| 4506 | #endif | 4506 | #endif |
| 4507 | 4507 | ||
| 4508 | if (NSAppKitVersionNumber <= NSAppKitVersionNumber10_8) | 4508 | if ((int)NSAppKitVersionNumber != NSAppKitVersionNumber10_9) |
| 4509 | { | 4509 | { |
| 4510 | [super run]; | 4510 | [super run]; |
| 4511 | return; | 4511 | return; |
| 4512 | } | 4512 | } |
| 4513 | 4513 | ||
| 4514 | NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; | 4514 | NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; |
| 4515 | 4515 | ||
diff --git a/src/syntax.c b/src/syntax.c index 9f5ef754e2a..dc84ca69fb7 100644 --- a/src/syntax.c +++ b/src/syntax.c | |||
| @@ -825,7 +825,7 @@ back_comment (ptrdiff_t from, ptrdiff_t from_byte, ptrdiff_t stop, | |||
| 825 | { | 825 | { |
| 826 | from = comment_end; | 826 | from = comment_end; |
| 827 | from_byte = comment_end_byte; | 827 | from_byte = comment_end_byte; |
| 828 | UPDATE_SYNTAX_TABLE_FORWARD (comment_end - 1); | 828 | UPDATE_SYNTAX_TABLE_FORWARD (comment_end); |
| 829 | } | 829 | } |
| 830 | /* If comstart_pos is set and we get here (ie. didn't jump to `lossage' | 830 | /* If comstart_pos is set and we get here (ie. didn't jump to `lossage' |
| 831 | or `done'), then we've found the beginning of the non-nested comment. */ | 831 | or `done'), then we've found the beginning of the non-nested comment. */ |
diff --git a/src/xgselect.c b/src/xgselect.c index bf889a90e97..4e2d1c8db69 100644 --- a/src/xgselect.c +++ b/src/xgselect.c | |||
| @@ -55,19 +55,28 @@ xg_select (int fds_lim, fd_set *rfds, fd_set *wfds, fd_set *efds, | |||
| 55 | GPollFD *gfds = gfds_buf; | 55 | GPollFD *gfds = gfds_buf; |
| 56 | int gfds_size = ARRAYELTS (gfds_buf); | 56 | int gfds_size = ARRAYELTS (gfds_buf); |
| 57 | int n_gfds, retval = 0, our_fds = 0, max_fds = fds_lim - 1; | 57 | int n_gfds, retval = 0, our_fds = 0, max_fds = fds_lim - 1; |
| 58 | int i, nfds, tmo_in_millisec; | 58 | bool context_acquired = false; |
| 59 | int i, nfds, tmo_in_millisec = -1; | ||
| 59 | bool need_to_dispatch; | 60 | bool need_to_dispatch; |
| 60 | USE_SAFE_ALLOCA; | 61 | USE_SAFE_ALLOCA; |
| 61 | 62 | ||
| 62 | context = g_main_context_default (); | 63 | context = g_main_context_default (); |
| 64 | context_acquired = g_main_context_acquire (context); | ||
| 65 | /* FIXME: If we couldn't acquire the context, we just silently proceed | ||
| 66 | because this function handles more than just glib file descriptors. | ||
| 67 | Note that, as implemented, this failure is completely silent: there is | ||
| 68 | no feedback to the caller. */ | ||
| 63 | 69 | ||
| 64 | if (rfds) all_rfds = *rfds; | 70 | if (rfds) all_rfds = *rfds; |
| 65 | else FD_ZERO (&all_rfds); | 71 | else FD_ZERO (&all_rfds); |
| 66 | if (wfds) all_wfds = *wfds; | 72 | if (wfds) all_wfds = *wfds; |
| 67 | else FD_ZERO (&all_wfds); | 73 | else FD_ZERO (&all_wfds); |
| 68 | 74 | ||
| 69 | n_gfds = g_main_context_query (context, G_PRIORITY_LOW, &tmo_in_millisec, | 75 | n_gfds = (context_acquired |
| 70 | gfds, gfds_size); | 76 | ? g_main_context_query (context, G_PRIORITY_LOW, &tmo_in_millisec, |
| 77 | gfds, gfds_size) | ||
| 78 | : -1); | ||
| 79 | |||
| 71 | if (gfds_size < n_gfds) | 80 | if (gfds_size < n_gfds) |
| 72 | { | 81 | { |
| 73 | SAFE_NALLOCA (gfds, sizeof *gfds, n_gfds); | 82 | SAFE_NALLOCA (gfds, sizeof *gfds, n_gfds); |
| @@ -152,6 +161,9 @@ xg_select (int fds_lim, fd_set *rfds, fd_set *wfds, fd_set *efds, | |||
| 152 | errno = pselect_errno; | 161 | errno = pselect_errno; |
| 153 | } | 162 | } |
| 154 | 163 | ||
| 164 | if (context_acquired) | ||
| 165 | g_main_context_release (context); | ||
| 166 | |||
| 155 | /* To not have to recalculate timeout, return like this. */ | 167 | /* To not have to recalculate timeout, return like this. */ |
| 156 | if ((our_fds > 0 || (nfds == 0 && tmop == &tmo)) && (retval == 0)) | 168 | if ((our_fds > 0 || (nfds == 0 && tmop == &tmo)) && (retval == 0)) |
| 157 | { | 169 | { |