diff options
| author | Glenn Morris | 2017-11-20 13:08:35 -0500 |
|---|---|---|
| committer | Glenn Morris | 2017-11-20 13:08:35 -0500 |
| commit | 33bfbfee7ef04392b0c30ca2ab5074a14c4ddad7 (patch) | |
| tree | 1f9432682a7bff627f7208bcd8cc594bf7b5d60a /src | |
| parent | 7cf41d8088284c2fe8b1807d07fc082a270e6a78 (diff) | |
| parent | 6e6bf60eab1e921605064e3d39ea080639f8e0f6 (diff) | |
| download | emacs-33bfbfee7ef04392b0c30ca2ab5074a14c4ddad7.tar.gz emacs-33bfbfee7ef04392b0c30ca2ab5074a14c4ddad7.zip | |
Merge from origin/emacs-26
6e6bf60 Don't let delete_frame select a tooltip frame (Bug#27647)
e9dd580 Filter obtrusive events in help-read-key-sequence.
90075e8 Fix symlink flag in tramp-gvfs-handle-file-attributes
c355529 Fix bug in tramp-handle-file-truename
4c21d04 Fix a typo in doc string of electric-indent-functions-without...
319c2de Avoid assertion violations in echo_area_display
63c7733 ; * lisp/ido.el (ido-find-alternate-file): Doc fix. (Bug#29278)
cbd319a Fix case-folding in Occur
29520b0 Fix quick-calc in C mode with hex values
3e80124 Improve documentation of dired-next/prev-marked-file
90add18 Prevent aborts in line-move-visual
648c128 More fixes in src/.gdbinit
104f3e5 Document how to enter whitespace when using grep-read-files
Diffstat (limited to 'src')
| -rw-r--r-- | src/.gdbinit | 18 | ||||
| -rw-r--r-- | src/frame.c | 5 | ||||
| -rw-r--r-- | src/indent.c | 17 | ||||
| -rw-r--r-- | src/xdisp.c | 3 |
4 files changed, 26 insertions, 17 deletions
diff --git a/src/.gdbinit b/src/.gdbinit index 48bb5dfadb8..e22d03ea476 100644 --- a/src/.gdbinit +++ b/src/.gdbinit | |||
| @@ -352,7 +352,7 @@ end | |||
| 352 | 352 | ||
| 353 | define pcursorx | 353 | define pcursorx |
| 354 | set $cp = $arg0 | 354 | set $cp = $arg0 |
| 355 | printf "y=%d x=%d vpos=%d hpos=%d", $cp->y, $cp->x, $cp->vpos, $cp->hpos | 355 | printf "y=%d x=%d vpos=%d hpos=%d", $cp.y, $cp.x, $cp.vpos, $cp.hpos |
| 356 | end | 356 | end |
| 357 | document pcursorx | 357 | document pcursorx |
| 358 | Pretty print a window cursor. | 358 | Pretty print a window cursor. |
| @@ -369,11 +369,11 @@ end | |||
| 369 | 369 | ||
| 370 | define pwinx | 370 | define pwinx |
| 371 | set $w = $arg0 | 371 | set $w = $arg0 |
| 372 | if ($w->mini_p != Qnil) | 372 | if ($w->mini != 0) |
| 373 | printf "Mini " | 373 | printf "Mini " |
| 374 | end | 374 | end |
| 375 | printf "Window %d ", $int | 375 | printf "Window %d ", $w->sequence_number |
| 376 | xgetptr $w->buffer | 376 | xgetptr $w->contents |
| 377 | set $tem = (struct buffer *) $ptr | 377 | set $tem = (struct buffer *) $ptr |
| 378 | xgetptr $tem->name_ | 378 | xgetptr $tem->name_ |
| 379 | printf "%s", ((struct Lisp_String *) $ptr)->u.s.data | 379 | printf "%s", ((struct Lisp_String *) $ptr)->u.s.data |
| @@ -381,16 +381,14 @@ define pwinx | |||
| 381 | xgetptr $w->start | 381 | xgetptr $w->start |
| 382 | set $tem = (struct Lisp_Marker *) $ptr | 382 | set $tem = (struct Lisp_Marker *) $ptr |
| 383 | printf "start=%d end:", $tem->charpos | 383 | printf "start=%d end:", $tem->charpos |
| 384 | if ($w->window_end_valid != Qnil) | 384 | if ($w->window_end_valid != 0) |
| 385 | xgetint $w->window_end_pos | 385 | printf "pos=%d", $w->window_end_pos |
| 386 | printf "pos=%d", $int | 386 | printf " vpos=%d", $w->window_end_vpos |
| 387 | xgetint $w->window_end_vpos | ||
| 388 | printf " vpos=%d", $int | ||
| 389 | else | 387 | else |
| 390 | printf "invalid" | 388 | printf "invalid" |
| 391 | end | 389 | end |
| 392 | printf " vscroll=%d", $w->vscroll | 390 | printf " vscroll=%d", $w->vscroll |
| 393 | if ($w->force_start != Qnil) | 391 | if ($w->force_start != 0) |
| 394 | printf " FORCE_START" | 392 | printf " FORCE_START" |
| 395 | end | 393 | end |
| 396 | if ($w->must_be_updated_p) | 394 | if ($w->must_be_updated_p) |
diff --git a/src/frame.c b/src/frame.c index 2b32751c0d3..aacb27ec790 100644 --- a/src/frame.c +++ b/src/frame.c | |||
| @@ -1920,6 +1920,7 @@ delete_frame (Lisp_Object frame, Lisp_Object force) | |||
| 1920 | See https://debbugs.gnu.org/cgi/bugreport.cgi?bug=15025. */ | 1920 | See https://debbugs.gnu.org/cgi/bugreport.cgi?bug=15025. */ |
| 1921 | FOR_EACH_FRAME (tail, frame1) | 1921 | FOR_EACH_FRAME (tail, frame1) |
| 1922 | if (!EQ (frame, frame1) | 1922 | if (!EQ (frame, frame1) |
| 1923 | && NILP (Fframe_parameter (frame1, Qtooltip)) | ||
| 1923 | && (FRAME_TERMINAL (XFRAME (frame)) | 1924 | && (FRAME_TERMINAL (XFRAME (frame)) |
| 1924 | == FRAME_TERMINAL (XFRAME (frame1))) | 1925 | == FRAME_TERMINAL (XFRAME (frame1))) |
| 1925 | && FRAME_VISIBLE_P (XFRAME (frame1))) | 1926 | && FRAME_VISIBLE_P (XFRAME (frame1))) |
| @@ -1930,7 +1931,9 @@ delete_frame (Lisp_Object frame, Lisp_Object force) | |||
| 1930 | { | 1931 | { |
| 1931 | FOR_EACH_FRAME (tail, frame1) | 1932 | FOR_EACH_FRAME (tail, frame1) |
| 1932 | { | 1933 | { |
| 1933 | if (! EQ (frame, frame1) && FRAME_LIVE_P (XFRAME (frame1))) | 1934 | if (!EQ (frame, frame1) |
| 1935 | && FRAME_LIVE_P (XFRAME (frame1)) | ||
| 1936 | && NILP (Fframe_parameter (frame1, Qtooltip))) | ||
| 1934 | { | 1937 | { |
| 1935 | /* Do not change a text terminal's top-frame. */ | 1938 | /* Do not change a text terminal's top-frame. */ |
| 1936 | struct frame *f1 = XFRAME (frame1); | 1939 | struct frame *f1 = XFRAME (frame1); |
diff --git a/src/indent.c b/src/indent.c index 192eec72efe..5f931a511e4 100644 --- a/src/indent.c +++ b/src/indent.c | |||
| @@ -1959,21 +1959,26 @@ line_number_display_width (struct window *w, int *width, int *pixel_width) | |||
| 1959 | else | 1959 | else |
| 1960 | { | 1960 | { |
| 1961 | struct it it; | 1961 | struct it it; |
| 1962 | struct text_pos wstart; | 1962 | struct text_pos startpos; |
| 1963 | bool saved_restriction = false; | 1963 | bool saved_restriction = false; |
| 1964 | ptrdiff_t count = SPECPDL_INDEX (); | 1964 | ptrdiff_t count = SPECPDL_INDEX (); |
| 1965 | SET_TEXT_POS_FROM_MARKER (wstart, w->start); | 1965 | SET_TEXT_POS_FROM_MARKER (startpos, w->start); |
| 1966 | void *itdata = bidi_shelve_cache (); | 1966 | void *itdata = bidi_shelve_cache (); |
| 1967 | /* We must start from window's start point, but it could be | 1967 | /* We want to start from window's start point, but it could be |
| 1968 | outside the accessible region. */ | 1968 | outside the accessible region, in which case we widen the |
| 1969 | if (wstart.charpos < BEGV || wstart.charpos > ZV) | 1969 | buffer temporarily. It could even be beyond the buffer's end |
| 1970 | (Org mode's display of source code snippets is known to cause | ||
| 1971 | that), in which case we just punt and start from point instead. */ | ||
| 1972 | if (startpos.charpos > Z) | ||
| 1973 | SET_TEXT_POS (startpos, PT, PT_BYTE); | ||
| 1974 | if (startpos.charpos < BEGV || startpos.charpos > ZV) | ||
| 1970 | { | 1975 | { |
| 1971 | record_unwind_protect (save_restriction_restore, | 1976 | record_unwind_protect (save_restriction_restore, |
| 1972 | save_restriction_save ()); | 1977 | save_restriction_save ()); |
| 1973 | Fwiden (); | 1978 | Fwiden (); |
| 1974 | saved_restriction = true; | 1979 | saved_restriction = true; |
| 1975 | } | 1980 | } |
| 1976 | start_display (&it, w, wstart); | 1981 | start_display (&it, w, startpos); |
| 1977 | /* The call to move_it_by_lines below will not generate a line | 1982 | /* The call to move_it_by_lines below will not generate a line |
| 1978 | number if the first line shown in the window is hscrolled | 1983 | number if the first line shown in the window is hscrolled |
| 1979 | such that all of its display elements are out of view. So we | 1984 | such that all of its display elements are out of view. So we |
diff --git a/src/xdisp.c b/src/xdisp.c index f1c6b9ff699..016e7044caf 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -11510,6 +11510,9 @@ echo_area_display (bool update_frame_p) | |||
| 11510 | struct frame *sf = SELECTED_FRAME (); | 11510 | struct frame *sf = SELECTED_FRAME (); |
| 11511 | 11511 | ||
| 11512 | mini_window = FRAME_MINIBUF_WINDOW (sf); | 11512 | mini_window = FRAME_MINIBUF_WINDOW (sf); |
| 11513 | if (NILP (mini_window)) | ||
| 11514 | return; | ||
| 11515 | |||
| 11513 | w = XWINDOW (mini_window); | 11516 | w = XWINDOW (mini_window); |
| 11514 | f = XFRAME (WINDOW_FRAME (w)); | 11517 | f = XFRAME (WINDOW_FRAME (w)); |
| 11515 | 11518 | ||