Now on revision 114186. ------------------------------------------------------------ revno: 114186 committer: Glenn Morris branch nick: trunk timestamp: Mon 2013-09-09 21:28:01 -0400 message: * lisp/dired-x.el (dired-mark-sexp): Unbreak for systems where ls returns "alternate access method" in mode (eg "-rw-r--r--."). It's still pretty broken though, eg http://debbugs.gnu.org/13575 diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2013-09-08 23:15:17 +0000 +++ lisp/ChangeLog 2013-09-10 01:28:01 +0000 @@ -1,3 +1,8 @@ +2013-09-10 Glenn Morris + + * dired-x.el (dired-mark-sexp): Unbreak for systems where ls + returns "alternate access method" in mode (eg "-rw-r--r--."). + 2013-09-08 Glenn Morris * saveplace.el (load-save-place-alist-from-file): === modified file 'lisp/dired-x.el' --- lisp/dired-x.el 2013-09-06 21:12:22 +0000 +++ lisp/dired-x.el 2013-09-10 01:28:01 +0000 @@ -1459,6 +1459,9 @@ s nil)) (setq mode (buffer-substring (point) (+ mode-len (point)))) (forward-char mode-len) + ;; Skip any extended attributes marker ("." or "+"). + (or (looking-at " ") + (forward-char 1)) (setq nlink (read (current-buffer))) ;; Karsten Wenger fixed uid. (setq uid (buffer-substring (1+ (point)) ------------------------------------------------------------ revno: 114185 author: Jean Haidouk committer: Stefan Monnier branch nick: trunk timestamp: Mon 2013-09-09 15:27:38 -0400 message: * leim/quail/latin-alt.el ("french-alt-postfix", "latin-alt-postfix"): * leim/quail/latin-pre.el ("french-prefix"): * leim/quail/latin-post.el ("french-postfix"): Add `œ' and `Œ'. diff: === modified file 'leim/ChangeLog' --- leim/ChangeLog 2013-08-28 06:01:52 +0000 +++ leim/ChangeLog 2013-09-09 19:27:38 +0000 @@ -1,3 +1,9 @@ +2013-09-05 Jean Haidouk (tiny change) + + * quail/latin-alt.el ("french-alt-postfix", "latin-alt-postfix"): + * quail/latin-pre.el ("french-prefix"): + * quail/latin-post.el ("french-postfix"): Add `œ' and `Œ'. + 2013-08-28 Paul Eggert * Makefile.in (SHELL): Now @SHELL@, not /bin/sh, === modified file 'leim/quail/latin-alt.el' --- leim/quail/latin-alt.el 2013-01-01 09:11:05 +0000 +++ leim/quail/latin-alt.el 2013-09-09 19:27:38 +0000 @@ -938,7 +938,7 @@ En doublant la frappe des diacritiques, ils s'isoleront de la lettre. Par exemple: e'' -> e' - n'est pas disponible." +Œ est produit par O/." nil t nil nil nil nil nil nil nil nil t) (quail-define-rules @@ -959,7 +959,9 @@ ("i^" ?î) ("i\"" ?ï) ("O^" ?Ô) + ("O/" ?Œ) ("o^" ?ô) + ("o/" ?œ) ("U`" ?Ù) ("U^" ?Û) ("U\"" ?Ü) @@ -988,7 +990,9 @@ ("i^^" ["i^"]) ("i\"\"" ["i\""]) ("O^^" ["O^"]) + ("O//" ["O/"]) ("o^^" ["o^"]) + ("o//" ["o/"]) ("U``" ["U`"]) ("U^^" ["U^"]) ("U\"\"" ["U\""]) @@ -1423,6 +1427,7 @@ ("O'" ?Ó) ("O-" ?Ō) ("O/" ?Ø) + ("O/" ?Œ) ("O:" ?Ő) ("O\"" ?Ö) ("O^" ?Ô) @@ -1515,6 +1520,7 @@ ("o'" ?ó) ("o-" ?ō) ("o/" ?ø) + ("o/" ?œ) ("o:" ?ő) ("o\"" ?ö) ("o^" ?ô) === modified file 'leim/quail/latin-post.el' --- leim/quail/latin-post.el 2013-01-01 09:11:05 +0000 +++ leim/quail/latin-post.el 2013-09-09 19:27:38 +0000 @@ -1013,7 +1013,7 @@ En doublant la frappe des diacritiques, ils s'isoleront de la lettre. Par exemple: e'' -> e' - n'est pas disponible." +Œ est produit par O/." nil t nil nil nil nil nil nil nil nil t) (quail-define-rules @@ -1034,7 +1034,9 @@ ("i^" ?î) ("i\"" ?ï) ("O^" ?Ô) + ("O/" ?Œ) ("o^" ?ô) + ("o/" ?œ) ("U`" ?Ù) ("U^" ?Û) ("U\"" ?Ü) @@ -1063,7 +1065,9 @@ ("i^^" ["i^"]) ("i\"\"" ["i\""]) ("O^^" ["O^"]) + ("O//" ["O/"]) ("o^^" ["o^"]) + ("o//" ["o/"]) ("U``" ["U`"]) ("U^^" ["U^"]) ("U\"\"" ["U\""]) @@ -2099,7 +2103,7 @@ dot | . | z. -> ż stroke | / | d/ -> đ nordic | / | d/ -> ð t/ -> þ a/ -> å e/ -> æ o/ -> ø - others | / | s/ -> ß ?/ -> ¿ !/ -> ¡ // -> ° + others | / | s/ -> ß ?/ -> ¿ !/ -> ¡ // -> ° o/ -> œ | various | << -> « >> -> » o_ -> º a_ -> ª Doubling the postfix separates the letter and postfix: e.g. a'' -> a' === modified file 'leim/quail/latin-pre.el' --- leim/quail/latin-pre.el 2013-01-01 09:11:05 +0000 +++ leim/quail/latin-pre.el 2013-09-09 19:27:38 +0000 @@ -264,6 +264,7 @@ diaeresis | \" | \"i -> ï cedilla | ~ or , | ~c -> ç ,c -> ç symbol | ~ | ~> -> » ~< -> « + misc | / | /o -> œ " nil t nil nil nil nil nil nil nil nil t) (quail-define-rules @@ -295,6 +296,9 @@ ("\"e" ?ë) ("\"i" ?ï) ("\" " ?\") + ("/o" ?œ) + ("/O" ?Œ) + ("/ " ?/) ("~<" ?\«) ("~>" ?\») ("~C" ?Ç) ------------------------------------------------------------ revno: 114184 committer: Glenn Morris branch nick: trunk timestamp: Mon 2013-09-09 14:14:50 -0400 message: Restore portions of my comment, which I found less clear after copyedits diff: === modified file 'configure.ac' --- configure.ac 2013-09-09 16:26:38 +0000 +++ configure.ac 2013-09-09 18:14:50 +0000 @@ -1026,10 +1026,13 @@ dnl Treat GCC specially since it just gives a non-fatal `unrecognized option' dnl if not built to support GNU ld. -dnl Adding -znocombreloc to LDFLAGS rather than LD_SWITCH_SYSTEM_TEMACS is: -dnl * inappropriate, as LDFLAGS is a build option but this is essential. See: +dnl For a long time, -znocombreloc was added to LDFLAGS rather than +dnl LD_SWITCH_SYSTEM_TEMACS. That is: +dnl * inappropriate, as LDFLAGS is a user option but this is essential. +dnl Eg "make LDFLAGS=... all" could run into problems, dnl http://bugs.debian.org/684788 -dnl * unnecessary, since temacs is the only thing that actually needs it. See: +dnl * unnecessary, since temacs is the only thing that actually needs it. +dnl Indeed this is where it was originally, prior to: dnl http://lists.gnu.org/archive/html/emacs-pretest-bug/2004-03/msg00170.html late_LDFLAGS="$LDFLAGS" if test x$GCC = xyes; then ------------------------------------------------------------ revno: 114183 committer: Glenn Morris branch nick: trunk timestamp: Mon 2013-09-09 12:59:07 -0400 message: * etc/refcards/Makefile (PS_ENGLISH, PS_CZECH, PS_FRENCH, PS_GERMAN) (PS_POLISH, PS_PORTUGUESE, PS_RUSSIAN, PS_SLOVAKIAN, PS_TARGETS): Use substitution refs. diff: === modified file 'etc/ChangeLog' --- etc/ChangeLog 2013-08-15 06:38:44 +0000 +++ etc/ChangeLog 2013-09-09 16:59:07 +0000 @@ -1,3 +1,9 @@ +2013-09-09 Glenn Morris + + * refcards/Makefile (PS_ENGLISH, PS_CZECH, PS_FRENCH, PS_GERMAN) + (PS_POLISH, PS_PORTUGUESE, PS_RUSSIAN, PS_SLOVAKIAN, PS_TARGETS): + Use substitution refs. + 2013-08-15 Glenn Morris * refcards/calccard.pdf, refcards/cs-dired-ref.pdf: === modified file 'etc/refcards/Makefile' --- etc/refcards/Makefile 2013-08-16 05:15:51 +0000 +++ etc/refcards/Makefile 2013-09-09 16:59:07 +0000 @@ -58,42 +58,16 @@ PDF_TARGETS = $(PDF_ENGLISH) $(PDF_CZECH) $(PDF_FRENCH) $(PDF_GERMAN) \ $(PDF_POLISH) $(PDF_PORTUGUESE) $(PDF_RUSSIAN) $(PDF_SLOVAKIAN) -PS_ENGLISH = \ - calccard.ps \ - dired-ref.ps \ - gnus-booklet.ps \ - gnus-refcard.ps \ - orgcard.ps \ - refcard.ps \ - survival.ps \ - vipcard.ps \ - viperCard.ps - -PS_CZECH = \ - cs-dired-ref.ps \ - cs-refcard.ps \ - cs-survival.ps - -PS_FRENCH = \ - fr-dired-ref.ps \ - fr-refcard.ps \ - fr-survival.ps \ - -PS_GERMAN = de-refcard.ps - -PS_POLISH = pl-refcard.ps - -PS_PORTUGUESE = pt-br-refcard.ps - -PS_RUSSIAN = ru-refcard.ps - -PS_SLOVAKIAN = \ - sk-dired-ref.ps \ - sk-refcard.ps \ - sk-survival.ps - -PS_TARGETS = $(PS_ENGLISH) $(PS_CZECH) $(PS_FRENCH) $(PS_GERMAN) \ - $(PS_POLISH) $(PS_PORTUGUESE) $(PS_RUSSIAN) $(PS_SLOVAKIAN) +PS_ENGLISH = $(PDF_ENGLISH:.pdf=.ps) +PS_CZECH = $(PDF_CZECH:.pdf=.ps) +PS_FRENCH = $(PDF_FRENCH:.pdf=.ps) +PS_GERMAN = $(PDF_GERMAN:.pdf=.ps) +PS_POLISH = $(PDF_POLISH:.pdf=.ps) +PS_PORTUGUESE = $(PDF_PORTUGUESE:.pdf=.ps) +PS_RUSSIAN = $(PDF_RUSSIAN:.pdf=.ps) +PS_SLOVAKIAN = $(PDF_SLOVAKIAN:.pdf=.ps) + +PS_TARGETS = $(PDF_TARGETS:.pdf=.ps) ## For emacsver.tex. ------------------------------------------------------------ revno: 114182 committer: Dmitry Antipov branch nick: trunk timestamp: Mon 2013-09-09 20:47:43 +0400 message: Review and drop old frame resize hack. * frame.h (struct frame): Remove force_flush_display_p. * dispnew.c (update_frame): Adjust user and don't call flush_frame here. The comment has said that there was an issues with redisplaying fringes, but I don't see any differences with and without this hack. Hopefully we can continue without it. * xdisp.c (clear_garbaged_frames): Adjust user and do not clear current frame matrices twice if resized_p is set. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2013-09-09 14:01:02 +0000 +++ src/ChangeLog 2013-09-09 16:47:43 +0000 @@ -1,5 +1,16 @@ 2013-09-09 Dmitry Antipov + Review and drop old frame resize hack. + * frame.h (struct frame): Remove force_flush_display_p. + * dispnew.c (update_frame): Adjust user and don't call + flush_frame here. The comment has said that there was an issues + with redisplaying fringes, but I don't see any differences with + and without this hack. Hopefully we can continue without it. + * xdisp.c (clear_garbaged_frames): Adjust user and do not clear + current frame matrices twice if resized_p is set. + +2013-09-09 Dmitry Antipov + Do not populate pure Xism x_sync to other ports. * frame.h (x_sync): Move under HAVE_X_WINDOWS. * frame.c (other_visible_frames) [HAVE_X_WINDOWS]: Use as such. === modified file 'src/dispnew.c' --- src/dispnew.c 2013-09-09 12:15:45 +0000 +++ src/dispnew.c 2013-09-09 16:47:43 +0000 @@ -3061,16 +3061,6 @@ /* Update windows. */ paused_p = update_window_tree (root_window, force_p); update_end (f); - - /* This flush is a performance bottleneck under X, - and it doesn't seem to be necessary anyway (in general). - It is necessary when resizing the window with the mouse, or - at least the fringes are not redrawn in a timely manner. ++kfs */ - if (f->force_flush_display_p) - { - flush_frame (f); - f->force_flush_display_p = 0; - } } else { === modified file 'src/frame.h' --- src/frame.h 2013-09-09 14:01:02 +0000 +++ src/frame.h 2013-09-09 16:47:43 +0000 @@ -185,10 +185,6 @@ Clear the frame in clear_garbaged_frames if set. */ unsigned resized_p : 1; - /* Set to non-zero in when we want for force a flush_display in - update_frame, usually after resizing the frame. */ - unsigned force_flush_display_p : 1; - /* Set to non-zero if the default face for the frame has been realized. Reset to zero whenever the default face changes. Used to see the difference between a font change and face change. */ === modified file 'src/xdisp.c' --- src/xdisp.c 2013-09-09 12:15:45 +0000 +++ src/xdisp.c 2013-09-09 16:47:43 +0000 @@ -10767,11 +10767,9 @@ if (FRAME_VISIBLE_P (f) && FRAME_GARBAGED_P (f)) { if (f->resized_p) - { - redraw_frame (f); - f->force_flush_display_p = 1; - } - clear_current_matrices (f); + redraw_frame (f); + else + clear_current_matrices (f); changed_count++; f->garbaged = 0; f->resized_p = 0; ------------------------------------------------------------ revno: 114181 committer: Paul Eggert branch nick: trunk timestamp: Mon 2013-09-09 09:26:38 -0700 message: Spelling fixes and tidy up a comment. diff: === modified file 'configure.ac' --- configure.ac 2013-09-09 15:54:03 +0000 +++ configure.ac 2013-09-09 16:26:38 +0000 @@ -1026,15 +1026,11 @@ dnl Treat GCC specially since it just gives a non-fatal `unrecognized option' dnl if not built to support GNU ld. -dnl For a long time, this was added to LDFLAGS rather than -dnl LD_SWITCH_SYSTEM_TEMACS. That is: i) inappropriate, since -dnl LDFLAGS is supposed to be a user option, and this flag is -dnl essential. It can leads to problems if the user overrides -dnl LDFLAGS at _build_ time (make LDFLAGS=... all), eg -dnl http://bugs.debian.org/684788. -dnl ii) unnecessary, since temacs is the only thing -dnl that actually needs this option - this is where it was orginally: -dnl http://lists.gnu.org/archive/html/emacs-pretest-bug/2004-03/msg00170.html +dnl Adding -znocombreloc to LDFLAGS rather than LD_SWITCH_SYSTEM_TEMACS is: +dnl * inappropriate, as LDFLAGS is a build option but this is essential. See: +dnl http://bugs.debian.org/684788 +dnl * unnecessary, since temacs is the only thing that actually needs it. See: +dnl http://lists.gnu.org/archive/html/emacs-pretest-bug/2004-03/msg00170.html late_LDFLAGS="$LDFLAGS" if test x$GCC = xyes; then LDFLAGS_NOCOMBRELOC="-Wl,-znocombreloc" === modified file 'lisp/progmodes/python.el' --- lisp/progmodes/python.el 2013-09-05 03:46:34 +0000 +++ lisp/progmodes/python.el 2013-09-09 16:26:38 +0000 @@ -2140,7 +2140,7 @@ 1. When Optional Argument NOMAIN is non-nil everything under an \"if __name__ == '__main__'\" block will be removed. 2. When a subregion of the buffer is sent, it takes care of - appending extra whitelines so tracebacks are correct. + appending extra empty lines so tracebacks are correct. 3. Wraps indented regions under an \"if True:\" block so the interpreter evaluates them correctly." (let ((substring (buffer-substring-no-properties start end)) ------------------------------------------------------------ revno: 114180 committer: Glenn Morris branch nick: trunk timestamp: Mon 2013-09-09 08:54:03 -0700 message: Convert ChangeLog text to in-file comment diff: === modified file 'ChangeLog' --- ChangeLog 2013-09-09 07:34:15 +0000 +++ ChangeLog 2013-09-09 15:54:03 +0000 @@ -3,11 +3,6 @@ * configure.ac (LDFLAGS_NOCOMBRELOC): New variable. (LDFLAGS): Move nocombreloc option from here... (LD_SWITCH_SYSTEM_TEMACS): ... to here. - This is an essential option that should not be in LDFLAGS, - because the user may override that at build time; eg - http://bugs.debian.org/684788. temacs is the only thing - that actually needs this option; this is where it was orginally: - http://lists.gnu.org/archive/html/emacs-pretest-bug/2004-03/msg00170.html 2013-09-08 Glenn Morris === modified file 'configure.ac' --- configure.ac 2013-09-09 07:34:15 +0000 +++ configure.ac 2013-09-09 15:54:03 +0000 @@ -1026,7 +1026,16 @@ dnl Treat GCC specially since it just gives a non-fatal `unrecognized option' dnl if not built to support GNU ld. -late_LDFLAGS=$LDFLAGS +dnl For a long time, this was added to LDFLAGS rather than +dnl LD_SWITCH_SYSTEM_TEMACS. That is: i) inappropriate, since +dnl LDFLAGS is supposed to be a user option, and this flag is +dnl essential. It can leads to problems if the user overrides +dnl LDFLAGS at _build_ time (make LDFLAGS=... all), eg +dnl http://bugs.debian.org/684788. +dnl ii) unnecessary, since temacs is the only thing +dnl that actually needs this option - this is where it was orginally: +dnl http://lists.gnu.org/archive/html/emacs-pretest-bug/2004-03/msg00170.html +late_LDFLAGS="$LDFLAGS" if test x$GCC = xyes; then LDFLAGS_NOCOMBRELOC="-Wl,-znocombreloc" else @@ -1041,7 +1050,7 @@ LDFLAGS_NOCOMBRELOC= [AC_MSG_RESULT(no)]) -LDFLAGS=$late_LDFLAGS +LDFLAGS="$late_LDFLAGS" dnl The function dump-emacs will not be defined and temacs will do dnl (load "loadup") automatically unless told otherwise. ------------------------------------------------------------ revno: 114179 committer: Dmitry Antipov branch nick: trunk timestamp: Mon 2013-09-09 18:01:02 +0400 message: Do not populate pure Xism x_sync to other ports. * frame.h (x_sync): Move under HAVE_X_WINDOWS. * frame.c (other_visible_frames) [HAVE_X_WINDOWS]: Use as such. * nsfns.m, w32xfns.c (x_sync): Remove no-op. * w32term.h (x_sync): Remove prototype. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2013-09-09 12:15:45 +0000 +++ src/ChangeLog 2013-09-09 14:01:02 +0000 @@ -1,5 +1,13 @@ 2013-09-09 Dmitry Antipov + Do not populate pure Xism x_sync to other ports. + * frame.h (x_sync): Move under HAVE_X_WINDOWS. + * frame.c (other_visible_frames) [HAVE_X_WINDOWS]: Use as such. + * nsfns.m, w32xfns.c (x_sync): Remove no-op. + * w32term.h (x_sync): Remove prototype. + +2013-09-09 Dmitry Antipov + Cleanup frame flushing. * dispextern.h (struct redisplay_interface): Drop flush_display_optional because flush_display is enough === modified file 'src/frame.c' --- src/frame.c 2013-09-06 07:00:29 +0000 +++ src/frame.c 2013-09-09 14:01:02 +0000 @@ -1108,7 +1108,7 @@ /* Verify that we can still talk to the frame's X window, and note any recent change in visibility. */ -#ifdef HAVE_WINDOW_SYSTEM +#ifdef HAVE_X_WINDOWS if (FRAME_WINDOW_P (XFRAME (this))) x_sync (XFRAME (this)); #endif === modified file 'src/frame.h' --- src/frame.h 2013-09-09 12:15:45 +0000 +++ src/frame.h 2013-09-09 14:01:02 +0000 @@ -1243,7 +1243,6 @@ extern void set_frame_menubar (struct frame *f, bool first_time, bool deep_p); extern void x_set_window_size (struct frame *f, int change_grav, int cols, int rows); -extern void x_sync (struct frame *); extern Lisp_Object x_get_focus_frame (struct frame *); extern void x_set_mouse_position (struct frame *f, int h, int v); extern void x_set_mouse_pixel_position (struct frame *f, int pix_x, int pix_y); @@ -1269,7 +1268,8 @@ #if !defined USE_X_TOOLKIT extern char *x_get_resource_string (const char *, const char *); #endif -#endif +extern void x_sync (struct frame *); +#endif /* HAVE_X_WINDOWS */ extern void x_query_colors (struct frame *f, XColor *, int); extern void x_query_color (struct frame *f, XColor *); === modified file 'src/nsfns.m' --- src/nsfns.m 2013-08-13 08:58:15 +0000 +++ src/nsfns.m 2013-09-09 14:01:02 +0000 @@ -2231,15 +2231,6 @@ return nsfocus; } -void -x_sync (struct frame *f) -{ - /* XXX Not implemented XXX */ - return; -} - - - /* ========================================================================== Lisp definitions that, for whatever reason, we can't alias as 'ns-XXX'. === modified file 'src/w32term.h' --- src/w32term.h 2013-08-13 18:01:18 +0000 +++ src/w32term.h 2013-09-09 14:01:02 +0000 @@ -211,7 +211,6 @@ int cols, int rows); extern int x_display_pixel_height (struct w32_display_info *); extern int x_display_pixel_width (struct w32_display_info *); -extern void x_sync (struct frame *); extern Lisp_Object x_get_focus_frame (struct frame *); extern void x_set_mouse_position (struct frame *f, int h, int v); extern void x_set_mouse_pixel_position (struct frame *f, int pix_x, int pix_y); === modified file 'src/w32xfns.c' --- src/w32xfns.c 2013-08-03 03:29:03 +0000 +++ src/w32xfns.c 2013-09-09 14:01:02 +0000 @@ -333,9 +333,3 @@ } return retval; } - -/* x_sync is a no-op on W32. */ -void -x_sync (struct frame *f) -{ -} ------------------------------------------------------------ revno: 114178 committer: Dmitry Antipov branch nick: trunk timestamp: Mon 2013-09-09 16:15:45 +0400 message: Cleanup frame flushing. * dispextern.h (struct redisplay_interface): Drop flush_display_optional because flush_display is enough for X and flushing via RIF is just a no-op for others. * frame.h (flush_frame): New function. * dispnew.c (update_frame): * minibuf.c (read_minibuf): * xdisp.c (echo_area_display, redisplay_preserve_echo_area): Use it. * keyboard.c (detect_input_pending_run_timers): Do not flush all frames but selected one in redisplay_preserve_echo_area. * nsterm.m (ns_flush): Remove no-op. (ns_redisplay_interface): Adjust user. * w32term.h (x_flush): Remove no-op. (w32_redisplay_interface): Adjust user. * xterm.c (x_flush): Simplify because we do not flush all frames at once any more. Adjust comment. (x_redisplay_interface): Adjust user. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2013-09-07 00:20:56 +0000 +++ src/ChangeLog 2013-09-09 12:15:45 +0000 @@ -1,3 +1,24 @@ +2013-09-09 Dmitry Antipov + + Cleanup frame flushing. + * dispextern.h (struct redisplay_interface): Drop + flush_display_optional because flush_display is enough + for X and flushing via RIF is just a no-op for others. + * frame.h (flush_frame): New function. + * dispnew.c (update_frame): + * minibuf.c (read_minibuf): + * xdisp.c (echo_area_display, redisplay_preserve_echo_area): + Use it. + * keyboard.c (detect_input_pending_run_timers): Do not flush + all frames but selected one in redisplay_preserve_echo_area. + * nsterm.m (ns_flush): Remove no-op. + (ns_redisplay_interface): Adjust user. + * w32term.h (x_flush): Remove no-op. + (w32_redisplay_interface): Adjust user. + * xterm.c (x_flush): Simplify because we do not flush all + frames at once any more. Adjust comment. + (x_redisplay_interface): Adjust user. + 2013-09-07 Paul Eggert Port --without-x --enable-gcc-warnings to Fedora 19. === modified file 'src/dispextern.h' --- src/dispextern.h 2013-09-06 16:40:12 +0000 +++ src/dispextern.h 2013-09-09 12:15:45 +0000 @@ -2796,11 +2796,6 @@ /* Flush the display of frame F. For X, this is XFlush. */ void (*flush_display) (struct frame *f); - /* Flush the display of frame F if non-NULL. This is called - during redisplay, and should be NULL on systems which flush - automatically before reading input. */ - void (*flush_display_optional) (struct frame *f); - /* Clear the mouse highlight in window W, if there is any. */ void (*clear_window_mouse_face) (struct window *w); === modified file 'src/dispnew.c' --- src/dispnew.c 2013-09-06 07:00:29 +0000 +++ src/dispnew.c 2013-09-09 12:15:45 +0000 @@ -3068,7 +3068,7 @@ at least the fringes are not redrawn in a timely manner. ++kfs */ if (f->force_flush_display_p) { - FRAME_RIF (f)->flush_display (f); + flush_frame (f); f->force_flush_display_p = 0; } } === modified file 'src/frame.h' --- src/frame.h 2013-09-06 08:49:14 +0000 +++ src/frame.h 2013-09-09 12:15:45 +0000 @@ -1276,6 +1276,16 @@ #endif /* HAVE_WINDOW_SYSTEM */ + +FRAME_INLINE void +flush_frame (struct frame *f) +{ + struct redisplay_interface *rif = FRAME_RIF (f); + + if (rif && rif->flush_display) + rif->flush_display (f); +} + /*********************************************************************** Multimonitor data ***********************************************************************/ === modified file 'src/keyboard.c' --- src/keyboard.c 2013-09-05 06:25:12 +0000 +++ src/keyboard.c 2013-09-09 12:15:45 +0000 @@ -9873,20 +9873,7 @@ get_input_pending (READABLE_EVENTS_DO_TIMERS_NOW); if (old_timers_run != timers_run && do_display) - { - redisplay_preserve_echo_area (8); - /* The following fixes a bug when using lazy-lock with - lazy-lock-defer-on-the-fly set to t, i.e. when fontifying - from an idle timer function. The symptom of the bug is that - the cursor sometimes doesn't become visible until the next X - event is processed. --gerd. */ - { - Lisp_Object tail, frame; - FOR_EACH_FRAME (tail, frame) - if (FRAME_RIF (XFRAME (frame))) - FRAME_RIF (XFRAME (frame))->flush_display (XFRAME (frame)); - } - } + redisplay_preserve_echo_area (8); return input_pending; } === modified file 'src/minibuf.c' --- src/minibuf.c 2013-08-08 04:42:40 +0000 +++ src/minibuf.c 2013-09-09 12:15:45 +0000 @@ -672,12 +672,7 @@ XWINDOW (minibuf_window)->cursor.x = 0; XWINDOW (minibuf_window)->must_be_updated_p = 1; update_frame (XFRAME (selected_frame), 1, 1); - { - struct frame *f = XFRAME (XWINDOW (minibuf_window)->frame); - struct redisplay_interface *rif = FRAME_RIF (f); - if (rif && rif->flush_display) - rif->flush_display (f); - } + flush_frame (XFRAME (XWINDOW (minibuf_window)->frame)); } /* Make minibuffer contents into a string. */ === modified file 'src/nsterm.m' --- src/nsterm.m 2013-09-02 06:45:04 +0000 +++ src/nsterm.m 2013-09-09 12:15:45 +0000 @@ -801,18 +801,6 @@ NSTRACE (ns_update_end); } - -static void -ns_flush (struct frame *f) -/* -------------------------------------------------------------------------- - external (RIF) call - NS impl is no-op since currently we flush in ns_update_end and elsewhere - -------------------------------------------------------------------------- */ -{ - NSTRACE (ns_flush); -} - - static void ns_focus (struct frame *f, NSRect *r, int n) /* -------------------------------------------------------------------------- @@ -3963,8 +3951,7 @@ ns_after_update_window_line, ns_update_window_begin, ns_update_window_end, - ns_flush, - 0, /* flush_display_optional */ + 0, /* flush_display */ x_clear_window_mouse_face, x_get_glyph_overhangs, x_fix_overlapping_area, === modified file 'src/w32term.c' --- src/w32term.c 2013-09-02 06:45:04 +0000 +++ src/w32term.c 2013-09-09 12:15:45 +0000 @@ -6258,11 +6258,6 @@ return buffer; } -void -x_flush (struct frame * f) -{ /* Nothing to do */ } - - extern frame_parm_handler w32_frame_parm_handlers[]; static struct redisplay_interface w32_redisplay_interface = @@ -6276,8 +6271,7 @@ x_after_update_window_line, x_update_window_begin, x_update_window_end, - x_flush, - 0, /* flush_display_optional */ + 0, /* flush_display */ x_clear_window_mouse_face, x_get_glyph_overhangs, x_fix_overlapping_area, === modified file 'src/xdisp.c' --- src/xdisp.c 2013-09-06 16:40:12 +0000 +++ src/xdisp.c 2013-09-09 12:15:45 +0000 @@ -10859,7 +10859,7 @@ Can do with a display update of the echo area, unless we displayed some mode lines. */ update_single_window (w, 1); - FRAME_RIF (f)->flush_display (f); + flush_frame (f); } else update_frame (f, 1, 1); @@ -13645,9 +13645,7 @@ else redisplay_internal (); - if (FRAME_RIF (SELECTED_FRAME ()) != NULL - && FRAME_RIF (SELECTED_FRAME ())->flush_display_optional) - FRAME_RIF (SELECTED_FRAME ())->flush_display_optional (NULL); + flush_frame (SELECTED_FRAME ()); } === modified file 'src/xterm.c' --- src/xterm.c 2013-09-05 03:51:37 +0000 +++ src/xterm.c 2013-09-09 12:15:45 +0000 @@ -334,29 +334,19 @@ static void x_initialize (void); -/* Flush display of frame F, or of all frames if F is null. */ +/* Flush display of frame F. */ static void x_flush (struct frame *f) { + eassert (f && FRAME_X_P (f)); /* Don't call XFlush when it is not safe to redisplay; the X connection may be broken. */ if (!NILP (Vinhibit_redisplay)) return; block_input (); - if (f) - { - eassert (FRAME_X_P (f)); - XFlush (FRAME_X_DISPLAY (f)); - } - else - { - /* Flush all displays and so all frames on them. */ - struct x_display_info *xdi; - for (xdi = x_display_list; xdi; xdi = xdi->next) - XFlush (xdi->display); - } + XFlush (FRAME_X_DISPLAY (f)); unblock_input (); } @@ -7361,9 +7351,7 @@ #endif } -#ifndef XFlush XFlush (FRAME_X_DISPLAY (f)); -#endif } @@ -10384,11 +10372,6 @@ x_update_window_begin, x_update_window_end, x_flush, -#ifdef XFlush - x_flush, -#else - 0, /* flush_display_optional */ -#endif x_clear_window_mouse_face, x_get_glyph_overhangs, x_fix_overlapping_area, ------------------------------------------------------------ revno: 114177 committer: Glenn Morris branch nick: trunk timestamp: Mon 2013-09-09 06:17:42 -0400 message: Auto-commit of generated files. diff: === modified file 'autogen/Makefile.in' --- autogen/Makefile.in 2013-09-02 10:17:37 +0000 +++ autogen/Makefile.in 2013-09-09 10:17:42 +0000 @@ -677,7 +677,6 @@ GTK_CFLAGS = @GTK_CFLAGS@ GTK_LIBS = @GTK_LIBS@ GTK_OBJ = @GTK_OBJ@ -GZIP_INFO = @GZIP_INFO@ GZIP_PROG = @GZIP_PROG@ HAVE_ALPHASORT = @HAVE_ALPHASORT@ HAVE_ATOLL = @HAVE_ATOLL@ === modified file 'autogen/configure' --- autogen/configure 2013-09-07 10:17:39 +0000 +++ autogen/configure 2013-09-09 10:17:42 +0000 @@ -1442,7 +1442,6 @@ build_cpu build PROFILING_CFLAGS -GZIP_INFO cache_file am__untar am__tar @@ -1545,7 +1544,7 @@ with_zlib with_file_notification with_makeinfo -with_compress_info +with_compress_install with_pkg_config_prog with_gameuser with_gnustep_conf @@ -2278,7 +2277,9 @@ use a file notification library (LIB one of: yes, gfile, inotify, w32, no) --without-makeinfo don't require makeinfo for building manuals - --without-compress-info don't compress the installed Info pages + --without-compress-install + don't compress some files (.el, .info, etc.) when + installing. Equivalent to: make GZIP_PROG= install --with-pkg-config-prog=FILENAME file name of pkg-config for finding GTK and librsvg --with-gameuser=USER user for shared game score files @@ -4429,17 +4430,11 @@ ## This is an option because I do not know if all info/man support ## compressed files, nor how to test if they do so. -# Check whether --with-compress-info was given. -if test "${with_compress_info+set}" = set; then : - withval=$with_compress_info; -else - with_compress_info=$with_features -fi - -if test $with_compress_info = yes; then - GZIP_INFO=yes -else - GZIP_INFO= +# Check whether --with-compress-install was given. +if test "${with_compress_install+set}" = set; then : + withval=$with_compress_install; +else + with_compress_install=$with_features fi @@ -8618,6 +8613,9 @@ +test $with_compress_install != yes && test -n "$GZIP_PROG" && \ + GZIP_PROG=" # $GZIP_PROG # (disabled by configure --without-compress-install)" + if test $opsys = gnu-linux; then # Extract the first word of "paxctl", so it can be a program name with args. set dummy paxctl; ac_word=$2 @@ -8783,11 +8781,13 @@ late_LDFLAGS=$LDFLAGS if test x$GCC = xyes; then - LDFLAGS="$LDFLAGS -Wl,-znocombreloc" + LDFLAGS_NOCOMBRELOC="-Wl,-znocombreloc" else - LDFLAGS="$LDFLAGS -znocombreloc" + LDFLAGS_NOCOMBRELOC="-znocombreloc" fi +LDFLAGS="$LDFLAGS $LDFLAGS_NOCOMBRELOC" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -znocombreloc" >&5 $as_echo_n "checking for -znocombreloc... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -8805,13 +8805,14 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else - LDFLAGS=$late_LDFLAGS + LDFLAGS_NOCOMBRELOC= { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext +LDFLAGS=$late_LDFLAGS test "x$CANNOT_DUMP" = "x" && CANNOT_DUMP=no case "$opsys" in @@ -29051,6 +29052,8 @@ esac fi +LD_SWITCH_SYSTEM_TEMACS="$LDFLAGS_NOCOMBRELOC $LD_SWITCH_SYSTEM_TEMACS" + ## MinGW-specific post-link processing of temacs. ------------------------------------------------------------ revno: 114176 committer: Glenn Morris branch nick: trunk timestamp: Mon 2013-09-09 00:34:15 -0700 message: Fix treatment of ld's nocombreloc option * configure.ac (LDFLAGS_NOCOMBRELOC): New variable. (LDFLAGS): Move nocombreloc option from here... (LD_SWITCH_SYSTEM_TEMACS): ... to here. This is an essential option that should not be in LDFLAGS, because the user may override that at build time; eg http://bugs.debian.org/684788. temacs is the only thing that actually needs this option; this is where it was orginally: http://lists.gnu.org/archive/html/emacs-pretest-bug/2004-03/msg00170.html diff: === modified file 'ChangeLog' --- ChangeLog 2013-09-08 23:50:23 +0000 +++ ChangeLog 2013-09-09 07:34:15 +0000 @@ -1,3 +1,14 @@ +2013-09-09 Glenn Morris + + * configure.ac (LDFLAGS_NOCOMBRELOC): New variable. + (LDFLAGS): Move nocombreloc option from here... + (LD_SWITCH_SYSTEM_TEMACS): ... to here. + This is an essential option that should not be in LDFLAGS, + because the user may override that at build time; eg + http://bugs.debian.org/684788. temacs is the only thing + that actually needs this option; this is where it was orginally: + http://lists.gnu.org/archive/html/emacs-pretest-bug/2004-03/msg00170.html + 2013-09-08 Glenn Morris * configure.ac (--without-compress-install): === modified file 'configure.ac' --- configure.ac 2013-09-09 00:10:58 +0000 +++ configure.ac 2013-09-09 07:34:15 +0000 @@ -1028,17 +1028,20 @@ late_LDFLAGS=$LDFLAGS if test x$GCC = xyes; then - LDFLAGS="$LDFLAGS -Wl,-znocombreloc" + LDFLAGS_NOCOMBRELOC="-Wl,-znocombreloc" else - LDFLAGS="$LDFLAGS -znocombreloc" + LDFLAGS_NOCOMBRELOC="-znocombreloc" fi +LDFLAGS="$LDFLAGS $LDFLAGS_NOCOMBRELOC" + AC_MSG_CHECKING([for -znocombreloc]) AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], [AC_MSG_RESULT(yes)], - LDFLAGS=$late_LDFLAGS + LDFLAGS_NOCOMBRELOC= [AC_MSG_RESULT(no)]) +LDFLAGS=$late_LDFLAGS dnl The function dump-emacs will not be defined and temacs will do dnl (load "loadup") automatically unless told otherwise. @@ -4740,6 +4743,8 @@ esac fi +LD_SWITCH_SYSTEM_TEMACS="$LDFLAGS_NOCOMBRELOC $LD_SWITCH_SYSTEM_TEMACS" + AC_SUBST(LD_SWITCH_SYSTEM_TEMACS) ## MinGW-specific post-link processing of temacs. ------------------------------------------------------------ revno: 114175 committer: Glenn Morris branch nick: trunk timestamp: Sun 2013-09-08 17:10:58 -0700 message: * configure.ac: Tweak previous change. Only disable GZIP_PROG if there is something to disable. diff: === modified file 'configure.ac' --- configure.ac 2013-09-08 23:50:23 +0000 +++ configure.ac 2013-09-09 00:10:58 +0000 @@ -946,7 +946,7 @@ dnl Don't use GZIP, which is used by gzip for additional parameters. AC_PATH_PROG(GZIP_PROG, gzip) -test $with_compress_install != yes && \ +test $with_compress_install != yes && test -n "$GZIP_PROG" && \ GZIP_PROG=" # $GZIP_PROG # (disabled by configure --without-compress-install)" if test $opsys = gnu-linux; then