diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 45 | ||||
| -rw-r--r-- | src/Makefile.in | 10 | ||||
| -rw-r--r-- | src/alloc.c | 14 | ||||
| -rw-r--r-- | src/indent.c | 3 | ||||
| -rw-r--r-- | src/lread.c | 5 | ||||
| -rw-r--r-- | src/nsterm.m | 8 | ||||
| -rw-r--r-- | src/s/cygwin.h | 7 | ||||
| -rw-r--r-- | src/window.c | 2 | ||||
| -rw-r--r-- | src/xdisp.c | 10 |
9 files changed, 75 insertions, 29 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 2b6a0b2246e..20a6dfca643 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | 2012-04-10 Paul Eggert <eggert@cs.ucla.edu> | 1 | 2012-04-14 Paul Eggert <eggert@cs.ucla.edu> |
| 2 | 2 | ||
| 3 | configure: new option --enable-gcc-warnings (Bug#11207) | 3 | configure: new option --enable-gcc-warnings (Bug#11207) |
| 4 | * Makefile.in (C_WARNINGS_SWITCH): Remove. | 4 | * Makefile.in (C_WARNINGS_SWITCH): Remove. |
| @@ -11,6 +11,47 @@ | |||
| 11 | the Emacs and Gnulib regex code is merged. | 11 | the Emacs and Gnulib regex code is merged. |
| 12 | (xmalloc, xrealloc): Now static. | 12 | (xmalloc, xrealloc): Now static. |
| 13 | 13 | ||
| 14 | 2012-04-14 Atsuo Ohki <ohki@gssm.otsuka.tsukuba.ac.jp> (tiny change) | ||
| 15 | |||
| 16 | * lread.c (lisp_file_lexically_bound_p): | ||
| 17 | Fix hang at ";-*-\n" (bug#11238). | ||
| 18 | |||
| 19 | 2012-04-14 Eli Zaretskii <eliz@gnu.org> | ||
| 20 | |||
| 21 | * xdisp.c (find_last_unchanged_at_beg_row): Don't consider a row | ||
| 22 | "unchanged" if its end.pos is beyond ZV. (Bug#11199) | ||
| 23 | |||
| 24 | 2012-04-14 Jan Djärv <jan.h.d@swipnet.se> | ||
| 25 | |||
| 26 | * nsterm.m (constrainFrameRect): Always constrain when there is only | ||
| 27 | one screen (Bug#10962). | ||
| 28 | |||
| 29 | 2012-04-13 Ken Brown <kbrown@cornell.edu> | ||
| 30 | |||
| 31 | * s/cygwin.h (PTY_OPEN): Don't try to close a bogus file descriptor. | ||
| 32 | |||
| 33 | 2012-04-13 Reuben Thomas <rrt@sc3d.org> | ||
| 34 | |||
| 35 | * indent.c (Fmove_to_column): Change interactive spec (Bug#739). | ||
| 36 | |||
| 37 | 2012-04-11 Daniel Colascione <dancol@dancol.org> | ||
| 38 | |||
| 39 | * s/cygwin.h: The vfork the #define in cygwin.h was protecting | ||
| 40 | against is gone. It's better to use vfork now so that when Cygwin | ||
| 41 | gains a new, working vfork, we use it automatically (bug#10398). | ||
| 42 | |||
| 43 | 2012-04-11 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 44 | |||
| 45 | * window.c (save_window_save): Obey window-point-insertion-type. | ||
| 46 | |||
| 47 | 2012-04-11 Glenn Morris <rgm@gnu.org> | ||
| 48 | |||
| 49 | * Makefile.in (GNUSTEP_CFLAGS): Rename from C_SWITCH_X_SYSTEM. | ||
| 50 | |||
| 51 | 2012-04-11 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 52 | |||
| 53 | * alloc.c (lisp_align_malloc): Remove unneeded prototype. | ||
| 54 | |||
| 14 | 2012-04-10 "Jason S. Cornez" <jcornez@ravenpack.com> (tiny change) | 55 | 2012-04-10 "Jason S. Cornez" <jcornez@ravenpack.com> (tiny change) |
| 15 | 56 | ||
| 16 | * keyboard.c: Override inhibit-quit after the third C-g (bug#6585). | 57 | * keyboard.c: Override inhibit-quit after the third C-g (bug#6585). |
| @@ -9747,7 +9788,7 @@ See ChangeLog.11 for earlier changes. | |||
| 9747 | ;; coding: utf-8 | 9788 | ;; coding: utf-8 |
| 9748 | ;; End: | 9789 | ;; End: |
| 9749 | 9790 | ||
| 9750 | Copyright (C) 2011-2012 Free Software Foundation, Inc. | 9791 | Copyright (C) 2011-2012 Free Software Foundation, Inc. |
| 9751 | 9792 | ||
| 9752 | This file is part of GNU Emacs. | 9793 | This file is part of GNU Emacs. |
| 9753 | 9794 | ||
diff --git a/src/Makefile.in b/src/Makefile.in index 9525996caea..37480f8269d 100644 --- a/src/Makefile.in +++ b/src/Makefile.in | |||
| @@ -76,16 +76,13 @@ C_SWITCH_MACHINE=@C_SWITCH_MACHINE@ | |||
| 76 | ## System-specific CFLAGS. | 76 | ## System-specific CFLAGS. |
| 77 | C_SWITCH_SYSTEM=@C_SWITCH_SYSTEM@ | 77 | C_SWITCH_SYSTEM=@C_SWITCH_SYSTEM@ |
| 78 | 78 | ||
| 79 | ## Currently only set if NS_IMPL_GNUSTEP. | 79 | GNUSTEP_CFLAGS=@GNUSTEP_CFLAGS@ |
| 80 | ## C_SWITCH_X_SITE may override this. | ||
| 81 | C_SWITCH_X_SYSTEM=@C_SWITCH_X_SYSTEM@ | ||
| 82 | 80 | ||
| 83 | ## Define C_SWITCH_X_SITE to contain any special flags your compiler | 81 | ## Define C_SWITCH_X_SITE to contain any special flags your compiler |
| 84 | ## may need to deal with X Windows. For instance, if you've defined | 82 | ## may need to deal with X Windows. For instance, if you've defined |
| 85 | ## HAVE_X_WINDOWS and your X include files aren't in a place that your | 83 | ## HAVE_X_WINDOWS and your X include files aren't in a place that your |
| 86 | ## compiler can find on its own, you might want to add "-I/..." or | 84 | ## compiler can find on its own, you might want to add "-I/..." or |
| 87 | ## something similar. This is normally set by configure. | 85 | ## something similar. This is normally set by configure. |
| 88 | ## This is used before C_SWITCH_X_SYSTEM and may override it. | ||
| 89 | C_SWITCH_X_SITE=@C_SWITCH_X_SITE@ | 86 | C_SWITCH_X_SITE=@C_SWITCH_X_SITE@ |
| 90 | 87 | ||
| 91 | ## Define LD_SWITCH_X_SITE to contain any special flags your loader | 88 | ## Define LD_SWITCH_X_SITE to contain any special flags your loader |
| @@ -303,14 +300,11 @@ MKDEPDIR=@MKDEPDIR@ | |||
| 303 | ## -DHAVE_CONFIG_H is needed for some other files to take advantage of | 300 | ## -DHAVE_CONFIG_H is needed for some other files to take advantage of |
| 304 | ## the information in `config.h'. | 301 | ## the information in `config.h'. |
| 305 | ## | 302 | ## |
| 306 | ## C_SWITCH_X_SITE must come before C_SWITCH_X_SYSTEM | ||
| 307 | ## since it may have -I options that should override those. | ||
| 308 | ## | ||
| 309 | ## FIXME? MYCPPFLAGS only referenced in etc/DEBUG. | 303 | ## FIXME? MYCPPFLAGS only referenced in etc/DEBUG. |
| 310 | ALL_CFLAGS=-Demacs -DHAVE_CONFIG_H $(MYCPPFLAGS) -I. -I$(srcdir) \ | 304 | ALL_CFLAGS=-Demacs -DHAVE_CONFIG_H $(MYCPPFLAGS) -I. -I$(srcdir) \ |
| 311 | -I$(lib) -I$(srcdir)/../lib \ | 305 | -I$(lib) -I$(srcdir)/../lib \ |
| 312 | $(C_SWITCH_MACHINE) $(C_SWITCH_SYSTEM) $(C_SWITCH_X_SITE) \ | 306 | $(C_SWITCH_MACHINE) $(C_SWITCH_SYSTEM) $(C_SWITCH_X_SITE) \ |
| 313 | $(C_SWITCH_X_SYSTEM) $(CFLAGS_SOUND) $(RSVG_CFLAGS) $(IMAGEMAGICK_CFLAGS) \ | 307 | $(GNUSTEP_CFLAGS) $(CFLAGS_SOUND) $(RSVG_CFLAGS) $(IMAGEMAGICK_CFLAGS) \ |
| 314 | $(LIBXML2_CFLAGS) $(DBUS_CFLAGS) \ | 308 | $(LIBXML2_CFLAGS) $(DBUS_CFLAGS) \ |
| 315 | $(SETTINGS_CFLAGS) $(FREETYPE_CFLAGS) $(FONTCONFIG_CFLAGS) \ | 309 | $(SETTINGS_CFLAGS) $(FREETYPE_CFLAGS) $(FONTCONFIG_CFLAGS) \ |
| 316 | $(LIBOTF_CFLAGS) $(M17N_FLT_CFLAGS) $(DEPFLAGS) $(PROFILING_CFLAGS) \ | 310 | $(LIBOTF_CFLAGS) $(M17N_FLT_CFLAGS) $(DEPFLAGS) $(PROFILING_CFLAGS) \ |
diff --git a/src/alloc.c b/src/alloc.c index 16b004fc0e9..314438ba9f1 100644 --- a/src/alloc.c +++ b/src/alloc.c | |||
| @@ -296,7 +296,6 @@ enum mem_type | |||
| 296 | MEM_TYPE_VECTORLIKE | 296 | MEM_TYPE_VECTORLIKE |
| 297 | }; | 297 | }; |
| 298 | 298 | ||
| 299 | static POINTER_TYPE *lisp_align_malloc (size_t, enum mem_type); | ||
| 300 | static POINTER_TYPE *lisp_malloc (size_t, enum mem_type); | 299 | static POINTER_TYPE *lisp_malloc (size_t, enum mem_type); |
| 301 | 300 | ||
| 302 | 301 | ||
| @@ -938,9 +937,10 @@ lisp_free (POINTER_TYPE *block) | |||
| 938 | MALLOC_UNBLOCK_INPUT; | 937 | MALLOC_UNBLOCK_INPUT; |
| 939 | } | 938 | } |
| 940 | 939 | ||
| 941 | /* Allocation of aligned blocks of memory to store Lisp data. */ | 940 | /***** Allocation of aligned blocks of memory to store Lisp data. *****/ |
| 942 | /* The entry point is lisp_align_malloc which returns blocks of at most */ | 941 | |
| 943 | /* BLOCK_BYTES and guarantees they are aligned on a BLOCK_ALIGN boundary. */ | 942 | /* The entry point is lisp_align_malloc which returns blocks of at most |
| 943 | BLOCK_BYTES and guarantees they are aligned on a BLOCK_ALIGN boundary. */ | ||
| 944 | 944 | ||
| 945 | /* Use posix_memalloc if the system has it and we're using the system's | 945 | /* Use posix_memalloc if the system has it and we're using the system's |
| 946 | malloc (because our gmalloc.c routines don't have posix_memalign although | 946 | malloc (because our gmalloc.c routines don't have posix_memalign although |
| @@ -1099,7 +1099,7 @@ lisp_align_malloc (size_t nbytes, enum mem_type type) | |||
| 1099 | #endif | 1099 | #endif |
| 1100 | 1100 | ||
| 1101 | /* Initialize the blocks and put them on the free list. | 1101 | /* Initialize the blocks and put them on the free list. |
| 1102 | Is `base' was not properly aligned, we can't use the last block. */ | 1102 | If `base' was not properly aligned, we can't use the last block. */ |
| 1103 | for (i = 0; i < (aligned ? ABLOCKS_SIZE : ABLOCKS_SIZE - 1); i++) | 1103 | for (i = 0; i < (aligned ? ABLOCKS_SIZE : ABLOCKS_SIZE - 1); i++) |
| 1104 | { | 1104 | { |
| 1105 | abase->blocks[i].abase = abase; | 1105 | abase->blocks[i].abase = abase; |
| @@ -1146,8 +1146,8 @@ lisp_align_free (POINTER_TYPE *block) | |||
| 1146 | ablock->x.next_free = free_ablock; | 1146 | ablock->x.next_free = free_ablock; |
| 1147 | free_ablock = ablock; | 1147 | free_ablock = ablock; |
| 1148 | /* Update busy count. */ | 1148 | /* Update busy count. */ |
| 1149 | ABLOCKS_BUSY (abase) = | 1149 | ABLOCKS_BUSY (abase) |
| 1150 | (struct ablocks *) (-2 + (intptr_t) ABLOCKS_BUSY (abase)); | 1150 | = (struct ablocks *) (-2 + (intptr_t) ABLOCKS_BUSY (abase)); |
| 1151 | 1151 | ||
| 1152 | if (2 > (intptr_t) ABLOCKS_BUSY (abase)) | 1152 | if (2 > (intptr_t) ABLOCKS_BUSY (abase)) |
| 1153 | { /* All the blocks are free. */ | 1153 | { /* All the blocks are free. */ |
diff --git a/src/indent.c b/src/indent.c index 1531d2ffde8..280607f7ecb 100644 --- a/src/indent.c +++ b/src/indent.c | |||
| @@ -956,7 +956,8 @@ indented_beyond_p (EMACS_INT pos, EMACS_INT pos_byte, EMACS_INT column) | |||
| 956 | return val >= column; | 956 | return val >= column; |
| 957 | } | 957 | } |
| 958 | 958 | ||
| 959 | DEFUN ("move-to-column", Fmove_to_column, Smove_to_column, 1, 2, "p", | 959 | DEFUN ("move-to-column", Fmove_to_column, Smove_to_column, 1, 2, |
| 960 | "NMove to column: ", | ||
| 960 | doc: /* Move point to column COLUMN in the current line. | 961 | doc: /* Move point to column COLUMN in the current line. |
| 961 | Interactively, COLUMN is the value of prefix numeric argument. | 962 | Interactively, COLUMN is the value of prefix numeric argument. |
| 962 | The column of a character is calculated by adding together the widths | 963 | The column of a character is calculated by adding together the widths |
diff --git a/src/lread.c b/src/lread.c index bfb37b4fc89..50465fd01e8 100644 --- a/src/lread.c +++ b/src/lread.c | |||
| @@ -839,7 +839,7 @@ lisp_file_lexically_bound_p (Lisp_Object readcharfun) | |||
| 839 | } | 839 | } |
| 840 | 840 | ||
| 841 | /* Stop scanning if no colon was found before end marker. */ | 841 | /* Stop scanning if no colon was found before end marker. */ |
| 842 | if (!in_file_vars) | 842 | if (!in_file_vars || ch == '\n' || ch == EOF) |
| 843 | break; | 843 | break; |
| 844 | 844 | ||
| 845 | while (i > 0 && (var[i - 1] == ' ' || var[i - 1] == '\t')) | 845 | while (i > 0 && (var[i - 1] == ' ' || var[i - 1] == '\t')) |
| @@ -863,8 +863,7 @@ lisp_file_lexically_bound_p (Lisp_Object readcharfun) | |||
| 863 | ch = READCHAR; | 863 | ch = READCHAR; |
| 864 | } | 864 | } |
| 865 | if (! in_file_vars) | 865 | if (! in_file_vars) |
| 866 | /* The value was terminated by an end-marker, which | 866 | /* The value was terminated by an end-marker, which remove. */ |
| 867 | remove. */ | ||
| 868 | i -= 3; | 867 | i -= 3; |
| 869 | while (i > 0 && (val[i - 1] == ' ' || val[i - 1] == '\t')) | 868 | while (i > 0 && (val[i - 1] == ' ' || val[i - 1] == '\t')) |
| 870 | i--; | 869 | i--; |
diff --git a/src/nsterm.m b/src/nsterm.m index a45792fd645..7cbaf991311 100644 --- a/src/nsterm.m +++ b/src/nsterm.m | |||
| @@ -6038,11 +6038,15 @@ ns_term_shutdown (int sig) | |||
| 6038 | restrict the height to just one monitor. So we override this. */ | 6038 | restrict the height to just one monitor. So we override this. */ |
| 6039 | - (NSRect)constrainFrameRect:(NSRect)frameRect toScreen:(NSScreen *)screen | 6039 | - (NSRect)constrainFrameRect:(NSRect)frameRect toScreen:(NSScreen *)screen |
| 6040 | { | 6040 | { |
| 6041 | /* When making the frame visible for the first time, we want to | 6041 | /* When making the frame visible for the first time or if there is just |
| 6042 | constrain. Other times not. */ | 6042 | one screen, we want to constrain. Other times not. */ |
| 6043 | NSUInteger nr_screens = [[NSScreen screens] count]; | ||
| 6043 | struct frame *f = ((EmacsView *)[self delegate])->emacsframe; | 6044 | struct frame *f = ((EmacsView *)[self delegate])->emacsframe; |
| 6044 | NSTRACE (constrainFrameRect); | 6045 | NSTRACE (constrainFrameRect); |
| 6045 | 6046 | ||
| 6047 | if (nr_screens == 1) | ||
| 6048 | return [super constrainFrameRect:frameRect toScreen:screen]; | ||
| 6049 | |||
| 6046 | if (f->output_data.ns->dont_constrain | 6050 | if (f->output_data.ns->dont_constrain |
| 6047 | || ns_menu_bar_should_be_hidden ()) | 6051 | || ns_menu_bar_should_be_hidden ()) |
| 6048 | return frameRect; | 6052 | return frameRect; |
diff --git a/src/s/cygwin.h b/src/s/cygwin.h index 9a371829eaa..f8c656e8ebc 100644 --- a/src/s/cygwin.h +++ b/src/s/cygwin.h | |||
| @@ -58,7 +58,8 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 58 | if (-1 == openpty (&fd, &dummy, pty_name, 0, 0)) \ | 58 | if (-1 == openpty (&fd, &dummy, pty_name, 0, 0)) \ |
| 59 | fd = -1; \ | 59 | fd = -1; \ |
| 60 | sigsetmask (mask); \ | 60 | sigsetmask (mask); \ |
| 61 | emacs_close (dummy); \ | 61 | if (fd >= 0) \ |
| 62 | emacs_close (dummy); \ | ||
| 62 | } \ | 63 | } \ |
| 63 | while (0) | 64 | while (0) |
| 64 | 65 | ||
| @@ -81,10 +82,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 81 | 82 | ||
| 82 | #define HAVE_SOCKETS | 83 | #define HAVE_SOCKETS |
| 83 | 84 | ||
| 84 | /* vfork() interacts badly with setsid(), causing ptys to fail to | ||
| 85 | change their controlling terminal */ | ||
| 86 | #define vfork fork | ||
| 87 | |||
| 88 | /* This should work (at least when compiling with gcc). But I have no way | 85 | /* This should work (at least when compiling with gcc). But I have no way |
| 89 | or intention to verify or even test it. If you encounter a problem with | 86 | or intention to verify or even test it. If you encounter a problem with |
| 90 | it, feel free to change this setting, but please add a comment here about | 87 | it, feel free to change this setting, but please add a comment here about |
diff --git a/src/window.c b/src/window.c index af7968f9edf..1f27cba444b 100644 --- a/src/window.c +++ b/src/window.c | |||
| @@ -5945,6 +5945,8 @@ save_window_save (Lisp_Object window, struct Lisp_Vector *vector, int i) | |||
| 5945 | } | 5945 | } |
| 5946 | else | 5946 | else |
| 5947 | p->pointm = Fcopy_marker (w->pointm, Qnil); | 5947 | p->pointm = Fcopy_marker (w->pointm, Qnil); |
| 5948 | XMARKER (p->pointm)->insertion_type | ||
| 5949 | = !NILP (Vwindow_point_insertion_type); | ||
| 5948 | 5950 | ||
| 5949 | p->start = Fcopy_marker (w->start, Qnil); | 5951 | p->start = Fcopy_marker (w->start, Qnil); |
| 5950 | p->start_at_line_beg = w->start_at_line_beg; | 5952 | p->start_at_line_beg = w->start_at_line_beg; |
diff --git a/src/xdisp.c b/src/xdisp.c index c6939a5dcf9..ea964f4dadc 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -16606,7 +16606,15 @@ find_last_unchanged_at_beg_row (struct window *w) | |||
| 16606 | continued. */ | 16606 | continued. */ |
| 16607 | && !(MATRIX_ROW_END_CHARPOS (row) == first_changed_pos | 16607 | && !(MATRIX_ROW_END_CHARPOS (row) == first_changed_pos |
| 16608 | && (row->continued_p | 16608 | && (row->continued_p |
| 16609 | || row->exact_window_width_line_p))) | 16609 | || row->exact_window_width_line_p)) |
| 16610 | /* If ROW->end is beyond ZV, then ROW->end is outdated and | ||
| 16611 | needs to be recomputed, so don't consider this row as | ||
| 16612 | unchanged. This happens when the last line was | ||
| 16613 | bidi-reordered and was killed immediately before this | ||
| 16614 | redisplay cycle. In that case, ROW->end stores the | ||
| 16615 | buffer position of the first visual-order character of | ||
| 16616 | the killed text, which is now beyond ZV. */ | ||
| 16617 | && CHARPOS (row->end.pos) <= ZV) | ||
| 16610 | row_found = row; | 16618 | row_found = row; |
| 16611 | 16619 | ||
| 16612 | /* Stop if last visible row. */ | 16620 | /* Stop if last visible row. */ |