Mercurial > hg > xemacs-beta
diff src/redisplay.c @ 274:ca9a9ec9c1c1 r21-0b35
Import from CVS: tag r21-0b35
author | cvs |
---|---|
date | Mon, 13 Aug 2007 10:29:42 +0200 |
parents | c5d627a313b1 |
children | 6330739388db |
line wrap: on
line diff
--- a/src/redisplay.c Mon Aug 13 10:28:54 2007 +0200 +++ b/src/redisplay.c Mon Aug 13 10:29:42 2007 +0200 @@ -3922,6 +3922,18 @@ } } } + else if (GENERIC_SPECIFIERP (elt)) + { + Lisp_Object window, tem; + XSETWINDOW (window, w); + tem = specifier_instance_no_quit (elt, Qunbound, window, + ERROR_ME_NOT, 0, Qzero); + if (!UNBOUNDP (tem)) + { + elt = tem; + goto tail_recurse; + } + } else if (CONSP (elt)) { /* A cons cell: four distinct cases. @@ -4084,7 +4096,7 @@ return pos; } -#else /* MODELINE_IS_SCROLLABLE */ +#else /* not MODELINE_IS_SCROLLABLE */ static void generate_formatted_string_db (Lisp_Object format_str, Lisp_Object result_str, struct window *w, struct display_line *dl, @@ -4418,6 +4430,18 @@ } } } + else if (GENERIC_SPECIFIERP (elt)) + { + Lisp_Object window, tem; + XSETWINDOW (window, w); + tem = specifier_instance_no_quit (elt, Qunbound, window, + ERROR_ME_NOT, 0, Qzero); + if (!UNBOUNDP (tem)) + { + elt = tem; + goto tail_recurse; + } + } else if (CONSP (elt)) { /* A cons cell: four distinct cases. @@ -5723,7 +5747,7 @@ /* We still haven't gotten the window regenerated with point visible. Next we try scrolling a little and see if point comes back onto the screen. */ - if (scroll_step) + if (scroll_step > 0) { int scrolled = scroll_conservatively; for (; scrolled >= 0; scrolled -= scroll_step) @@ -6242,7 +6266,7 @@ line = buffer_line_number (b, pos, 1); - sprintf (window_line_number_buf, "%d", line + 1); + sprintf (window_line_number_buf, "%ld", (long)(line + 1)); return window_line_number_buf; }