summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJohn Wiegley <johnw@newartisans.com>2016-02-03 23:56:08 -0800
committerJohn Wiegley <johnw@newartisans.com>2016-02-03 23:56:08 -0800
commit0608bf1c3d91196bcf06a6da96243f0fac119089 (patch)
treed79a6c43cd10c681445b75f859545c9f88e41899 /src
parent91ab66201cedbcd2e4e8533a7152f6736ad08731 (diff)
parentee7399792f865905d393df05c3d4e5ec309aa06c (diff)
downloademacs-0608bf1c3d91196bcf06a6da96243f0fac119089.tar.gz
Merge from origin/emacs-25
ee73997 Make erc work better when encountering unknown prefix chars b99141d Make erc completion case-insensitive again 66c4620 Make complection in erc use consistent casing 8c562b2 Make /QUIT in erc more robust d93d2c5 Make tracking faces in Emacs work more reliably af6ab7e Make shr not bug out on images on non-graphical displays 3311f40 Fix bookmark display widths d90ab1e Fix typo in eww-make-unique-file-name 7f81825 Make it possible to TAB to input fields a43a1dc Insert complete alt texts when images are disabled 56ed4e1 Allow eww text fields to grow 66b315c Make erc work when subword-mode is switched on 255b68f Fix IMAP doc example 91557f5 Quoting fixes in doc strings and diagnostics 2c0dc9f Fix warning message in hack-local-variables 504696d Etags: yet another improvement in Ruby tags 8784ebf Fix x-popup-menu on TTYs without a mouse 8b87ecb * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro 6191003 Use pop-to-buffer-same-window in eww fe321fd * autogen.sh: Revert all recent changes. 74ebd4a * make-dist: Updates related to nt/. 737193a * make-dist: Add modules/. 3696bf2 * make-dist: Update for super-special file that can't live in etc/. a4278e2 Fix failure to compile ns-win.el in parallel builds 860da4d Fix names of tags generated for Ruby accessors f6213ce Fix file-name recognition in 'etags' e42e662 Change Ruby file names and extensions recognized by 'etags' 58bfb6a More improvements for Ruby support in 'etags' c04e911 Add --git-config option to autogen.sh 5713466 Fix editing undo changes in eww fields 51362d6 Allow the user more control of popping up the eww window ee0fbd8 Make eww-browse-url with new-window parameter work again 9c3142d Clean up eww code slightly cb035f3 Don't insert nil faces in shr 4c3fae3 ; * lisp/progmodes/prolog.el: Remove some obsolete commentary. 93f2153 Improve the custom type of some user options. 9f60d7e Mark some risky calendar variables. 1d07dcd Highlight two additional SCSS keywords ee8b466 Recommend enabling integrity-checking in git e639e10 Some corrections in Elisp manual d766ca8 Chatter when autogen.sh changes Git configuration 3b734e1 * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399) 43cb9f8 Omit unnecessary history from Lisp intro 2fbd1da * etc/HISTORY: Add some more history, plus git tags. c90e1b4 Improve elisp “Security Considerations” doc cedd7ca autogen.sh now arranges for git to check hashes 86ce76b ; Fix ChangeLog.2 commit ID. 7b1d2b1 Fix (c & 040) typo in emergency escapes a8273da Fix display of overlay strings with 'display' and 'box' property fc48106 Fix imap-starttls-open cdecbed Fix return value of imap-starttls-open 20c7e34 ; * etc/NEWS: Fix renamed command name 98bdbdb Correct reference to DARWIN_OS preprocessor symbol b250d29 Spelling fix b920a0e Spelling fixes 93b144b Pacify GCC on C library without glibc API
Diffstat (limited to 'src')
-rw-r--r--src/Makefile.in5
-rw-r--r--src/alloc.c13
-rw-r--r--src/buffer.c10
-rw-r--r--src/keyboard.c4
-rw-r--r--src/menu.c3
-rw-r--r--src/xdisp.c13
-rw-r--r--src/xwidget.c2
7 files changed, 37 insertions, 13 deletions
diff --git a/src/Makefile.in b/src/Makefile.in
index 150575864da..5f72076dc45 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -505,6 +505,11 @@ $(srcdir)/macuvs.h $(lispsource)/international/charprop.el: \
$(lispsource)/international/ucs-normalize.elc: | \
$(lispsource)/international/charprop.el
+## ns-win.el loads ucs-normalize, so it also needs the above-mentioned
+## 2 uni-*.el files to exist.
+$(lispsource)/term/ns-win.elc: | \
+ $(lispsource)/international/charprop.el
+
lispintdir = ${lispsource}/international
${lispintdir}/cp51932.el ${lispintdir}/eucjp-ms.el: FORCE
${MAKE} -C ../admin/charsets $(notdir $@)
diff --git a/src/alloc.c b/src/alloc.c
index b40c1f387cb..f0e9f208ca3 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -1122,10 +1122,17 @@ lisp_free (void *block)
/* Use aligned_alloc if it or a simple substitute is available.
Address sanitization breaks aligned allocation, as of gcc 4.8.2 and
- clang 3.3 anyway. */
+ clang 3.3 anyway. Aligned allocation is incompatible with
+ unexmacosx.c, so don't use it on Darwin. */
-#if ! ADDRESS_SANITIZER
-# if defined HYBRID_MALLOC
+#if ! ADDRESS_SANITIZER && !defined DARWIN_OS
+# if !defined SYSTEM_MALLOC && !defined DOUG_LEA_MALLOC && !defined HYBRID_MALLOC
+# define USE_ALIGNED_ALLOC 1
+# ifndef HAVE_ALIGNED_ALLOC
+/* Defined in gmalloc.c. */
+void *aligned_alloc (size_t, size_t);
+# endif
+# elif defined HYBRID_MALLOC
# if defined HAVE_ALIGNED_ALLOC || defined HAVE_POSIX_MEMALIGN
# define USE_ALIGNED_ALLOC 1
# endif
diff --git a/src/buffer.c b/src/buffer.c
index 3e410670c54..98b61c350e2 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -2145,16 +2145,16 @@ DEFUN ("barf-if-buffer-read-only", Fbarf_if_buffer_read_only,
doc: /* Signal a `buffer-read-only' error if the current buffer is read-only.
If the text under POSITION (which defaults to point) has the
`inhibit-read-only' text property set, the error will not be raised. */)
- (Lisp_Object pos)
+ (Lisp_Object position)
{
- if (NILP (pos))
- XSETFASTINT (pos, PT);
+ if (NILP (position))
+ XSETFASTINT (position, PT);
else
- CHECK_NUMBER (pos);
+ CHECK_NUMBER (position);
if (!NILP (BVAR (current_buffer, read_only))
&& NILP (Vinhibit_read_only)
- && NILP (Fget_text_property (pos, Qinhibit_read_only, Qnil)))
+ && NILP (Fget_text_property (position, Qinhibit_read_only, Qnil)))
xsignal1 (Qbuffer_read_only, Fcurrent_buffer ());
return Qnil;
}
diff --git a/src/keyboard.c b/src/keyboard.c
index 7e95ad7ad16..baca4b56fb5 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -10304,7 +10304,7 @@ handle_interrupt (bool in_signal_handler)
{
write_stdout ("Auto-save? (y or n) ");
c = read_stdin ();
- if ((c & 040) == 'Y')
+ if (c == 'y' || c == 'Y')
{
Fdo_auto_save (Qt, Qnil);
#ifdef MSDOS
@@ -10336,7 +10336,7 @@ handle_interrupt (bool in_signal_handler)
write_stdout ("Abort (and dump core)? (y or n) ");
#endif
c = read_stdin ();
- if ((c & ~040) == 'Y')
+ if (c == 'y' || c == 'Y')
emacs_abort ();
while (c != '\n')
c = read_stdin ();
diff --git a/src/menu.c b/src/menu.c
index caae228a259..cbddef35754 100644
--- a/src/menu.c
+++ b/src/menu.c
@@ -1236,6 +1236,9 @@ no quit occurs and `x-popup-menu' returns nil. */)
{
/* Use the mouse's current position. */
struct frame *new_f = SELECTED_FRAME ();
+
+ XSETFASTINT (x, 0);
+ XSETFASTINT (y, 0);
#ifdef HAVE_X_WINDOWS
if (FRAME_X_P (new_f))
{
diff --git a/src/xdisp.c b/src/xdisp.c
index 78fddd60fc0..8f1e98d99ef 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -7234,14 +7234,23 @@ get_next_display_element (struct it *it)
buffer position is stored in the 'position'
member of the iteration stack slot below the
current one, see handle_single_display_spec. By
- contrast, it->current.pos was is not yet updated
+ contrast, it->current.pos was not yet updated
to point to that buffer position; that will
happen in pop_it, after we finish displaying the
current string. Note that we already checked
above that it->sp is positive, so subtracting one
from it is safe. */
if (it->from_disp_prop_p)
- pos = (it->stack + it->sp - 1)->position;
+ {
+ int stackp = it->sp - 1;
+
+ /* Find the stack level with data from buffer. */
+ while (stackp >= 0
+ && STRINGP ((it->stack + stackp)->string))
+ stackp--;
+ eassert (stackp >= 0);
+ pos = (it->stack + stackp)->position;
+ }
else
INC_TEXT_POS (pos, it->multibyte_p);
diff --git a/src/xwidget.c b/src/xwidget.c
index 8745416f3db..f436e95d686 100644
--- a/src/xwidget.c
+++ b/src/xwidget.c
@@ -320,7 +320,7 @@ xwidget_show_view (struct xwidget_view *xv)
xv->y + xv->clip_top);
}
-/* Hide an xvidget view. */
+/* Hide an xwidget view. */
static void
xwidget_hide_view (struct xwidget_view *xv)
{