changeset 108402:d3036620c45e

Merge from mainline.
author Katsumi Yamaoka <yamaoka@jpl.org>
date Fri, 22 Jan 2010 14:50:35 +0000
parents 46c08e6b42d6 (current diff) 89c890863220 (diff)
children 365134ccde58
files
diffstat 15 files changed, 82 insertions(+), 24 deletions(-) [+]
line wrap: on
line diff
--- a/doc/emacs/ChangeLog	Wed Jan 20 14:24:11 2010 +0000
+++ b/doc/emacs/ChangeLog	Fri Jan 22 14:50:35 2010 +0000
@@ -1,3 +1,7 @@
+2010-01-21  Glenn Morris  <rgm@gnu.org>
+
+	* trouble.texi (Bugs): Fix PROBLEMS keybinding.
+
 2010-01-12  Glenn Morris  <rgm@gnu.org>
 
 	* trouble.texi (Checklist): Use bug-gnu-emacs rather than
--- a/doc/emacs/trouble.texi	Wed Jan 20 14:24:11 2010 +0000
+++ b/doc/emacs/trouble.texi	Fri Jan 22 14:50:35 2010 +0000
@@ -419,7 +419,7 @@
 
   Before reporting a bug, it is a good idea to see if it is already
 known.  You can find the list of known problems in the file
-@file{etc/PROBLEMS} in the Emacs distribution; type @kbd{C-h C-e} to read
+@file{etc/PROBLEMS} in the Emacs distribution; type @kbd{C-h C-p} to read
 it.  Some additional user-level problems can be found in @ref{Bugs and
 problems, , Bugs and problems, efaq, GNU Emacs FAQ}.  Looking up your
 problem in these two documents might provide you with a solution or a
--- a/doc/misc/ChangeLog	Wed Jan 20 14:24:11 2010 +0000
+++ b/doc/misc/ChangeLog	Fri Jan 22 14:50:35 2010 +0000
@@ -1,3 +1,7 @@
+2010-01-21  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+	* gnus.texi (Score File Format): Fix typo.
+
 2010-01-18  Juanma Barranquero  <lekktu@gmail.com>
 
 	* ada-mode.texi (Project File Overview): Fix typo.
--- a/doc/misc/gnus.texi	Wed Jan 20 14:24:11 2010 +0000
+++ b/doc/misc/gnus.texi	Fri Jan 22 14:50:35 2010 +0000
@@ -21803,7 +21803,7 @@
 other.
 
 @item eval
-The value of this entry will be @code{eval}el.  This element will be
+The value of this entry will be @code{eval}ed.  This element will be
 ignored when handling global score files.
 
 @item read-only
