changeset 108420:c82e39ab7a78

Merge from mainline.
author Katsumi Yamaoka <yamaoka@jpl.org>
date Fri, 19 Feb 2010 15:29:56 +0000
parents 26b8483edca9 (current diff) f32d789c9aab (diff)
children b8e814363b3d
files admin/notes/commits
diffstat 26 files changed, 246 insertions(+), 179 deletions(-) [+]
line wrap: on
line diff
--- a/INSTALL.BZR	Wed Feb 17 13:43:12 2010 +0000
+++ b/INSTALL.BZR	Fri Feb 19 15:29:56 2010 +0000
@@ -64,15 +64,6 @@
 someone to fix it.
 
 
-Note on accessing the Bazaar repository
----------------------------------------
-
-Write access to the Bazaar repository is currently done via Bazaar's
-sftp:// protocol; see http://www.emacswiki.org/emacs/BzrForEmacsDevs.
-We plan to offer bzr+ssh:// access later.  More discussion about that
-is at https://savannah.gnu.org/support/?107077.
-
-
 
 This file is part of GNU Emacs.
 
--- a/admin/README	Wed Feb 17 13:43:12 2010 +0000
+++ b/admin/README	Fri Feb 19 15:29:56 2010 +0000
@@ -1,5 +1,5 @@
-Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
-  Free Software Foundation, Inc.
+Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
+  2010  Free Software Foundation, Inc.
 See the end of the file for license conditions.
 
 
