diff options
| author | Glenn Morris | 2012-04-13 18:46:06 -0700 |
|---|---|---|
| committer | Glenn Morris | 2012-04-13 18:46:06 -0700 |
| commit | 35dc09a19c606f9e7a078df32d030451c7c90ba1 (patch) | |
| tree | 8df2ade99ad8620568094d61bba9dd4ac8856c43 /src | |
| parent | 327732d994c98849c765659aa2164a7482b6beab (diff) | |
| parent | ad3a2b411dc2b34f5d6fa434aee3ca56fa7a88e7 (diff) | |
| download | emacs-35dc09a19c606f9e7a078df32d030451c7c90ba1.tar.gz emacs-35dc09a19c606f9e7a078df32d030451c7c90ba1.zip | |
Merge from emacs-24, up to 2012-04-10T02:06:19Z!larsi@gnus.org
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 15 | ||||
| -rw-r--r-- | src/lread.c | 5 | ||||
| -rw-r--r-- | src/nsterm.m | 8 | ||||
| -rw-r--r-- | src/xdisp.c | 10 |
4 files changed, 32 insertions, 6 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index c23585bdab7..6d2ed01bafc 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,18 @@ | |||
| 1 | 2012-04-14 Atsuo Ohki <ohki@gssm.otsuka.tsukuba.ac.jp> (tiny change) | ||
| 2 | |||
| 3 | * lread.c (lisp_file_lexically_bound_p): | ||
| 4 | Fix hang at ";-*-\n" (bug#11238). | ||
| 5 | |||
| 6 | 2012-04-14 Eli Zaretskii <eliz@gnu.org> | ||
| 7 | |||
| 8 | * xdisp.c (find_last_unchanged_at_beg_row): Don't consider a row | ||
| 9 | "unchanged" if its end.pos is beyond ZV. (Bug#11199) | ||
| 10 | |||
| 11 | 2012-04-14 Jan Djärv <jan.h.d@swipnet.se> | ||
| 12 | |||
| 13 | * nsterm.m (constrainFrameRect): Always constrain when there is only | ||
| 14 | one screen (Bug#10962). | ||
| 15 | |||
| 1 | 2012-04-13 Ken Brown <kbrown@cornell.edu> | 16 | 2012-04-13 Ken Brown <kbrown@cornell.edu> |
| 2 | 17 | ||
| 3 | * s/cygwin.h (PTY_OPEN): Don't try to close a bogus file descriptor. | 18 | * s/cygwin.h (PTY_OPEN): Don't try to close a bogus file descriptor. |
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/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. */ |