--- a/lisp/ChangeLog	Wed Jan 20 14:24:11 2010 +0000
+++ b/lisp/ChangeLog	Fri Jan 22 14:50:35 2010 +0000
@@ -1,3 +1,25 @@
+2010-01-22  Eli Zaretskii  <eliz@gnu.org>
+
+	* jka-compr.el (jka-compr-load): If load-file is not in
+	load-history, try its file-truename version.  (bug#5447)
+
+2010-01-21  Alan Mackenzie  <acm@muc.de>
+
+	Fix a situation where deletion of a cpp construct throws an error.
+	* progmodes/cc-engine.el (c-invalidate-state-cache): Before
+	invoking c-with-all-but-one-cpps-commented-out, check that the
+	special cpp construct is still in the buffer.
+	(c-parse-state): Record the special cpp with markers, not numbers.
+
+2010-01-21  Kenichi Handa  <handa@m17n.org>
+
+	* textmodes/sgml-mode.el (sgml-maybe-name-self): No need to
+	process last-command-event, as it is now decoded first (Bug#5380).
+
+2010-01-20  Chong Yidong  <cyd@stupidchicken.com>
+
+	* term.el (term-send-raw-meta): Revert 2009-12-04 change (Bug#5330).
+
 2010-01-20  Glenn Morris  <rgm@gnu.org>
 
 	* indent.el (tab-always-indent): Fix custom-type.
--- a/lisp/dired-aux.el	Wed Jan 20 14:24:11 2010 +0000
+++ b/lisp/dired-aux.el	Fri Jan 22 14:50:35 2010 +0000
@@ -2308,7 +2308,7 @@
     (restore-buffer-modified-p modflag)))
 
 ;;;###autoload
-(defun dired-hide-all (arg)
+(defun dired-hide-all (&optional ignored)
   "Hide all subdirectories, leaving only their header lines.
 If there is already something hidden, make everything visible again.
 Use \\[dired-hide-subdir] to (un)hide a particular subdirectory."
--- a/lisp/dired.el	Wed Jan 20 14:24:11 2010 +0000
+++ b/lisp/dired.el	Fri Jan 22 14:50:35 2010 +0000
@@ -3517,7 +3517,7 @@
 ;;;;;;  dired-run-shell-command dired-do-shell-command dired-do-async-shell-command
 ;;;;;;  dired-clean-directory dired-do-print dired-do-touch dired-do-chown
 ;;;;;;  dired-do-chgrp dired-do-chmod dired-compare-directories dired-backup-diff
-;;;;;;  dired-diff) "dired-aux" "dired-aux.el" "557aca1f6e86b39f1c7612ee123d5354")
+;;;;;;  dired-diff) "dired-aux" "dired-aux.el" "07676ea25af17f5d50cc5db4f53bddc0")
 ;;; Generated autoloads from dired-aux.el
 
 (autoload 'dired-diff "dired-aux" "\
@@ -3917,7 +3917,7 @@
 If there is already something hidden, make everything visible again.
 Use \\[dired-hide-subdir] to (un)hide a particular subdirectory.
 
-\(fn ARG)" t nil)
+\(fn &optional IGNORED)" t nil)
 
 (autoload 'dired-isearch-filenames-setup "dired-aux" "\
 Set up isearch to search in Dired file names.
--- a/lisp/jka-compr.el	Wed Jan 20 14:24:11 2010 +0000
+++ b/lisp/jka-compr.el	Fri Jan 22 14:50:35 2010 +0000
@@ -590,7 +590,14 @@
 	  (or nomessage
 	      (message "Loading %s...done." file))
 	  ;; Fix up the load history to point at the right library.
-	  (let ((l (assoc load-file load-history)))
+	  (let ((l (or (assoc load-file load-history)
+		       ;; On MS-Windows, if load-file is in
+		       ;; temporary-file-directory, it will look like
+		       ;; "c:/DOCUME~1/USER/LOCALS~1/foo", whereas
+		       ;; readevalloop will record its truename in
+		       ;; load-history.  Therefore try truename if the
+		       ;; original name is not in load-history.
+		       (assoc (file-truename load-file) load-history))))
 	    ;; Remove .gz and .elc?.
 	    (while (file-name-extension file)
 	      (setq file (file-name-sans-extension file)))
--- a/lisp/progmodes/cc-engine.el	Wed Jan 20 14:24:11 2010 +0000
+++ b/lisp/progmodes/cc-engine.el	Fri Jan 22 14:50:35 2010 +0000
@@ -2996,9 +2996,11 @@
   ;; containing point.  We can then call `c-invalidate-state-cache-1' without
   ;; worrying further about macros and template delimiters.
   (c-with-<->-as-parens-suppressed
-   (if c-state-old-cpp-beg
+   (if (and c-state-old-cpp-beg
+	    (< c-state-old-cpp-beg here))
        (c-with-all-but-one-cpps-commented-out
-	c-state-old-cpp-beg c-state-old-cpp-end
+	c-state-old-cpp-beg
+	(min c-state-old-cpp-end here)
 	(c-invalidate-state-cache-1 here))
      (c-with-cpps-commented-out
       (c-invalidate-state-cache-1 here)))))
@@ -3029,8 +3031,9 @@
 	      (c-parse-state-1))
 	   (c-with-cpps-commented-out
 	    (c-parse-state-1))))
-      (setq c-state-old-cpp-beg here-cpp-beg
-	    c-state-old-cpp-end here-cpp-end))))
+      (setq c-state-old-cpp-beg (and here-cpp-beg (copy-marker here-cpp-beg t))
+	    c-state-old-cpp-end (and here-cpp-end (copy-marker here-cpp-end t)))
+      )))
 
 ;; Debug tool to catch cache inconsistencies.  This is called from
 ;; 000tests.el.
--- a/lisp/term.el	Wed Jan 20 14:24:11 2010 +0000
+++ b/lisp/term.el	Fri Jan 22 14:50:35 2010 +0000
@@ -1208,8 +1208,17 @@
 
 (defun term-send-raw-meta ()
   (interactive)
-  (let* ((keys (this-command-keys))
-         (char (aref keys (1- (length keys)))))
+  (let ((char last-input-event))
+    (when (symbolp last-input-event)
+      ;; Convert `return' to C-m, etc.
+      (let ((tmp (get char 'event-symbol-elements)))
+	(when tmp
+	  (setq char (car tmp)))
+	(when (symbolp char)
+	  (setq tmp (get char 'ascii-character))
+	  (when tmp
+	    (setq char tmp)))))
+    (setq char (event-basic-type char))
     (term-send-raw-string (if (and (numberp char)
 				   (> char 127)
 				   (< char 256))
--- a/lisp/textmodes/sgml-mode.el	Wed Jan 20 14:24:11 2010 +0000
+++ b/lisp/textmodes/sgml-mode.el	Fri Jan 22 14:50:35 2010 +0000
@@ -608,11 +608,7 @@
   "Insert a symbolic character name according to `sgml-char-names'."
   (interactive "*")
   (if sgml-name-8bit-mode
-      (let ((mc last-command-event))
-	(if (< mc 256)
-	    (setq mc (unibyte-char-to-multibyte mc)))
-	(or mc (setq mc last-command-event))
-	(sgml-name-char mc))
+      (sgml-name-char last-command-event)
     (self-insert-command 1)))
 
 (defun sgml-name-8bit-mode ()
--- a/src/ChangeLog	Wed Jan 20 14:24:11 2010 +0000
+++ b/src/ChangeLog	Fri Jan 22 14:50:35 2010 +0000
@@ -1,3 +1,16 @@
+2010-01-22  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+	* lisp.h (make_pure_string): String pointer arg now points to const.
+
+	* alloc.c (find_string_data_in_pure, make_pure_string): String pointer
+	args now point to const.
+
+2010-01-22  Eli Zaretskii  <eliz@gnu.org>
+
+	* lread.c (Fload): Don't treat files without .elc extension as
+	byte-compiled if they are ``magic'', i.e. `openp' returned -2 for
+	them.  (bug#5303)
+
 2010-01-20  Kenichi Handa  <handa@m17n.org>
 
 	* coding.c (consume_chars): If ! multibyte and the encoder is ccl,
--- a/src/alloc.c	Wed Jan 20 14:24:11 2010 +0000
+++ b/src/alloc.c	Fri Jan 22 14:50:35 2010 +0000
@@ -4725,11 +4725,11 @@
 
 static char *
 find_string_data_in_pure (data, nbytes)
-     char *data;
+     const char *data;
      int nbytes;
 {
   int i, skip, bm_skip[256], last_char_skip, infinity, start, start_max;
-  unsigned char *p;
+  const unsigned char *p;
   char *non_lisp_beg;
 
   if (pure_bytes_used_non_lisp < nbytes + 1)
@@ -4740,7 +4740,7 @@
   for (i = 0; i < 256; i++)
     bm_skip[i] = skip;
 
-  p = (unsigned char *) data;
+  p = (const unsigned char *) data;
   while (--skip > 0)
     bm_skip[*p++] = skip;
 
@@ -4754,7 +4754,7 @@
   infinity = pure_bytes_used_non_lisp + 1;
   bm_skip['\0'] = infinity;
 
-  p = (unsigned char *) non_lisp_beg + nbytes;
+  p = (const unsigned char *) non_lisp_beg + nbytes;
   start = 0;
   do
     {
@@ -4796,7 +4796,7 @@
 
 Lisp_Object
 make_pure_string (data, nchars, nbytes, multibyte)
-     char *data;
+     const char *data;
      int nchars, nbytes;
      int multibyte;
 {
--- a/src/lisp.h	Wed Jan 20 14:24:11 2010 +0000
+++ b/src/lisp.h	Fri Jan 22 14:50:35 2010 +0000
@@ -2686,7 +2686,7 @@
 extern Lisp_Object make_string_from_bytes P_ ((const char *, int, int));
 extern Lisp_Object make_specified_string P_ ((const char *, int, int, int));
 EXFUN (Fpurecopy, 1);
-extern Lisp_Object make_pure_string P_ ((char *, int, int, int));
+extern Lisp_Object make_pure_string P_ ((const char *, int, int, int));
 extern Lisp_Object make_pure_c_string (const char *data);
 extern Lisp_Object pure_cons P_ ((Lisp_Object, Lisp_Object));
 extern Lisp_Object make_pure_vector P_ ((EMACS_INT));
--- a/src/lread.c	Wed Jan 20 14:24:11 2010 +0000
+++ b/src/lread.c	Fri Jan 22 14:50:35 2010 +0000
@@ -1155,7 +1155,7 @@
 
   if (!bcmp (SDATA (found) + SBYTES (found) - 4,
 	     ".elc", 4)
-      || (version = safe_to_load_p (fd)) > 0)
+      || (fd >= 0 && (version = safe_to_load_p (fd)) > 0))
     /* Load .elc files directly, but not when they are
        remote and have no handler!  */
     {