emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r105427: Merge from emacs-23 branch


From: Chong Yidong
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r105427: Merge from emacs-23 branch
Date: Tue, 09 Aug 2011 18:13:57 -0400
User-agent: Bazaar (2.3.1)

------------------------------------------------------------
revno: 105427 [merge]
committer: Chong Yidong <address@hidden>
branch nick: trunk
timestamp: Tue 2011-08-09 18:13:57 -0400
message:
  Merge from emacs-23 branch
modified:
  lisp/ChangeLog
  lisp/hi-lock.el
  lisp/xt-mouse.el
  src/ChangeLog
  src/fontset.c
  src/unexmacosx.c
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2011-08-08 18:21:32 +0000
+++ b/lisp/ChangeLog    2011-08-09 22:13:11 +0000
@@ -1,3 +1,13 @@
+2011-08-09  Chong Yidong  <address@hidden>
+
+       * hi-lock.el (hi-lock-unface-buffer): Fix interactive spec
+       (Bug#7554).
+
+2011-08-09  Andreas Schwab  <address@hidden>
+
+       * xt-mouse.el (xterm-mouse-event-read): Try to recover the raw
+       character.  (Bug#6594)
+
 2011-08-08  Chong Yidong  <address@hidden>
 
        * image-dired.el: Don't use find-file for temporary work (Bug#7895).

=== modified file 'lisp/hi-lock.el'
--- a/lisp/hi-lock.el   2011-02-10 16:56:00 +0000
+++ b/lisp/hi-lock.el   2011-08-09 22:13:11 +0000
@@ -461,7 +461,9 @@
 \\<minibuffer-local-must-match-map>Use \\[minibuffer-complete] to complete a 
partially typed regexp.
 \(See info node `Minibuffer History'.\)"
   (interactive
-   (if (and (display-popup-menus-p) (not last-nonmenu-event))
+   (if (and (display-popup-menus-p)
+           (listp last-nonmenu-event)
+           use-dialog-box)
        (catch 'snafu
         (or
          (x-popup-menu

=== modified file 'lisp/xt-mouse.el'
--- a/lisp/xt-mouse.el  2011-04-19 13:44:55 +0000
+++ b/lisp/xt-mouse.el  2011-08-09 22:13:11 +0000
@@ -120,10 +120,17 @@
 
 ;; read xterm sequences above ascii 127 (#x7f)
 (defun xterm-mouse-event-read ()
+  ;; We get the characters decoded by the keyboard coding system.  Try
+  ;; to recover the raw character.
   (let ((c (read-char)))
-    (if (> c #x3FFF80)
-        (+ 128 (- c #x3FFF80))
-      c)))
+    (cond ;; If meta-flag is t we get a meta character
+         ((>= c ?\M-\^@)
+          (- c (- ?\M-\^@ 128)))
+         ;; Reencode the character in the keyboard coding system, if
+         ;; this is a non-ASCII character.
+         ((>= c #x80)
+          (aref (encode-coding-string (string c) (keyboard-coding-system)) 0))
+         (t c))))
 
 (defun xterm-mouse-truncate-wrap (f)
   "Truncate with wrap-around."

=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2011-08-08 17:37:34 +0000
+++ b/src/ChangeLog     2011-08-09 22:13:11 +0000
@@ -1,3 +1,15 @@
+2011-08-09  Andreas Schwab  <address@hidden>
+
+       * fontset.c (fontset_get_font_group): Add proper type checks.
+       (Bug#9172)
+
+2011-08-09  YAMAMOTO Mitsuharu  <address@hidden>
+
+       * unexmacosx.c (print_load_command_name): Add cases LC_FUNCTION_STARTS
+       and LC_VERSION_MIN_MACOSX.
+       (copy_linkedit_data) [LC_FUNCTION_STARTS]: New function.
+       (dump_it) [LC_FUNCTION_STARTS]: Use it.
+
 2011-08-08  Eli Zaretskii  <address@hidden>
 
        * xdisp.c (forward_to_next_line_start): Allow to use the

=== modified file 'src/fontset.c'
--- a/src/fontset.c     2011-08-03 19:54:12 +0000
+++ b/src/fontset.c     2011-08-09 22:13:11 +0000
@@ -447,7 +447,7 @@
 /* Return a font-group (actually a cons (-1 . FONT-GROUP-VECTOR)) for
    character C in FONTSET.  If C is -1, return a fallback font-group.
    If C is not -1, the value may be Qt (FONTSET doesn't have a font
-   for C even in the fallback group, or 0 (a font for C may be found
+   for C even in the fallback group), or 0 (a font for C may be found
    only in the fallback group).  */
 
 static Lisp_Object
@@ -465,7 +465,9 @@
   if (! NILP (font_group))
     return font_group;
   base_fontset = FONTSET_BASE (fontset);
-  if (c >= 0)
+  if (NILP (base_fontset))
+    font_group = Qnil;
+  else if (c >= 0)
     font_group = char_table_ref_and_range (base_fontset, c, &from, &to);
   else
     font_group = FONTSET_FALLBACK (base_fontset);
@@ -476,6 +478,8 @@
        char_table_set_range (fontset, from, to, font_group);
       return font_group;
     }
+  if (!VECTORP (font_group))
+    return font_group;
   font_group = Fcopy_sequence (font_group);
   for (i = 0; i < ASIZE (font_group); i++)
     if (! NILP (AREF (font_group, i)))

=== modified file 'src/unexmacosx.c'
--- a/src/unexmacosx.c  2011-03-17 18:41:30 +0000
+++ b/src/unexmacosx.c  2011-08-09 22:13:11 +0000
@@ -599,6 +599,16 @@
       printf ("LC_DYLD_INFO_ONLY");
       break;
 #endif
+#ifdef LC_VERSION_MIN_MACOSX
+    case LC_VERSION_MIN_MACOSX:
+      printf ("LC_VERSION_MIN_MACOSX");
+      break;
+#endif
+#ifdef LC_FUNCTION_STARTS
+    case LC_FUNCTION_STARTS:
+      printf ("LC_FUNCTION_STARTS");
+      break;
+#endif
     default:
       printf ("unknown          ");
     }
@@ -1135,6 +1145,28 @@
 }
 #endif
 
+#ifdef LC_FUNCTION_STARTS
+/* Copy a LC_FUNCTION_STARTS load command from the input file to the
+   output file, adjusting the data offset field.  */
+static void
+copy_linkedit_data (struct load_command *lc, long delta)
+{
+  struct linkedit_data_command *ldp = (struct linkedit_data_command *) lc;
+
+  if (ldp->dataoff > 0)
+    ldp->dataoff += delta;
+
+  printf ("Writing ");
+  print_load_command_name (lc->cmd);
+  printf (" command\n");
+
+  if (!unexec_write (curr_header_offset, lc, lc->cmdsize))
+    unexec_error ("cannot write linkedit data command to header");
+
+  curr_header_offset += lc->cmdsize;
+}
+#endif
+
 /* Copy other kinds of load commands from the input file to the output
    file, ones that do not require adjustments of file offsets.  */
 static void
@@ -1207,6 +1239,11 @@
        copy_dyld_info (lca[i], linkedit_delta);
        break;
 #endif
+#ifdef LC_FUNCTION_STARTS
+      case LC_FUNCTION_STARTS:
+       copy_linkedit_data (lca[i], linkedit_delta);
+       break;
+#endif
       default:
        copy_other (lca[i]);
        break;


reply via email to

[Prev in Thread] Current Thread [Next in Thread]