summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Do not ask for XRender extension each time XFT font is opened.Dmitry Antipov2014-06-163-17/+31
| | | | | * xftfont.c (xftfont_open): Move call to XRenderQueryExtension ... * xterm.c (x_term_init) [HAVE_XFT]: ... to here. Adjust comment.
* Use `make -C' rather than `cd && make'Glenn Morris2014-06-142-14/+17
| | | | | | | | | | | | * Makefile.in: Use `make -C' rather than `cd && make' throughout. * lib-src/Makefile.in (../lib/libgnu.a): Use `make -C' rather than `cd && make'. * lisp/Makefile.in (leim, semantic): Use `make -C' rather than `cd && make'. * lwlib/Makefile.in ($(globals_h)): Use `make -C' rather than `cd && make'. * src/Makefile.in: Use `make -C' rather than `cd && make' throughout.
* Merge from emacs-24; up to 2014-06-03T06:51:18Z!eliz@gnu.orgGlenn Morris2014-06-143-6/+85
|\
| * Fix bug #17777 with keyboard macros and visual-order cursor movement.Eli Zaretskii2014-06-142-0/+8
| | | | | | | | | | | | | | src/xdisp.c (Fmove_point_visually): Don't use the glyph matrix information if we are in the middle of executing a keyboard macro, since redisplay doesn't update the screen until the macro is finished.
| * src/xdisp.c: Enhance commentary.Eli Zaretskii2014-06-141-3/+64
| |
| * Attempt to fix bug #17771 with segfault if "C-h h" is interrupted.Eli Zaretskii2014-06-132-3/+15
| | | | | | | | | | src/alloc.c (cleanup_vector): Don't dereference a font driver pointer if it is NULL.
* | With GNU make, MFLAGS is not neededGlenn Morris2014-06-132-14/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Makefile.in (CC, CFLAGS, LDFLAGS, CPPFLAGS, abs_top_srcdir): Remove, no longer used. (lib, lib-src, lisp, nt, src, blessmail, install-arch-dep) (install-nt, install-strip, uninstall, uninstall-nt) (mostlyclean, clean, distclean, bootstrap-clean) (maintainer-clean, extraclean, TAGS, tags, check, $(DOCS)): ($(INSTALL_DOC), $(UNINSTALL_DOC), info, bootstrap, check-declare): GNU make automatically passes command-line arguments to sub-makes. * admin/unidata/Makefile.in (${DSTDIR}/charprop.el): GNU make automatically passes command-line arguments to sub-makes. * lib-src/Makefile.in (../lib/libgnu.a): GNU make automatically passes command-line arguments to sub-makes. * lisp/Makefile.in ($(lisp)/cus-load.el, $(lisp)/finder-inf.el) (autoloads, $(lisp)/subdirs.el, compile-main, leim, semantic, compile) (compile-always): GNU make automatically passes command-line arguments to sub-makes. * lwlib/Makefile.in ($(globals_h)): GNU make automatically passes command-line arguments to sub-makes. * src/Makefile.in ($(leimdir)/leim-list.el, $(srcdir)/macuvs.h) ($(lispsource)/international/charprop.el) ($(libsrc)/make-docfile$(EXEEXT), $(lwlibdir)/liblw.a) ($(oldXMenudir)/libXMenu11.a, ns-app, .el.elc) ($(lispsource)/loaddefs.el, bootstrap-emacs$(EXEEXT)): GNU make automatically passes command-line arguments to sub-makes. * test/automated/Makefile.in (compile-main): GNU make automatically passes command-line arguments to sub-makes.
* | Avoid hangs in accept-process-output.Paul Eggert2014-06-133-62/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | * lisp.h, process.c (wait_reading_process_input): Return int, not bool. All uses changed. * process.c (SELECT_CANT_DO_WRITE_MASK): Remove macro, replacing with ... (SELECT_CAN_DO_WRITE_MASK): ... new constant, with inverted sense. All uses changed. (status_notify): New arg WAIT_PROC. Return int, not void. All uses changed. Fixes: debbugs:17647
* | Don't try to display menus and dialogs in an 'initial' frame.Eli Zaretskii2014-06-132-3/+13
| | | | | | | | | | | | | | src/menu.c (Fx_popup_menu): Don't call the frame's menu_show_hook if the frame is the initial frame, because the hook is not set up then, and Emacs crashes. Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
* | * src/keymap.c (silly_event_symbol_error): Don't recommend the use of strings.Stefan Monnier2014-06-122-6/+9
| |
* | Merge from emacs-24; up to 2014-06-02T14:17:07Z!michael.albinus@gmx.deGlenn Morris2014-06-112-3/+9
|\ \ | |/
| * Fix bug #17744 with cursor motion near overlay string with 'cursor' prop.Eli Zaretskii2014-06-112-3/+9
| | | | | | | | | | | | src/xdisp.c (set_cursor_from_row): Fix an off-by-one error when matching overlay strings with 'cursor' property against buffer positions traversed in the glyph row.
* | Fix memory leaksJan Djärv2014-06-114-22/+43
| | | | | | | | | | | | | | | | | | | | | | | | * macfont.m (macfont_draw): positions where not freed. * nsterm.h (EmacsApp): Always compile in shouldKeepRunning, isFirst on Cocoa. * nsterm.m (run): Always compile for Cocoa. Use runtime check to determine 10.9. Fixes: debbugs:17751
* | Spelling fix.Paul Eggert2014-06-111-7/+7
| |
* | * frame.h (window_system_available) [!HAVE_WINDOW_SYSTEM]: Always false.Dmitry Antipov2014-06-103-9/+11
| | | | | | | | * frame.c (window_system_available) [HAVE_WINDOW_SYSTEM]: Now here.
* | * dispextern.h (last_tool_bar_item): Remove declaration.Dmitry Antipov2014-06-107-21/+30
| | | | | | | | | | | | | | | | | | * frame.h (struct frame): New member last_tool_bar_item. * frame.c (make_frame): Initialize it. * xdisp.c (toplevel): Remove last_tool_bar_item. (handle_tool_bar_click, note_tool_bar_highlight): * w32term.c (w32_read_socket, w32_initialize): * xterm.c (handle_one_xevent, x_initialize): Adjust users.
* | * dispextern.h (struct face) [HAVE_XFT]: Ifdef 'extra' member.Dmitry Antipov2014-06-107-18/+20
| | | | | | | | | | | | | | | | | | | | * font.c (font_done_for_face): * xface.c (realize_non_ascii_face): Adjust user. * font.h (struct font_driver): Convert 'prepare_face' to return void because its return value is never used anyway. * xfont.c (xfont_prepare_face): Return void. * xftfont.c (xftfont_prepare_face): Likewise. Use xmalloc. (xftfont_done_face): Use xfree.
* | * dispextern.h (PREPARE_FACE_FOR_DISPLAY): Remove as a duplicate of ...Dmitry Antipov2014-06-107-27/+26
| | | | | | | | | | | | * xfaces.c (prepare_face_for_display) [HAVE_WINDOW_SYSTEM]: ... this function. Also adjust comment. * fringe.c, w32term.c, xdisp.c, xterm.c: All users changed.
* | Say (accept-process-output P)'s result pertains to P if P is non-nil.Paul Eggert2014-06-092-13/+19
| | | | | | | | | | | | | | * doc/lispref/processes.texi (Accepting Output): * src/process.c (Faccept_process_output) (wait_reading_process_output): Mention that if PROCESS is non-nil, the return value is about PROCESS, not about other processes.
* | Further adjustments to mark_object and friends.Dmitry Antipov2014-06-092-22/+40
| | | | | | | | | | | | | | Now the mark_object's stack is just 32 bytes on a 64-bit system, which means extra 20% off the stack usage. * alloc.c (mark_save_value): As before, refactored out from ... (mark_object): ... adjusted user. Also add comment.
* | Fix core dump after a dropped X connection.Paul Eggert2014-06-092-1/+9
| | | | | | | | | | | | | | * sysdep.c (stuff_char): Don't abort merely because the selected frame is dead, as we may be shutting down. Fixes: debbugs:17704
* | Merge from emacs-24; up to 2014-06-02T11:35:40Z!michael.albinus@gmx.deGlenn Morris2014-06-083-7/+11
|\ \ | |/
| * * src/fileio.c (write-region-inhibit-fsync): Doc tweak.Glenn Morris2014-06-072-1/+3
| |
| * Doc tweaks re < etcGlenn Morris2014-06-072-6/+8
| | | | | | | | | | | | * doc/lispref/numbers.texi (Comparison of Numbers): Copyedits. * src/data.c (Flss, Fgtr, Fleq, Fgeq): Doc tweaks.
* | If a C name must be extern on some platforms, make it extern on all.Paul Eggert2014-06-0819-69/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * dispextern.h (set_vertical_scroll_bar, erase_phys_cursor) (load_color): * font.h (ftxfont_driver) [HAVE_XFT]: * keyboard.h (menu_items_inuse, ignore_mouse_drag_p, make_ctrl_char): * lisp.h (get_frame_param): * menu.h (tty_menu_show): * process.h (conv_sockaddr_to_lisp, catch_child_signal): * termhooks.h (encode_terminal_code): * xterm.h (x_menu_wait_for_event): Always declare. * frame.c (get_frame_param): * fringe.c (max_used_fringe_bitmap): * ftxfont.c (ftxfont_driver): * keyboard.c (ignore_mouse_drag_p, make_ctrl_char): * menu.c (menu_items_inuse): * process.c (conv_sockaddr_to_lisp, catch_child_signal): * term.c (encode_terminal_code, tty_menu_show): * xdisp.c (set_vertical_scroll_bar, erase_phys_cursor): * xfaces.c (load_color): * xmenu.c (x_menu_wait_for_event): Now always extern.
* | Change object marking routines to minimize stack usage.Dmitry Antipov2014-06-082-39/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This change moves a few cold paths from mark_object to NO_INLINE functions and adjusts symbol marking loop. According to GCC 4.8.2 -Wstack-usage, this reduces mark_object's stack usage from 80 to 48 bytes on a 64-bit system. For a long byte-force-recompile runs, stack usage at the mark phase is reduced up to 28%. Surprisingly, it also gains up to 3% in speed (with default '-O2 -g3' flags). * alloc.c (mark_compiled, mark_localized_symbol): New functions, refactored out from ... (mark_object): ... adjusted user. Also mark symbols in a tight inner loop. (mark_face_cache): Add NO_INLINE.
* | Merge from emacs-24; up to 2014-06-01T23:37:59Z!eggert@cs.ucla.eduGlenn Morris2014-06-076-23/+69
|\ \ | |/
| * Fix infloop of -nw session at exit on MS-Windows under a debugger.Eli Zaretskii2014-06-042-1/+5
| | | | | | | | | | | | src/sysdep.c (reset_sys_modes): Use cursorX, not curX, as the latter contains garbage on WINDOWSNT (which could potentially infloop at exit).
| * Attempt to solve bug #17497 by minimizing cursor motion during TTY menu updates.Eli Zaretskii2014-06-044-18/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | src/term.c (tty_menu_display): Don't position cursor here. Instead, pass the cursor coordinates to update_frame_with_menu. (tty_menu_activate): Send the hide cursor command only once in an iteration through the outer 'while' loop. src/dispnew.c (update_frame_1): Accept an additional argument SET_CURSOR_P, and position the cursor at the end of the frame update only if that argument is non-zero. All callers changed to provide the additional argument as non-zero, except for update_frame_with_menu. (update_frame_with_menu): Accept 2 additional arguments ROW and COL; if they are non-negative, instruct update_frame_1 not to position the cursor, and instead position it according to ROW and COL. src/dispextern.h (update_frame_with_menu): Update prototype.
| * * src/callproc.c (call_process): Don't check read-only if we don't insertStefan Monnier2014-06-022-2/+10
| | | | | | | | | | | | anything. Fixes: debbugs:17666
| * src/dispnew.c (update_frame_with_menu): Set display_completed.Eli Zaretskii2014-06-022-2/+5
| |
* | Fix last commit.Eli Zaretskii2014-06-073-1/+10
| | | | | | | | | | | | src/term.c (tty_menu_show) [WINDOWSNT]: Make tty_menu_show extern only for WINDOWSNT. src/menu.h (tty_menu_show) [WINDOWSNT]: Declare extern only for WINDOWSNT.
* | * term.c (tty_menu_show) [!HAVE_NTGUI]: Now static.Paul Eggert2014-06-063-3/+11
| | | | | | | | * menu.h (tty_menu_show) [!HAVE_NTGUI]: Omit extern decl.
* | * src/window.c (Frecenter): Signal an error if window-buffer is notStefan Monnier2014-06-062-13/+15
| | | | | | | | current-buffer.
* | * lisp/mouse.el (mouse-posn-property): Ignore buffer position info when theStefan Monnier2014-06-052-9/+10
| | | | | | | | | | | | even happened elsewhere. * src/keyboard.c (make_lispy_position): Don't include a buffer position in mode/header-line mouse events.
* | * src/keyboard.c (read_char): Handle (t . <event>) in the second use ofStefan Monnier2014-06-052-32/+35
| | | | | | | | | | | | Vunread_command_events. Fixes: debbugs:17650
* | * xterm.c (x_setup_pointer_blanking): ConditionallyDmitry Antipov2014-06-062-1/+8
| | | | | | | | probe Xfixes until this stuff is stabilized (Bug#17609).
* | * configure.ac (POLL_FOR_INPUT): Define with HAVE_WINDOW_SYSTEM.Dmitry Antipov2014-06-053-12/+5
| | | | | | | | | | | | * nt/inc/ms-w32.h (POLL_FOR_INPUT): Likewise. * src/keyboard.c, src/process.c: Do not define POLL_FOR_INPUT here because it will be defined in generated config.h if needed.
* | src/menu.c (Fx_popup_dialog): Comment the use of Qunsupported__w32_dialog.Eli Zaretskii2014-06-041-4/+7
| |
* | Use terminal-specific hooks to display popup dialogs.Dmitry Antipov2014-06-048-98/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | * termhooks.h (struct terminal): New field popup_dialog_hook. * menu.c (emulate_dialog_with_menu): New function, refactored from ... (Fx_popup_dialog): ... adjusted user. Also remove old #if 0 code and use popup_dialog_hook. * nsmenu.m (ns_popup_dialog): Make hook-compatible. * nsterm.h (ns_popup_dialog): Adjust prototype. * nsterm.m (ns_create_terminal): * w32term.c (w32_create_terminal): * xterm.c (x_create_terminal) [USE_X_TOOLKIT || USE_GTK]: Setup popup_dialog_hook.
* | Fix last commit.Eli Zaretskii2014-06-041-1/+2
| |
* | Improve dumped memory report on MS-Windows.Eli Zaretskii2014-06-042-3/+18
| | | | | | | | | | src/w32heap.c (report_temacs_memory_usage): Improve the report by reporting the large blocks that are actually occupied at dump time.
* | Fix TTY menus on MS-Windows broken by last commit.Eli Zaretskii2014-06-042-1/+8
| | | | | | | | | | src/w32console.c (initialize_w32_display): Set the console menu_show_hook, otherwise TTY menus on w32 crash and burn.
* | Use terminal-specific hooks to display menus.Dmitry Antipov2014-06-0412-86/+104
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * termhooks.h (struct terminal): New field menu_show_hook. * menu.h (<anonymous enum>): Bit flags for menu hooks. (x_menu_show, w32_menu_show, ns_menu_show, tty_menu_show): Adjust prototypes. * menu.c (Fx_popup_menu): Use bit flags and menu_show_hook. * nsmenu.m (ns_menu_show): * w32menu.c (w32_menu_show): * xmenu.c (x_menu_show): * term.c (tty_menu_show): Adjust to use bit flags. (set_tty_hooks): Set menu_show_hook. * xterm.c (x_create_terminal): * nsterm.m (ns_create_terminal): * msdos.c (initialize_msdos_display): * w32term.c (w32_create_terminal): Likewise.
* | src/w32heap.c (DUMPED_HEAP_SIZE) [!_WIN64]: Reduce to 11 MB.Juanma Barranquero2014-06-042-1/+5
| |
* | Fix the MS-Windows build broken by few last commits.Eli Zaretskii2014-06-042-0/+8
| | | | | | | | | | src/sysselect.h (fd_CLR, fd_ISSET, fd_SET, FD_CLR, FD_ISSET) (FD_SET): Don't define on WINDOWSNT.
* | * emacs.c: Include "sysselect.h", to define its inline functions.Paul Eggert2014-06-032-0/+5
| | | | | | | | | | Problem reported by Glenn Morris in: http://lists.gnu.org/archive/html/emacs-devel/2014-06/msg00077.html
* | Do not require libXt-devel when building with gtk.Paul Eggert2014-06-034-46/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * lwlib/lwlib-widget.h: New file, with contents taken from lwlib.h. (widget_value) [HAVE_NTGUI]: New member 'title'. * lwlib/lwlib.h: Include lwlib-widget.h. (change_type, enum button_type, widget_value): Move to lwlib-widget.h. * src/gtkutil.h, src/menu.h: Include lwlib-widget.h, not lwlib-h, to avoid dependency on libXt-devel. * src/menu.h [HAVE_NTGUI]: Include lwlib-widget.h in this case too. (enum button_type, widget_value) [HAVE_NTGUI]: Remove, as lwlib-widget.h now does this. * src/nsmenu.m (ns_menu_show): "enabled" -> "enable" to fix typo.
* | If ENABLE_CHECKING, range-check args of FD_CLR, FD_ISSET, FD_SET.Paul Eggert2014-06-033-6/+50
| | | | | | | | | | | | | | | | | | | | * process.c (add_read_fd, delete_read_fd, add_write_fd) (delete_write_fd, wait_reading_process_output): Remove now-redundant easserts. * sysselect.h (SYSSELECT_H): New macro, to avoid double-inclusion woes. Use INLINE_HEADER_BEGIN, INLINE_HEADER_END. (fd_CLR, fd_ISSET, fd_SET): New inline functions. (FD_CLR, FD_ISSET, FD_SET): Redefine in terms of these functions.
* | More minor cleanups in src/w32heap.c.Eli Zaretskii2014-06-032-5/+6
| | | | | | | | | | src/w32heap.c (calloc): Don't undef, it is never defined. (HEAP_ENTRY_SHIFT): Remove unused macro.