@@ -44,7 +44,7 @@
 
 Install emacs quickly (`incrementally').
 
-** alloc-color.c
+** alloc-colors.c
 
 A utility program that allocates a given number of colors on X.  Can
 be used to debug Emacs with dense colormaps (PseudoColor).
@@ -61,10 +61,6 @@
 
 Show files added/removed between two tar files.
 
-** revdiff
-
-Get CVS diffs of files.
-
 
 Brief description of sub-directories:
 
--- a/admin/notes/commits	Wed Feb 17 13:43:12 2010 +0000
+++ b/admin/notes/commits	Fri Feb 19 15:29:56 2010 +0000
@@ -1,10 +1,17 @@
 HOW TO COMMIT CHANGES TO EMACS
 
+Most of these points are from:
+
 http://lists.gnu.org/archive/html/emacs-devel/2009-03/msg00555.html
 From: 	 Miles Bader
 Subject: commit style redux
 Date: 	 Tue, 31 Mar 2009 12:21:20 +0900
 
+(0) Each commit should correspond to a single change (whether spread
+    over multiple files or not).  Do not mix different changes in the
+    same commit (eg adding a feature in one file, fixing a bug in
+    another should be two commits, not one).
+
 (1) Commit all changed files at once with a single log message (which
     in CVS will result in an identical log message for all committed
     files), not one-by-one.  This is pretty easy using vc-dir now.
@@ -41,6 +48,7 @@
 
 Followup discussion:
 http://lists.gnu.org/archive/html/emacs-devel/2010-01/msg00897.html
+http://lists.gnu.org/archive/html/emacs-devel/2010-02/msg00401.html
 
 
 PREVIOUS GUIDELINES FOR CVS
--- a/doc/emacs/ChangeLog	Wed Feb 17 13:43:12 2010 +0000
+++ b/doc/emacs/ChangeLog	Fri Feb 19 15:29:56 2010 +0000
@@ -1,3 +1,7 @@
+2010-02-18  Glenn Morris  <rgm@gnu.org>
+
+	* trouble.texi (Contributing): Repository is no longer CVS.
+
 2010-02-08  Glenn Morris  <rgm@gnu.org>
 
 	* buffers.texi (Uniquify): Must explicitly load library.  (Bug#5529)
--- a/doc/emacs/trouble.texi	Wed Feb 17 13:43:12 2010 +0000
+++ b/doc/emacs/trouble.texi	Fri Feb 19 15:29:56 2010 +0000
@@ -1022,7 +1022,7 @@
 possible to suggest ways to make your extension fit in better with the
 rest of Emacs.
 
-The development version of Emacs can be downloaded from the CVS
+The development version of Emacs can be downloaded from the
 repository where it is actively maintained by a group of developers.
 See the Emacs project page
 @url{http://savannah.gnu.org/projects/emacs/} for details.
--- a/etc/CONTRIBUTE	Wed Feb 17 13:43:12 2010 +0000
+++ b/etc/CONTRIBUTE	Fri Feb 19 15:29:56 2010 +0000
@@ -1,4 +1,5 @@
-Copyright (C) 2006, 2007, 2008, 2009, 2010  Free Software Foundation, Inc.
+Copyright (C) 2006, 2007, 2008, 2009, 2010
+  Free Software Foundation, Inc.
 See end for license conditions.
 
 
@@ -30,7 +31,7 @@
 
 * Coding Standards
 
-Contributed code should follow the GNU Coding Standard.
+Contributed code should follow the GNU Coding Standards.
 
 If it doesn't, we'll need to find someone to fix the code before we
 can use it.
@@ -44,24 +45,24 @@
 
 * Copyright Assignment
 
-We can accept small changes without legal papers, and for medium-size
-changes a copyright disclaimer is ok too.  To accept substantial
-contributions from you, we need a copyright assignment form filled out
-and filed with the FSF.
-
-Contact us at emacs-devel@gnu.org to obtain the relevant forms.
+We can accept small changes (roughly, fewer than 15 lines) without
+legal papers.  Anything more substantial requires a copyright
+disclaimer or assignment (the latter is preferred, especially for
+larger changes).  Both of these involved filling out a short form and
+filing it with the FSF.  The process is straightforward -- contact us
+at emacs-devel@gnu.org to obtain the relevant forms.
 
 
 * Getting the Source Code
 
-The latest version of Emacs can be downloaded using CVS (or other
-version control systems) from the Savannah web site.  It is important
-to write your patch based on this version; if you start from an older
-version, your patch may be outdated when you write it, and maintainers
-will have a hard time applying it.
+The latest version of Emacs can be downloaded using Bazaar from the
+Savannah web site.  It is important to write your patch based on the
+latest version.  If you start from an older version, your patch may be
+outdated (so that maintainers will have a hard time applying it), or
+changes in Emacs may have made your patch unnecessary.
 
-After you have downloaded the CVS source, you should read the file
-INSTALL.CVS for build instructions (they differ to some extent from a
+After you have downloaded the Bazaar source, you should read the file
+INSTALL.BZR for build instructions (they differ to some extent from a
 normal build).
 
 Ref: http://savannah.gnu.org/projects/emacs
@@ -75,7 +76,7 @@
 When you have all these pieces, bundle them up in a mail message and
 send it to bug-gnu-emacs@gnu.org or emacs-devel@gnu.org.
 
-All subsequent discussion should also be sent to the mailing list.
+All subsequent discussion should be sent to the same mailing list.
 
 ** Description
 
@@ -88,7 +89,7 @@
 
 A ChangeLog entry as plaintext (separate from the patch).
 
-See the various ChangeLog files for format and content. Note that,
+See the various ChangeLog files for format and content.  Note that,
 unlike some other projects, we do require ChangeLogs also for
 documentation, i.e. Texinfo files.
 
@@ -99,9 +100,10 @@
 
 Please use "Context Diff" format.
 
-If you are accessing the CVS repository use
-	cvs update; cvs diff -cp
-else, use
+If you are accessing the Bazaar repository, make sure your copy is
+up-to-date (e.g. with `bzr pull'), then use
+        bzr diff --no-aliases --diff-options=-cp
+Else, use
 	diff -cp OLD NEW
 
 If your version of diff does not support these options, then get the
@@ -122,6 +124,11 @@
 If you send several unrelated changes together, we will ask you to
 separate them so we can consider each of the changes by itself.
 
+** Do not make formatting changes.
+
+Making cosmetic formatting changes (indentation, etc) makes it harder
+to see what you have really changed.
+
 
 * Coding style and conventions.
 
@@ -139,17 +146,17 @@
 
 * Supplemental information for Emacs Developers.
 
-** Write access to Emacs' CVS repository.
+** Write access to the Emacs repository.
 
 Once you become a frequent contributor to Emacs, we can consider
-giving you write access to the CVS repository.
+giving you write access to the Bazaar repository.
 
 
 ** Emacs Mailing lists.
 
 Discussion about Emacs development takes place on emacs-devel@gnu.org.
 
-Bug reports are sent to bug-gnu-emacs@gnu.org.
+Bug reports and feature requests are sent to bug-gnu-emacs@gnu.org.
 
 You can subscribe to the mailing lists at savannah.gnu.org/projects/emacs.
 
--- a/lisp/ChangeLog	Wed Feb 17 13:43:12 2010 +0000
+++ b/lisp/ChangeLog	Fri Feb 19 15:29:56 2010 +0000
@@ -1,7 +1,54 @@
+2010-02-19  Nick Roberts  <nickrob@snap.net.nz>
+
+	* progmodes/gdb-ui.el (gdb-assembler-handler): Accommodate change
+	of disassemble output in GDB 7.1.
+
+2010-02-19  Glenn Morris  <rgm@gnu.org>
+
+	* progmodes/f90.el (f90-electric-insert): Give it a delete-selection
+	property.  (Bug#5593)
+
+2010-02-18  Sam Steingold  <sds@gnu.org>
+
+	* vc-cvs.el (vc-cvs-merge-news): Yet another fix of message parsing.
+
+2010-02-18  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	Use abbreviated file names in bookmarks (bug#5591).
+	* bookmark.el (bookmark-maybe-load-default-file): Remove redundant
+	calls to expand-file-name.
+	(bookmark-relocate): Use abbreviated file names in bookmarks.
+	(bookmark-load): Use abbreviated file names in messages.
+
+2010-02-18  Michael Albinus  <michael.albinus@gmx.de>
+
+	* net/tramp.el (tramp-handle-directory-files): When FULL, do not
+	expand "." and "..".  Reported by Thierry Volpiatto
+	<thierry.volpiatto@gmail.com>.
+
+2010-02-18  Michael Albinus  <michael.albinus@gmx.de>
+
+	* net/tramp.el (tramp-handle-insert-file-contents): Set always the
+	permissions of the temporary file to "0600".  In case the remote
+	file has no read permissions for the owner, there might be
+	problems otherwise.  Reported by Ole Laursen <olau@iola.dk>.
+
+22010-02-18  Glenn Morris  <rgm@gnu.org>
+
+	* emacs-lisp/authors.el (authors-renamed-files-alist):
+	Add entries for INSTALL.CVS.
+
+2010-02-17  Mark A. Hershberger  <mah@everybody.org>
+
+	* vc-bzr.el: fix typo in Known Bugs section.
+
+	* isearch.el (isearch-update-post-hook): New hook
+	(isearch-update): Use the new hook.
+
 2010-02-16  Michael Albinus  <michael.albinus@gmx.de>
 
-	* net/tramp.el (tramp-do-copy-or-rename-file-out-of-band): Fix
-	errors in copying directories.
+	* net/tramp.el (tramp-do-copy-or-rename-file-out-of-band):
+	Fix errors in copying directories.
 	(tramp-handle-add-name-to-file, tramp-handle-copy-directory)
 	(tramp-do-copy-or-rename-file, tramp-handle-delete-directory)
 	(tramp-handle-delete-file)
@@ -27,8 +74,7 @@
 	* cedet/srecode.el (srecode):
 	* cedet/semantic.el (semantic): Put in tools and extensions group.
 
-	* nxml/nxml-mode.el (nxml-faces): Remove from font-lock-faces
-	group.
+	* nxml/nxml-mode.el (nxml-faces): Remove from font-lock-faces group.
 
 	* textmodes/flyspell.el (flyspell-word): Obey the offset specified
 	by ispell-parse-output (Bug#5575).
@@ -145,8 +191,7 @@
 2010-02-08  Jose E. Marchesi  <jemarch@gnu.org>
 
 	* progmodes/ada-mode.el (ada-in-numeric-literal-p): New function.
-	(ada-adjust-case): Don't adjust case in hexadecimal number
-	literals.
+	(ada-adjust-case): Don't adjust case in hexadecimal number literals.
 
 2010-02-08  Kenichi Handa  <handa@m17n.org>
 
--- a/lisp/bookmark.el	Wed Feb 17 13:43:12 2010 +0000
+++ b/lisp/bookmark.el	Fri Feb 19 15:29:56 2010 +0000
@@ -958,14 +958,14 @@
            (and
             ;; Possibly the old bookmark file, "~/.emacs-bkmrks", needs
             ;; to be renamed.
-            (file-exists-p (expand-file-name bookmark-old-default-file))
-            (not (file-exists-p (expand-file-name bookmark-default-file)))
-            (rename-file (expand-file-name bookmark-old-default-file)
-                         (expand-file-name bookmark-default-file)))
+            (file-exists-p bookmark-old-default-file)
+            (not (file-exists-p bookmark-default-file))
+            (rename-file bookmark-old-default-file
+                         bookmark-default-file))
            ;; return t so the `and' will continue...
            t)
 
-       (file-readable-p (expand-file-name bookmark-default-file))
+       (file-readable-p bookmark-default-file)
        (bookmark-load bookmark-default-file t t)
        (setq bookmarks-already-loaded t)))
 
@@ -1152,10 +1152,11 @@
   (bookmark-maybe-historicize-string bookmark)
   (bookmark-maybe-load-default-file)
   (let* ((bmrk-filename (bookmark-get-filename bookmark))
-         (newloc (expand-file-name
-                  (read-file-name
-                   (format "Relocate %s to: " bookmark)
-                   (file-name-directory bmrk-filename)))))
+         (newloc (abbreviate-file-name
+                  (expand-file-name
+                   (read-file-name
+                    (format "Relocate %s to: " bookmark)
+                    (file-name-directory bmrk-filename))))))
     (bookmark-set-filename bookmark newloc)
     (setq bookmark-alist-modification-count
           (1+ bookmark-alist-modification-count))
@@ -1432,7 +1433,7 @@
           ;;but there's no better default, and
           ;;I guess it's better than none at all.
           "~/" bookmark-default-file 'confirm)))
-  (setq file (expand-file-name file))
+  (setq file (abbreviate-file-name (expand-file-name file)))
   (if (not (file-readable-p file))
       (error "Cannot read bookmark file %s" file)
     (if (null no-msg)
@@ -1453,7 +1454,8 @@
                 (setq bookmark-alist-modification-count
                       (1+ bookmark-alist-modification-count)))
               (if (string-equal
-                   (expand-file-name bookmark-default-file)
+                   (abbreviate-file-name
+                    (expand-file-name bookmark-default-file))
                    file)
                   (setq bookmarks-already-loaded t))
               (bookmark-bmenu-surreptitiously-rebuild-list))
--- a/lisp/emacs-lisp/authors.el	Wed Feb 17 13:43:12 2010 +0000
+++ b/lisp/emacs-lisp/authors.el	Fri Feb 19 15:29:56 2010 +0000
@@ -504,7 +504,9 @@
     ;; index and pick merged into search.
     ("mh-index.el" . "mh-search.el")
     ("mh-pick.el" . "mh-search.el")
-    ("INSTALL-CVS" . "INSTALL.CVS")
+    ;; INSTALL-CVS -> .CVS -> .BZR
+    ("INSTALL-CVS" . "INSTALL.BZR")
+    ("INSTALL.CVS" . "INSTALL.BZR")
     ("refcards/fr-drdref.pdf" . "refcards/fr-dired-ref.pdf")
     ("gnus-logo.eps" . "refcards/gnus-logo.eps")
     ("build-install" . "build-ins.in")
--- a/lisp/isearch.el	Wed Feb 17 13:43:12 2010 +0000
+++ b/lisp/isearch.el	Fri Feb 19 15:29:56 2010 +0000
@@ -156,6 +156,9 @@
 (defvar isearch-mode-hook nil
   "Function(s) to call after starting up an incremental search.")
 
+(defvar isearch-update-post-hook nil
+  "Function(s) to call after isearch has found matches in the buffer.")
+
 (defvar isearch-mode-end-hook nil
   "Function(s) to call after terminating an incremental search.
 When these functions are called, `isearch-mode-end-hook-quit'
@@ -868,7 +871,8 @@
     (isearch-lazy-highlight-new-loop))
   ;; We must prevent the point moving to the end of composition when a
   ;; part of the composition has just been searched.
-  (setq disable-point-adjustment t))
+  (setq disable-point-adjustment t)
+  (run-hooks 'isearch-update-post-hook))
 
 (defun isearch-done (&optional nopush edit)
   "Exit Isearch mode.
--- a/lisp/loadup.el	Wed Feb 17 13:43:12 2010 +0000
+++ b/lisp/loadup.el	Fri Feb 19 15:29:56 2010 +0000
@@ -125,8 +125,8 @@
 (load "case-table")
 (load "international/characters")
 (load "composite")
-;; This file doesn't exist when building Emacs from CVS.  It is
-;; generated just after temacs is build.
+;; This file doesn't exist when building a development version of Emacs
+;; from the repository.  It is generated just after temacs is built.
 (load "international/charprop.el" t)
 
 ;; Load language-specific files.
--- a/lisp/mh-e/mh-acros.el	Wed Feb 17 13:43:12 2010 +0000
+++ b/lisp/mh-e/mh-acros.el	Fri Feb 19 15:29:56 2010 +0000
@@ -26,12 +26,12 @@
 ;;; Commentary:
 
 ;; This file contains all macros that are used in more than one file.
-;; If you run "make recompile" in CVS Emacs and see the message
+;; If you run "make recompile" in Bazaar Emacs and see the message
 ;; "Source is newer than compiled," it is a sign that macro probably
 ;; needs to be moved here.
 
 ;; Historically, it was so named with a silent "m" so that it would be
-;; compiled first. Otherwise, "make recompile" in CVS Emacs would use
+;; compiled first. Otherwise, "make recompile" in Bazaar Emacs would use
 ;; compiled files with stale macro definitions. Later, no-byte-compile
 ;; was added to the Local Variables section to avoid this problem and
 ;; because it's pointless to compile a file full of macros. But we
--- a/lisp/net/tramp.el	Wed Feb 17 13:43:12 2010 +0000
+++ b/lisp/net/tramp.el	Fri Feb 19 15:29:56 2010 +0000
@@ -3142,7 +3142,7 @@
   "Like `directory-files' for Tramp files."
   ;; FILES-ONLY is valid for XEmacs only.
   (when (file-directory-p directory)
-    (setq directory (expand-file-name directory))
+    (setq directory (file-name-as-directory (expand-file-name directory)))
     (let ((temp (nreverse (file-name-all-completions "" directory)))
 	  result item)
 
@@ -3150,13 +3150,13 @@
 	(setq item (directory-file-name (pop temp)))
 	(when (and (or (null match) (string-match match item))
 		   (or (null files-only)
-		       ;; files only
+		       ;; Files only.
 		       (and (equal files-only t) (file-regular-p item))
-		       ;; directories only
+		       ;; Directories only.
 		       (file-directory-p item)))
-	  (push (if full (expand-file-name item directory) item)
+	  (push (if full (concat directory item) item)
 		result)))
-      result)))
+      (if nosort result (sort result 'string<)))))
 
 (defun tramp-handle-directory-files-and-attributes
   (directory &optional full match nosort id-format)
@@ -4781,12 +4781,16 @@
 			tramp-temp-buffer-file-name)
 		       (t (file-local-copy filename)))))
 
+	      ;; When the file is not readable for the owner, it
+	      ;; cannot be inserted, even it is redable for the group
+	      ;; or for everybody.
+	      (set-file-modes local-copy (tramp-octal-to-decimal "0600"))
+
 	      (when (and (null remote-copy)
 			 (tramp-get-method-parameter
 			  method 'tramp-copy-keep-tmpfile))
 		;; We keep the local file for performance reasons,
 		;; useful for "rsync".
-		(set-file-modes local-copy (tramp-octal-to-decimal "0600"))
 		(setq tramp-temp-buffer-file-name local-copy)
 		(put 'tramp-temp-buffer-file-name 'permanent-local t))
 
@@ -8584,26 +8588,26 @@
 ;;   equivalent of the emacsclient -eval option in order to make this
 ;;   reasonably unproblematic.  And maybe trampclient should have some
 ;;   way of passing credentials, like by using an SSL socket or
-;;   something. (David Kastrup)
+;;   something.  (David Kastrup)
 ;; * Reconnect directly to a compliant shell without first going
-;;   through the user's default shell. (Pete Forman)
+;;   through the user's default shell.  (Pete Forman)
 ;; * Make `tramp-default-user' obsolete.
 ;; * How can I interrupt the remote process with a signal
-;;   (interrupt-process seems not to work)? (Markus Triska)
+;;   (interrupt-process seems not to work)?  (Markus Triska)
 ;; * Avoid the local shell entirely for starting remote processes.  If
 ;;   so, I think even a signal, when delivered directly to the local
 ;;   SSH instance, would correctly be propagated to the remote process
 ;;   automatically; possibly SSH would have to be started with
-;;   "-t". (Markus Triska)
+;;   "-t".  (Markus Triska)
 ;; * It makes me wonder if tramp couldn't fall back to ssh when scp
-;;   isn't on the remote host. (Mark A. Hershberger)
-;; * Use lsh instead of ssh. (Alfred M. Szmidt)
+;;   isn't on the remote host.  (Mark A. Hershberger)
+;; * Use lsh instead of ssh.  (Alfred M. Szmidt)
 ;; * Implement a general server-local-variable mechanism, as there are
 ;;   probably other variables that need different values for different
 ;;   servers too.  The user could then configure a variable (such as
 ;;   tramp-server-local-variable-alist) to define any such variables
 ;;   that they need to, which would then be let bound as appropriate
-;;   in tramp functions. (Jason Rumney)
+;;   in tramp functions.  (Jason Rumney)
 ;; * Optimize out-of-band copying, when both methods are scp-like (not
 ;;   rsync).
 ;; * Keep a second connection open for out-of-band methods like scp or
@@ -8613,7 +8617,7 @@
 ;;   Unicode in Dired file names by default.  Is it possible to
 ;;   improve Tramp to set LC_ALL to "C" only for commands where Tramp
 ;;   expects English?  Or just to set LC_MESSAGES to "C" if Tramp
-;;   expects only English messages? (Juri Linkov)
+;;   expects only English messages?  (Juri Linkov)
 ;; * Make shadowfile.el grok Tramp filenames.  (Bug#4526, Bug#4846)
 ;; * Do not handle files with drive letter as remote.  (Bug#5447)
 ;; * Load Tramp subpackages only when needed.  (Bug#1529, Bug#5448)
--- a/lisp/progmodes/f90.el	Wed Feb 17 13:43:12 2010 +0000
+++ b/lisp/progmodes/f90.el	Fri Feb 19 15:29:56 2010 +0000
@@ -1356,6 +1356,8 @@
   (if auto-fill-function (f90-do-auto-fill) ; also updates line
     (f90-update-line)))
 
+;; Behave like self-insert-command for delete-selection-mode (bug#5593).
+(put 'f90-electric-insert 'delete-selection t)
 
 (defun f90-get-correct-indent ()
   "Get correct indent for a line starting with line number.
--- a/lisp/progmodes/gdb-ui.el	Wed Feb 17 13:43:12 2010 +0000
+++ b/lisp/progmodes/gdb-ui.el	Fri Feb 19 15:29:56 2010 +0000
@@ -3573,18 +3573,24 @@
   (setq gdb-pending-triggers
 	(delq 'gdb-invalidate-assembler
 	      gdb-pending-triggers))
-     (let ((buf (gdb-get-buffer 'gdb-assembler-buffer)))
-       (and buf
-	    (with-current-buffer buf
-	      (let* ((window (get-buffer-window buf 0))
-		     (p (window-point window))
-		    (buffer-read-only nil))
-		(erase-buffer)
-		(insert-buffer-substring (gdb-get-buffer-create
+  (let ((buf (gdb-get-buffer 'gdb-partial-output-buffer)))
+    (with-current-buffer buf
+      (goto-char (point-min))
+      ;; The disassemble command in GDB 7.1 onwards displays an overlay arrow.
+      (while (re-search-forward "\\(^   0x\\|=> 0x\\)" nil t)
+	(replace-match "0x" nil nil))))
+  (let ((buf (gdb-get-buffer 'gdb-assembler-buffer)))
+    (and buf
+	 (with-current-buffer buf
+	   (let* ((window (get-buffer-window buf 0))
+		  (p (window-point window))
+		  (buffer-read-only nil))
+	     (erase-buffer)
+	     (insert-buffer-substring (gdb-get-buffer-create
 					  'gdb-partial-output-buffer))
-		(set-window-point window p)))))
-     ;; put customisation here
-     (gdb-assembler-custom))
+	     (set-window-point window p)))))
+  ;; put customisation here
+  (gdb-assembler-custom))
 
 (defun gdb-assembler-custom ()
   (let ((buffer (gdb-get-buffer 'gdb-assembler-buffer))
--- a/lisp/vc-bzr.el	Wed Feb 17 13:43:12 2010 +0000
+++ b/lisp/vc-bzr.el	Fri Feb 19 15:29:56 2010 +0000
@@ -35,7 +35,7 @@
 ;; Known bugs
 ;; ==========
 
-;; When edititing a symlink and *both* the symlink and its target
+;; When editing a symlink and *both* the symlink and its target
 ;; are bzr-versioned, `vc-bzr` presently runs `bzr status` on the
 ;; symlink, thereby not detecting whether the actual contents
 ;; (that is, the target contents) are changed.
--- a/lisp/vc-cvs.el	Wed Feb 17 13:43:12 2010 +0000
+++ b/lisp/vc-cvs.el	Fri Feb 19 15:29:56 2010 +0000
@@ -459,8 +459,8 @@
           (if (re-search-forward
                (concat "^\\([CMUP] \\)?"
                        (regexp-quote
-                        (substring file (length (expand-file-name
-                                                 "." default-directory))))
+                        (substring file (1+ (length (expand-file-name
+                                                     "." default-directory)))))
                        "\\( already contains the differences between \\)?")
                nil t)
               (cond
--- a/msdos/ChangeLog	Wed Feb 17 13:43:12 2010 +0000
+++ b/msdos/ChangeLog	Fri Feb 19 15:29:56 2010 +0000
@@ -1,3 +1,8 @@
+2010-02-19  Eli Zaretskii  <eliz@gnu.org>
+
+	* INSTALL: Remove a CVS-specific note.  Update for latest versions
+	of Windows.
+
 2009-09-17  Eli Zaretskii  <eliz@gnu.org>
 
 	* sed1v2.inp (OTHER_FILES): Edit to empty.
--- a/msdos/INSTALL	Wed Feb 17 13:43:12 2010 +0000
+++ b/msdos/INSTALL	Fri Feb 19 15:29:56 2010 +0000
@@ -5,8 +5,9 @@
 See the end of the file for license conditions.
 
 The DJGPP port of GNU Emacs builds and runs on plain DOS and also on
-all versions of MS-Windows from version 3.X on, including Windows XP
-and Vista.
+all versions of MS-Windows from version 3.X on, including Windows XP,
+Vista, and Windows 7 (however, see below for issues with Windows Vista
+and 7).
 
 To build and install the DJGPP port, you need to have the DJGPP ports
 of GCC (the GNU C compiler), GNU Make, rm, mv, and sed.  See the
@@ -19,28 +20,25 @@
 Bootstrapping Emacs or recompiling Lisp files in the `lisp'
 subdirectory using the various targets in the lisp/Makefile file
 requires additional utilities: `find' (from Findutils), GNU `echo' and
-`test' (from Sh-utils), `ls' and `chmod' (from Fileutils), `grep'
-(from Grep), and a port of Bash.  However, you should not normally
-need to run lisp/Makefile, as all the Lisp files are distributed in
-byte-compiled form as well.  As for bootstrapping, you will only need
-that if you check-out development sources from the Emacs source
-repository.  (Note: If you are checking out of CVS, use the -kb option
-of the `checkout' and `update' commands, to preserve the original
-Unix-style EOL format of the files.  If some files are converted to
-DOS EOL format by the default operation of CVS, the build might fail.)
+`test' (from Sh-utils or Coreutils), `ls' and `chmod' (from Fileutils
+or Coreutils), `grep' (from Grep), and a port of Bash.  However, you
+should not normally need to run lisp/Makefile, as all the Lisp files
+are distributed in byte-compiled form as well.  As for bootstrapping
+itself, you will only need that if you check-out development sources
+from the Emacs source repository.
 
 If you are building the DJGPP version of Emacs on a DOS-like system
 which supports long file names (e.g. Windows 9X or Windows XP), you
 need to make sure that long file names are handled consistently both
-when you unpack the distribution and compile it.  If you intend to
-compile with DJGPP v2.0 or later, and long file names support is
-enabled (LFN=y in the environment), you need to unpack Emacs
-distribution in a way that doesn't truncate the original long
+when you unpack the distribution and compile it.  With DJGPP v2.0 or
+later, long file names support is by default, so you need to unpack
+Emacs distribution in a way that doesn't truncate the original long
 filenames to the DOS 8.3 namespace; the easiest way to do this is to
-use djtar program which comes with DJGPP, since it will note the LFN
-setting and behave accordingly.  You can build Emacs with LFN=n, if
-some of your tools don't support long file names: just ensure that LFN
-is set to `n' during both unpacking and compiling.
+use djtar program which comes with DJGPP, since it will behave
+consistently with the rest of DJGPP tools.  Alternatively, you can
+build Emacs with LFN=n, if some of your tools don't support long file
+names: just ensure that LFN is set to `n' during both unpacking and
+compiling.
 
 (By the time you read this, you have already unpacked the Emacs
 distribution, but if the explanations above imply that you should have
@@ -100,14 +98,14 @@
 should be able to find them in your djdevNNN.zip archive (where NNN is
 the DJGPP version number).
 
-On Windows NT, Windows 2000/XP/Vista, running "config msdos" might
-print an error message like "VDM has been already loaded".  This is
-because those systems have a program called `redir.exe' which is
+On Windows NT and Windows 2000/XP/Vista/7, running "config msdos"
+might print an error message like "VDM has been already loaded".  This
+is because those systems have a program called `redir.exe' which is
 incompatible with a program by the same name supplied with DJGPP,
 which is used by config.bat.  To resolve this, move the DJGPP's `bin'
 subdirectory to the front of your PATH environment variable.
 
-Windows Vista has several bugs in its DPMI server related to memory
+Windows Vista/7 has several bugs in its DPMI server related to memory
 allocation: it fails DPMI resize memory block function, and it
 arbitrarily limits the default amount of DPMI memory to 32MB.  To work
 around these bugs, first configure Emacs to use the `malloc' function
@@ -117,8 +115,8 @@
     config --with-system-malloc msdos
     make install
 
-In addition, you'll need to install Service Pack 1 (SP1) or later to
-Windows Vista and enlarge its DPMI memory limit by setting the value
+In addition, for Windows Vista you'll need to install Service Pack 1
+(SP1) or later and enlarge its DPMI memory limit by setting the value
 of this Registry key:
 
   HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Wow\DpmiLimit
@@ -164,8 +162,8 @@
 
 Emacs features which require asynchronous subprocesses that depend on
 multitasking do not work in the DJGPP port.  Synchronous subprocesses
-do work, so features such as compilation and grep run synchronously,
-unlike opn other platforms.
+do work, so features such as compilation, grep, and Ispell run
+synchronously, unlike on other platforms.
 
 Version 2.0 of djgpp has two bugs that affect Emacs.  We've included
 corrected versions of two files from djgpp in the msdos subdirectory:
--- a/src/ChangeLog	Wed Feb 17 13:43:12 2010 +0000
+++ b/src/ChangeLog	Fri Feb 19 15:29:56 2010 +0000
@@ -1,7 +1,26 @@
+2010-02-18  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* term.c (fatal): Add a final \n if needed (bug#5596).
+
+2010-02-18  Chong Yidong  <cyd@stupidchicken.com>
+
+	* nsterm.m (ns_ring_bell): Revert last change (Bug#5569).
+
+2010-02-18  Glenn Morris  <rgm@gnu.org>
+
+	* callint.c (Finteractive): Doc fix.
+
+2010-02-18  Kazuhiro Ito  <kzhr@d1.dion.ne.jp>  (tiny change)
+
+	* coding.c (record_conversion_result):
+	Handle CODING_RESULT_INSUFFICIENT_DST.
+	(decode_coding_object): Record CODING_RESULT_INSUFFICIENT_MEM on
+	memory allocation error.
+
 2010-02-17  Kenichi Handa  <handa@m17n.org>
 
-	* coding.c (decode_coding_ccl): Don't setup ccl program here.  Fix
-	for the case that the output buffer is fullfilled.
+	* coding.c (decode_coding_ccl): Don't setup ccl program here.
+	Fix for the case that the output buffer is fullfilled.
 	(decode_coding): Setup ccl program here.  Keep looping when the
 	decoder stopped because the output buffer is
 	fullfilled (bug#5534).
@@ -12,7 +31,7 @@
 
 	* xterm.c (x_clear_frame_area): Call gtk_widget_queue_draw if USE_GTK,
 	bug #5571.
-	(XTflash): Use Gdk-routines if USE_GTK so scroll bars doesn't get
+	(XTflash): Use Gdk-routines if USE_GTK so scroll bars don't get
 	overdrawn.
 
 2010-02-10  Jan Djärv  <jan.h.d@swipnet.se>
--- a/src/callint.c	Wed Feb 17 13:43:12 2010 +0000
+++ b/src/callint.c	Fri Feb 19 15:29:56 2010 +0000
@@ -127,7 +127,7 @@
  invoked the command for its first mouse click (or any other event
  which specifies a window).
 If the string begins with `^' and `shift-select-mode' is non-nil,
- Emacs first calls the function `handle-shift-select'.
+ Emacs first calls the function `handle-shift-selection'.
 You may use `@', `*', and `^' together.  They are processed in the
  order that they appear, before reading any arguments.
 usage: (interactive &optional ARGS)  */)
--- a/src/coding.c	Wed Feb 17 13:43:12 2010 +0000
+++ b/src/coding.c	Fri Feb 19 15:29:56 2010 +0000
@@ -993,6 +993,11 @@
     case CODING_RESULT_INSUFFICIENT_MEM:
       Vlast_code_conversion_error = Qinsufficient_memory;
       break;
+    case CODING_RESULT_INSUFFICIENT_DST:
+      /* Don't record this error in Vlast_code_conversion_error
+	 because it happens just temporarily and is resolved when the
+	 whole conversion is finished.  */
+      break;
     case CODING_RESULT_SUCCESS:
       break;
     default:
@@ -7865,7 +7870,7 @@
 	  if (! destination)
 	    {
 	      record_conversion_result (coding,
-					CODING_RESULT_INSUFFICIENT_DST);
+					CODING_RESULT_INSUFFICIENT_MEM);
 	      unbind_to (count, Qnil);
 	      return;
 	    }
