aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGlenn Morris2011-03-12 11:19:47 -0800
committerGlenn Morris2011-03-12 11:19:47 -0800
commit09d9db2c4921cb2eb0974892164dd03d6bffdd80 (patch)
tree7165f97f16ea0eaab567db2a45f69d1cdf66bdce
parent54ce11a161cd756047fccdfc128dc0527692ea06 (diff)
parent6efb972c00a9ea8ffa84118199aa59c2d3a3b50e (diff)
downloademacs-09d9db2c4921cb2eb0974892164dd03d6bffdd80.tar.gz
emacs-09d9db2c4921cb2eb0974892164dd03d6bffdd80.zip
Merge from emacs-23; up to 2010-06-03T22:16:02Z!dann@ics.uci.edu
-rw-r--r--doc/emacs/ChangeLog5
-rw-r--r--doc/emacs/msdog.texi53
-rw-r--r--lisp/ChangeLog17
-rw-r--r--lisp/ebuff-menu.el101
-rw-r--r--lisp/files.el10
-rw-r--r--lisp/server.el8
-rw-r--r--src/ChangeLog7
-rw-r--r--src/fringe.c8
-rw-r--r--src/unexmacosx.c1
9 files changed, 127 insertions, 83 deletions
diff --git a/doc/emacs/ChangeLog b/doc/emacs/ChangeLog
index a53aa095cc2..a30ffc07971 100644
--- a/doc/emacs/ChangeLog
+++ b/doc/emacs/ChangeLog
@@ -1,3 +1,8 @@
12011-03-12 Eli Zaretskii <eliz@gnu.org>
2
3 * msdog.texi (Windows HOME): Fix the wording to clarify how Emacs sets
4 HOME on Windows and where it looks for init files. (Bug#8221)
5
12011-03-10 Eli Zaretskii <eliz@gnu.org> 62011-03-10 Eli Zaretskii <eliz@gnu.org>
2 7
3 * search.texi (Regexp Example): 8 * search.texi (Regexp Example):
diff --git a/doc/emacs/msdog.texi b/doc/emacs/msdog.texi
index 7358773485d..0a454db86bb 100644
--- a/doc/emacs/msdog.texi
+++ b/doc/emacs/msdog.texi
@@ -404,36 +404,45 @@ names, which might cause misalignment of columns in Dired display.
404@dfn{user-specific application data directory}. The actual location 404@dfn{user-specific application data directory}. The actual location
405depends on your Windows version and system configuration; typical values 405depends on your Windows version and system configuration; typical values
406are @file{C:\Documents and Settings\@var{username}\Application Data} on 406are @file{C:\Documents and Settings\@var{username}\Application Data} on
407Windows 2K/XP and later, and either @file{C:\WINDOWS\Application Data} 407Windows 2K/XP/2K3, @file{C:\Users\@var{username}\AppData\Roaming} on
408Windows Vista/7/2K8, and either @file{C:\WINDOWS\Application Data}
408or @file{C:\WINDOWS\Profiles\@var{username}\Application Data} on the 409or @file{C:\WINDOWS\Profiles\@var{username}\Application Data} on the
409older Windows 9X/ME systems. 410older Windows 9X/ME systems. If this directory does not exist or
410 411cannot be accessed, Emacs falls back to @file{C:\} as the default
411 @code{HOME} can also be set in the system registry, for details see 412value of @code{HOME}.
413
414 You can override this default value of @code{HOME} by explicitly
415setting the environment variable @env{HOME} to point to any directory
416on your system. @env{HOME} can be set either from the command shell
417prompt or from the @samp{My Computer}s @samp{Properties} dialog.
418@code{HOME} can also be set in the system registry, for details see
412@ref{MS-Windows Registry}. 419@ref{MS-Windows Registry}.
413 420
414@cindex init file @file{.emacs} on MS-Windows 421 For compatibility with older versions of Emacs@footnote{
415 The home directory is where your init file @file{.emacs} is stored. 422Older versions of Emacs didn't check the application data directory.
416When Emacs starts, it first checks whether the environment variable 423}, if there is a file named @file{.emacs} in @file{C:\}, the root
417@env{HOME} is set. If it is, it looks for the init file in the 424directory of drive @file{C:}, and @env{HOME} is set neither in the
418directory pointed by @env{HOME}. If @env{HOME} is not defined, Emacs 425environment nor in the Registry, Emacs will treat @file{C:\} as the
419checks for an existing @file{.emacs} file in @file{C:\}, the root 426default @code{HOME} location, and will not look in the application
420directory of drive @file{C:}@footnote{ 427data directory, even if it exists. Note that only @file{.emacs} is
421The check in @file{C:\} is for compatibility with older versions of Emacs, 428looked for in @file{C:\}; the older name @file{_emacs} (see below) is
422which didn't check the application data directory. 429not. This use of @file{C:\.emacs} to define @code{HOME} is
423}. If there's no such file in @file{C:\}, Emacs next uses the Windows 430deprecated.
424system calls to find out the exact location of your application data 431
425directory. If that system call fails, Emacs falls back to @file{C:\}. 432 Whatever the final place is, Emacs sets the internal value of the
426 433@env{HOME} environment variable to point to it, and it will use that
427 Whatever the final place is, Emacs sets the value of the @env{HOME} 434location for other files and directories it normally looks for or
428environment variable to point to it, and it will use that location for 435creates in the user's home directory.
429other files and directories it normally creates in the user's home
430directory.
431 436
432 You can always find out where Emacs thinks is your home directory's 437 You can always find out where Emacs thinks is your home directory's
433location by typing @kbd{C-x d ~/ @key{RET}}. This should present the 438location by typing @kbd{C-x d ~/ @key{RET}}. This should present the
434list of files in the home directory, and show its full name on the 439list of files in the home directory, and show its full name on the
435first line. Likewise, to visit your init file, type @kbd{C-x C-f 440first line. Likewise, to visit your init file, type @kbd{C-x C-f
436~/.emacs @key{RET}}. 441~/.emacs @key{RET}} (assuming the file's name is @file{.emacs}).
442
443@cindex init file @file{.emacs} on MS-Windows
444 The home directory is where your init file is stored. It can have
445any name mentioned in @ref{Init File}.
437 446
438@cindex @file{_emacs} init file, MS-Windows 447@cindex @file{_emacs} init file, MS-Windows
439 Because MS-DOS does not allow file names with leading dots, and 448 Because MS-DOS does not allow file names with leading dots, and
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 5f5484af8f2..3b47dd24698 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,20 @@
12011-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * ebuff-menu.el (electric-buffer-menu-mode-map): Move initialization
4 into declaration. Remove redundant and harmful binding.
5
62011-03-12 Eli Zaretskii <eliz@gnu.org>
7
8 * files.el (file-ownership-preserved-p): Pass `integer' as an
9 explicit 2nd argument to `file-attributes'. If the file's owner
10 is the Administrators group on Windows, and the current user is
11 Administrator, consider that a match.
12
13 * server.el (server-ensure-safe-dir): Consider server directory
14 safe on MS-Windows if its owner is the Administrators group while
15 the current Emacs user is Administrator. Use `=' to compare
16 numerical UIDs, since they could be integers or floats.
17
12011-03-12 Juanma Barranquero <lekktu@gmail.com> 182011-03-12 Juanma Barranquero <lekktu@gmail.com>
2 19
3 * vc/vc-bzr.el (vc-bzr-state): Handle bzr 2.3.0 (follow-up to bug#8170). 20 * vc/vc-bzr.el (vc-bzr-state): Handle bzr 2.3.0 (follow-up to bug#8170).
diff --git a/lisp/ebuff-menu.el b/lisp/ebuff-menu.el
index dd589cb58f7..a906cf8516a 100644
--- a/lisp/ebuff-menu.el
+++ b/lisp/ebuff-menu.el
@@ -34,7 +34,56 @@
34;; this depends on the format of list-buffers (from src/buffer.c) and 34;; this depends on the format of list-buffers (from src/buffer.c) and
35;; on stuff in lisp/buff-menu.el 35;; on stuff in lisp/buff-menu.el
36 36
37(defvar electric-buffer-menu-mode-map nil) 37(defvar electric-buffer-menu-mode-map
38 (let ((map (make-keymap)))
39 (fillarray (car (cdr map)) 'Electric-buffer-menu-undefined)
40 (define-key map "\e" nil)
41 (define-key map "\C-z" 'suspend-frame)
42 (define-key map "v" 'Electric-buffer-menu-mode-view-buffer)
43 (define-key map (char-to-string help-char) 'Helper-help)
44 (define-key map "?" 'Helper-describe-bindings)
45 (define-key map "\C-c" nil)
46 (define-key map "\C-c\C-c" 'Electric-buffer-menu-quit)
47 (define-key map "\C-]" 'Electric-buffer-menu-quit)
48 (define-key map "q" 'Electric-buffer-menu-quit)
49 (define-key map " " 'Electric-buffer-menu-select)
50 (define-key map "\C-m" 'Electric-buffer-menu-select)
51 (define-key map "\C-l" 'recenter)
52 (define-key map "s" 'Buffer-menu-save)
53 (define-key map "d" 'Buffer-menu-delete)
54 (define-key map "k" 'Buffer-menu-delete)
55 (define-key map "\C-d" 'Buffer-menu-delete-backwards)
56 ;; (define-key map "\C-k" 'Buffer-menu-delete)
57 (define-key map "\177" 'Buffer-menu-backup-unmark)
58 (define-key map "~" 'Buffer-menu-not-modified)
59 (define-key map "u" 'Buffer-menu-unmark)
60 (let ((i ?0))
61 (while (<= i ?9)
62 (define-key map (char-to-string i) 'digit-argument)
63 (define-key map (concat "\e" (char-to-string i)) 'digit-argument)
64 (setq i (1+ i))))
65 (define-key map "-" 'negative-argument)
66 (define-key map "\e-" 'negative-argument)
67 (define-key map "m" 'Buffer-menu-mark)
68 (define-key map "\C-u" 'universal-argument)
69 (define-key map "\C-p" 'previous-line)
70 (define-key map "\C-n" 'next-line)
71 (define-key map "p" 'previous-line)
72 (define-key map "n" 'next-line)
73 (define-key map "\C-v" 'scroll-up)
74 (define-key map "\ev" 'scroll-down)
75 (define-key map ">" 'scroll-right)
76 (define-key map "<" 'scroll-left)
77 (define-key map "\e\C-v" 'scroll-other-window)
78 (define-key map "\e>" 'end-of-buffer)
79 (define-key map "\e<" 'beginning-of-buffer)
80 (define-key map "\e\e" nil)
81 (define-key map "\e\e\e" 'Electric-buffer-menu-quit)
82 ;; This binding prevents the "escape => ESC" function-key-map mapping from
83 ;; kicking in!
84 ;; (define-key map [escape escape escape] 'Electric-buffer-menu-quit)
85 (define-key map [mouse-2] 'Electric-buffer-menu-mouse-select)
86 map))
38 87
39(defvar electric-buffer-menu-mode-hook nil 88(defvar electric-buffer-menu-mode-hook nil
40 "Normal hook run by `electric-buffer-list'.") 89 "Normal hook run by `electric-buffer-list'.")
@@ -167,55 +216,7 @@ Entry to this mode via command `electric-buffer-list' calls the value of
167;; generally the same as Buffer-menu-mode-map 216;; generally the same as Buffer-menu-mode-map
168;; (except we don't indirect to global-map) 217;; (except we don't indirect to global-map)
169(put 'Electric-buffer-menu-undefined 'suppress-keymap t) 218(put 'Electric-buffer-menu-undefined 'suppress-keymap t)
170(if electric-buffer-menu-mode-map 219
171 nil
172 (let ((map (make-keymap)))
173 (fillarray (car (cdr map)) 'Electric-buffer-menu-undefined)
174 (define-key map "\e" nil)
175 (define-key map "\C-z" 'suspend-frame)
176 (define-key map "v" 'Electric-buffer-menu-mode-view-buffer)
177 (define-key map (char-to-string help-char) 'Helper-help)
178 (define-key map "?" 'Helper-describe-bindings)
179 (define-key map "\C-c" nil)
180 (define-key map "\C-c\C-c" 'Electric-buffer-menu-quit)
181 (define-key map "\C-]" 'Electric-buffer-menu-quit)
182 (define-key map "q" 'Electric-buffer-menu-quit)
183 (define-key map " " 'Electric-buffer-menu-select)
184 (define-key map "\C-m" 'Electric-buffer-menu-select)
185 (define-key map "\C-l" 'recenter)
186 (define-key map "s" 'Buffer-menu-save)
187 (define-key map "d" 'Buffer-menu-delete)
188 (define-key map "k" 'Buffer-menu-delete)
189 (define-key map "\C-d" 'Buffer-menu-delete-backwards)
190 ;(define-key map "\C-k" 'Buffer-menu-delete)
191 (define-key map "\177" 'Buffer-menu-backup-unmark)
192 (define-key map "~" 'Buffer-menu-not-modified)
193 (define-key map "u" 'Buffer-menu-unmark)
194 (let ((i ?0))
195 (while (<= i ?9)
196 (define-key map (char-to-string i) 'digit-argument)
197 (define-key map (concat "\e" (char-to-string i)) 'digit-argument)
198 (setq i (1+ i))))
199 (define-key map "-" 'negative-argument)
200 (define-key map "\e-" 'negative-argument)
201 (define-key map "m" 'Buffer-menu-mark)
202 (define-key map "\C-u" 'universal-argument)
203 (define-key map "\C-p" 'previous-line)
204 (define-key map "\C-n" 'next-line)
205 (define-key map "p" 'previous-line)
206 (define-key map "n" 'next-line)
207 (define-key map "\C-v" 'scroll-up)
208 (define-key map "\ev" 'scroll-down)
209 (define-key map ">" 'scroll-right)
210 (define-key map "<" 'scroll-left)
211 (define-key map "\e\C-v" 'scroll-other-window)
212 (define-key map "\e>" 'end-of-buffer)
213 (define-key map "\e<" 'beginning-of-buffer)
214 (define-key map "\e\e" nil)
215 (define-key map "\e\e\e" 'Electric-buffer-menu-quit)
216 (define-key map [escape escape escape] 'Electric-buffer-menu-quit)
217 (define-key map [mouse-2] 'Electric-buffer-menu-mouse-select)
218 (setq electric-buffer-menu-mode-map map)))
219 220
220(defun Electric-buffer-menu-exit () 221(defun Electric-buffer-menu-exit ()
221 (interactive) 222 (interactive)
diff --git a/lisp/files.el b/lisp/files.el
index ffc0b33119f..198d5ca87de 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -3895,11 +3895,17 @@ See also `file-name-version-regexp'."
3895 (let ((handler (find-file-name-handler file 'file-ownership-preserved-p))) 3895 (let ((handler (find-file-name-handler file 'file-ownership-preserved-p)))
3896 (if handler 3896 (if handler
3897 (funcall handler 'file-ownership-preserved-p file) 3897 (funcall handler 'file-ownership-preserved-p file)
3898 (let ((attributes (file-attributes file))) 3898 (let ((attributes (file-attributes file 'integer)))
3899 ;; Return t if the file doesn't exist, since it's true that no 3899 ;; Return t if the file doesn't exist, since it's true that no
3900 ;; information would be lost by an (attempted) delete and create. 3900 ;; information would be lost by an (attempted) delete and create.
3901 (or (null attributes) 3901 (or (null attributes)
3902 (= (nth 2 attributes) (user-uid))))))) 3902 (= (nth 2 attributes) (user-uid))
3903 ;; Files created on Windows by Administrator (RID=500)
3904 ;; have the Administrators group (RID=544) recorded as
3905 ;; their owner. Rewriting them will still preserve the
3906 ;; owner.
3907 (and (eq system-type 'windows-nt)
3908 (= (user-uid) 500) (= (nth 2 attributes) 544)))))))
3903 3909
3904(defun file-name-sans-extension (filename) 3910(defun file-name-sans-extension (filename)
3905 "Return FILENAME sans final \"extension\". 3911 "Return FILENAME sans final \"extension\".
diff --git a/lisp/server.el b/lisp/server.el
index df8cae0a6af..cb1903ad96c 100644
--- a/lisp/server.el
+++ b/lisp/server.el
@@ -485,7 +485,13 @@ See variable `server-auth-dir' for details."
485 (file-name-as-directory dir)) 485 (file-name-as-directory dir))
486 :warning) 486 :warning)
487 (throw :safe t)) 487 (throw :safe t))
488 (unless (eql uid (user-uid)) ; is the dir ours? 488 (unless (or (= uid (user-uid)) ; is the dir ours?
489 (and w32
490 ;; Files created on Windows by
491 ;; Administrator (RID=500) have
492 ;; the Administrators (RID=544)
493 ;; group recorded as the owner.
494 (= uid 544) (= (user-uid) 500)))
489 (throw :safe nil)) 495 (throw :safe nil))
490 (when w32 ; on NTFS? 496 (when w32 ; on NTFS?
491 (throw :safe t)) 497 (throw :safe t))
diff --git a/src/ChangeLog b/src/ChangeLog
index 5976265ef85..a3098114388 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,10 @@
12011-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2
3 * fringe.c (update_window_fringes): Remove unused variables.
4
5 * unexmacosx.c (copy_data_segment): Also copy __got section.
6 (Bug#8223)
7
12011-03-12 Eli Zaretskii <eliz@gnu.org> 82011-03-12 Eli Zaretskii <eliz@gnu.org>
2 9
3 * termcap.c [MSDOS]: Include "msdos.h. 10 * termcap.c [MSDOS]: Include "msdos.h.
diff --git a/src/fringe.c b/src/fringe.c
index 82fc38aee8a..ce75df766ee 100644
--- a/src/fringe.c
+++ b/src/fringe.c
@@ -954,18 +954,10 @@ update_window_fringes (struct window *w, int keep_current_p)
954 y < yb && rn < nrows; 954 y < yb && rn < nrows;
955 y += row->height, ++rn) 955 y += row->height, ++rn)
956 { 956 {
957 unsigned indicate_bob_p, indicate_top_line_p;
958 unsigned indicate_eob_p, indicate_bottom_line_p;
959
960 row = w->desired_matrix->rows + rn; 957 row = w->desired_matrix->rows + rn;
961 if (!row->enabled_p) 958 if (!row->enabled_p)
962 row = w->current_matrix->rows + rn; 959 row = w->current_matrix->rows + rn;
963 960
964 indicate_bob_p = row->indicate_bob_p;
965 indicate_top_line_p = row->indicate_top_line_p;
966 indicate_eob_p = row->indicate_eob_p;
967 indicate_bottom_line_p = row->indicate_bottom_line_p;
968
969 row->indicate_bob_p = row->indicate_top_line_p = 0; 961 row->indicate_bob_p = row->indicate_top_line_p = 0;
970 row->indicate_eob_p = row->indicate_bottom_line_p = 0; 962 row->indicate_eob_p = row->indicate_bottom_line_p = 0;
971 963
diff --git a/src/unexmacosx.c b/src/unexmacosx.c
index 7a55498085d..2e46c063e95 100644
--- a/src/unexmacosx.c
+++ b/src/unexmacosx.c
@@ -828,6 +828,7 @@ copy_data_segment (struct load_command *lc)
828 } 828 }
829 else if (strncmp (sectp->sectname, "__la_symbol_ptr", 16) == 0 829 else if (strncmp (sectp->sectname, "__la_symbol_ptr", 16) == 0
830 || strncmp (sectp->sectname, "__nl_symbol_ptr", 16) == 0 830 || strncmp (sectp->sectname, "__nl_symbol_ptr", 16) == 0
831 || strncmp (sectp->sectname, "__got", 16) == 0
831 || strncmp (sectp->sectname, "__la_sym_ptr2", 16) == 0 832 || strncmp (sectp->sectname, "__la_sym_ptr2", 16) == 0
832 || strncmp (sectp->sectname, "__dyld", 16) == 0 833 || strncmp (sectp->sectname, "__dyld", 16) == 0
833 || strncmp (sectp->sectname, "__const", 16) == 0 834 || strncmp (sectp->sectname, "__const", 16) == 0