--- a/src/dispextern.h	Wed Feb 17 13:43:12 2010 +0000
+++ b/src/dispextern.h	Fri Feb 19 15:29:56 2010 +0000
@@ -2257,8 +2257,8 @@
       && ((IT)->c == '\n'				\
 	  || ((IT)->c == '\r' && (IT)->selective)))
 
-/* Call produce_glyphs or produce_glyphs_hook, if set.  Shortcut to
-   avoid the function call overhead.  */
+/* Call produce_glyphs or FRAME_RIF->produce_glyphs, if set.  Shortcut
+   to avoid the function call overhead.  */
 
 #define PRODUCE_GLYPHS(IT)                              \
   do {                                                  \
--- a/src/fileio.c	Wed Feb 17 13:43:12 2010 +0000
+++ b/src/fileio.c	Fri Feb 19 15:29:56 2010 +0000
@@ -1408,8 +1408,9 @@
    bugs _are_ found, it might be of interest to look at the old code and
    see what did it do in the relevant situation.
 
-   Don't remove this code: it's true that it will be accessible via CVS,
-   but a few years from deletion, people will forget it is there.  */
+   Don't remove this code: it's true that it will be accessible
+   from the repository, but a few years from deletion, people will
+   forget it is there.  */
 
 /* Changed this DEFUN to a DEAFUN, so as not to confuse `make-docfile'.  */
 DEAFUN ("expand-file-name", Fexpand_file_name, Sexpand_file_name, 1, 2, 0,
--- a/src/nsterm.m	Wed Feb 17 13:43:12 2010 +0000
+++ b/src/nsterm.m	Fri Feb 19 15:29:56 2010 +0000
@@ -808,58 +808,23 @@
       view = FRAME_NS_VIEW (frame);
       if (view != nil)
         {
-          /* Get the bounds of our NSView */
-          NSRect viewBounds = [view bounds];
-
-          /* Height of each line to flash.  */
-          int flash_height = FRAME_LINE_HEIGHT (frame);
-          int width = FRAME_PIXEL_WIDTH (frame)
-                    - NS_SCROLL_BAR_WIDTH (frame);
-
-          /* Get the GraphicsContext */
-          CGContextRef ctxt = [[NSGraphicsContext currentContext] graphicsPort];
-          CGRect lowerLine, upperLine;
-          lowerLine =
-          CGRectMake(viewBounds.origin.x, viewBounds.origin.y,
-                     width + NS_SCROLL_BAR_WIDTH(frame),
-                     flash_height + FRAME_INTERNAL_BORDER_WIDTH (frame));
-          upperLine =
-          CGRectMake(viewBounds.origin.x,
-                     viewBounds.origin.y + viewBounds.size.height
-                     - (flash_height + FRAME_INTERNAL_BORDER_WIDTH (frame)),
-                     width,
-                     flash_height + FRAME_INTERNAL_BORDER_WIDTH (frame));
-
-          /* Invert the colors using a difference blend.  */
-          CGContextSetBlendMode(ctxt, kCGBlendModeDifference);
-          CGContextSetGrayFillColor(ctxt, 1, 1);
-
-          /* If window is tall, flash top and bottom line.  */
-          if (viewBounds.size.height > 3 * FRAME_LINE_HEIGHT (frame))
-            {
-              CGContextFillRect(ctxt, upperLine);
-              CGContextFillRect(ctxt, lowerLine);
-            }
-          else
-            /* If it is short, flash it all.  */
-            CGContextFillRect(ctxt, NSRectToCGRect([view bounds]));
-
-          /* Bounce Dock icon. Maybe we can allow some configuration here.  */
-          [NSApp requestUserAttention: NSInformationalRequest];
-
+          NSRect r, surr;
+          NSPoint dim = NSMakePoint (128, 128);
+
+          r = [view bounds];
+          r.origin.x += (r.size.width - dim.x) / 2;
+          r.origin.y += (r.size.height - dim.y) / 2;
+          r.size.width = dim.x;
+          r.size.height = dim.y;
+          surr = NSInsetRect (r, -2, -2);
+          ns_focus (frame, &surr, 1);
+          [[view window] cacheImageInRect: [view convertRect: surr toView:nil]];
+          [ns_lookup_indexed_color (NS_FACE_FOREGROUND
+                                      (FRAME_DEFAULT_FACE (frame)), frame) set];
+          NSRectFill (r);
           [[view window] flushWindow];
           ns_timeout (150000);
-
-          /* If window is tall, flash top and bottom line.  */
-          if (viewBounds.size.height > 3 * FRAME_LINE_HEIGHT (frame))
-            {
-              CGContextFillRect(ctxt, upperLine);
-              CGContextFillRect(ctxt, lowerLine);
-            }
-          else
-            /* If it is short, flash it all.  */
-            CGContextFillRect(ctxt, NSRectToCGRect([view bounds]));
-
+          [[view window] restoreCachedImage];
           [[view window] flushWindow];
           ns_unfocus (frame);
         }
--- a/src/term.c	Wed Feb 17 13:43:12 2010 +0000
+++ b/src/term.c	Fri Feb 19 15:29:56 2010 +0000
@@ -1568,8 +1568,9 @@
    and where in the glyph matrix we currently are (glyph row and hpos).
    produce_glyphs fills in output fields of *IT with information such as the
    pixel width and height of a character, and maybe output actual glyphs at
-   the same time if IT->glyph_row is non-null.  See the explanation of
-   struct display_iterator in dispextern.h for an overview.
+   the same time if IT->glyph_row is non-null.  For an overview, see
+   the explanation in dispextern.h, before the definition of the
+   display_element_type enumeration.
 
    produce_glyphs also stores the result of glyph width, ascent
    etc. computations in *IT.
@@ -3938,6 +3939,8 @@
   va_start (ap, str);
   fprintf (stderr, "emacs: ");
   vfprintf (stderr, str, ap);
+  if (!(strlen (str) > 0 && str[strlen (str) - 1] == '\n'))
+    fprintf (stderr, "\n");
   va_end (ap);
   fflush (stderr);
   exit (1);