- 08 Oct, 2013 7 commits
-
-
Paul Eggert authored
* dispnew.c (save_current_matrix): Omit unnecessary casts. * dispnew.c (update_frame_with_menu): Mark debug local as used. * keyboard.c, keyboard.h (Qmouse_movement): Now static. * keyboard.c (read_menu_command): Remove unused local. * lisp.h (read_menu_command): New decl. * menu.c, menu.h (menu_item_width): Arg is now unsigned char *, for benefit of STRING_CHAR_AND_LENGTH. All uses changed. Return ptrdiff_t, not int. * term.c (tty_menu_struct): 'allocated' member is now ptrdiff_t, not int, for benefit of xpalloc. (tty_menu_create, tty_menu_make_room): Simplify by using xzalloc and xpalloc. (have_menus_p): Remove; unused. (tty_menu_add_pane, tty_menu_add_selection): Change signedness of local char * pointer to pacify STRING_CHAR_AND_LENGTH. (tty_menu_add_selection, tty_menu_locate, tty_meny_destroy): Now static. (save_and_enable_current_matrix): Omit unnecessary casts. (read_menu_input): Omit local extern decl (now in lisp.h). Don't access uninitialized storage if mouse_get_xy fails. (tty_menu_activate): Mark local as initialized, for lint. (tty_menu_activate, tty_meny_show): Remove unused locals.
-
Dmitry Antipov authored
(redraw_frame, update_frame): Adjust users. * dispextern.h (set_window_update_flags): Adjust prototype. * xdisp.c (redisplay_internal): When updating all frames with zero windows_or_buffers_changed, assume that only the windows that shows current buffer should be really updated.
-
Dmitry Antipov authored
for file I/O, thus reducing an enormous memory usage for large buffers. See http://lists.gnu.org/archive/html/emacs-devel/2013-10/msg00180.html. * coding.h (struct coding_system): New member raw_destination. * coding.c (setup_coding_system): Initialize it to zero. (encode_coding_object): If raw_destination is set, do not create dst_object. Add comment. * fileio.c (toplevel): New constant E_WRITE_MAX. (e_write): Do not encode more than E_WRITE_MAX characters per one loop iteration. Use raw_destination if E_WRITE_MAX characters is encoded.
-
Jan Djärv authored
(toggleFullScreen:): Change NS_IMPL_COCOA to HAVE_NATIVE_FS.
-
Paul Eggert authored
-
Paul Eggert authored
* keyboard.c (unblock_input_to): Don't process pending signals if a fatal error is in progress. Fixes: debbugs:15534
-
Paul Eggert authored
All uses of 'size_t' and 'SIZE_MAX' changed to use them, when they're talking about words in Lisp bool vectors. (BITS_PER_BITS_WORD): Rename from BITS_PER_SIZE_T. All uses changed.
-
- 07 Oct, 2013 6 commits
-
-
Paul Eggert authored
Do this by using the Gnulib modules for this. This should generate faster code on non-GCC, non-MSC platforms, and make the code a bit more portable, at least in theory. * admin/merge-gnulib (GNULIB_MODULES): Add count-one-bits and count-trailing-zeros. * lib/count-one-bits.c, lib/count-one-bits.h: * lib/count-trailing-zeros.c, lib/count-trailing-zeros.h: * m4/count-one-bits.m4, m4/count-trailing-zeros.m4: New files, copied from gnulib. * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate. * nt/gnulib.mk: Merge changes from lib/gnulib.mk. * src/data.c: Include <count-one-bits.h>, <count-trailing-zeros.h>. (USE_MSC_POPCOUNT, POPCOUNT_STATIC_INLINE) (NEED_GENERIC_POPCOUNT, popcount_size_t_generic) (popcount_size_t_msc, popcount_size_t_gcc): Remove; now done by Gnulib. (popcount_size_t): Now a macro that defers to Gnulib. (count_trailing_zero_bits): Return int, for consistency with Gnulib and because Emacs prefers signed to unsigned int. Don't assume that size_t is either unsigned int or unsigned long or unsigned long long. (size_t_to_host_endian): Do not assume that size_t is either exactly 32 or exactly 64 bits wide. * src/lisp.h (BITS_PER_SIZE_T): Define consistently with BITS_PER_LONG etc., so that it's now an enum constant, not a macro. No need to assume that it's either 32 or 64. Fixes: debbugs:15550
-
Jan Djärv authored
on >= 10.7.
-
Dmitry Antipov authored
Use bool for boolean.
-
Dmitry Antipov authored
-
Paul Eggert authored
* alloc.c (valid_pointer_p) [!WINDOWSNT]: Remove now-unnecessary cast. * sysdep.c (emacs_read, emacs_write, emacs_write_sig): Buffer arg is now void *, not char *. This matches plain 'read' and 'write' better, and avoids a constraint violation on Solaris 9 with Oracle Studio.
-
Dmitry Antipov authored
memset to explicit loop. Otherwise copy largest possible chunk from initialized to uninitialized part, thus allowing the longer memcpy runs and reducing the number of loop iterations.
-
- 06 Oct, 2013 2 commits
- 05 Oct, 2013 2 commits
-
-
Xue Fuqiao authored
-
Jan Djärv authored
-
- 04 Oct, 2013 3 commits
-
-
Dmitry Antipov authored
uses find_newline instead of scan_newline and so doesn't move point.
-
Paul Eggert authored
On Fedora 19 x86-64, the new bswap_64 needs 1 instruction, whereas the old swap64 needed 30. * admin/merge-gnulib (GNULIB_MODULES): Add byteswap. * lib/byteswap.in.h, m4/byteswap.m4: New files, copied from Gnulib. * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate. * src/fringe.c (init_fringe_bitmap) [WORDS_BIGENDIAN]: * src/sound.c (le2hl, le2hs, be2hl) [!WINDOWSNT]: Use byteswap.h's macros to swap bytes. * src/lisp.h (swap16, swap32, swap64): Remove. All uses replaced by bswap_16, bswap_32, bswap_64.
-
Paul Eggert authored
to work around local variables getting clobbered by longjmp. Port to pre-C99, which doesn't allow decls after stmts.
-
- 03 Oct, 2013 6 commits
-
-
Paul Eggert authored
In other words, take on the behavior of eassert_and_assume. This makes Emacs 0.2% smaller on my platform (Fedora 19, x86-64). (eassert_and_assume): Remove. All uses replaced by eassert.
-
Paul Eggert authored
-
Paul Eggert authored
* src/conf_post.h (__has_builtin, assume): Remove; gnulib now does these. * src/lisp.h: Include <verify.h>, for 'assume'. This also incorpoprates: 2013-10-02 verify: new macro 'assume' 2013-09-26 dup2, dup3: work around another cygwin crasher 2013-09-26 getdtablesize: work around cygwin issue
-
Paul Eggert authored
(internal_catch, internal_condition_case) (internal_condition_case_1, internal_condition_case_2) (internal_condition_case_n): Use it instead of eassert when the argument contains locals clobbered by longjmp. Don't use clobbered locals outside of clobbered_eassert. (internal_lisp_condition_case): Use a volatile variable to work around a local variable's getting clobbered.
-
Stefan Monnier authored
* lisp/emacs-lisp/byte-opt.el (byte-optimize-form-code-walker): Optimize under `condition-case' and `catch' if byte-compile--use-old-handlers is nil. (disassemble-offset): Handle new bytecodes. * lisp/emacs-lisp/bytecomp.el (byte-pushcatch, byte-pushconditioncase) (byte-pophandler): New byte codes. (byte-goto-ops): Adjust accordingly. (byte-compile--use-old-handlers): New var. (byte-compile-catch): Use new byte codes depending on byte-compile--use-old-handlers. (byte-compile-condition-case--old): Rename from byte-compile-condition-case. (byte-compile-condition-case--new): New function. (byte-compile-condition-case): New function that dispatches depending on byte-compile--use-old-handlers. (byte-compile-unwind-protect): Pass a function to byte-unwind-protect when we can. * lisp/emacs-lisp/cconv.el (cconv-convert, cconv-analyse-form): Adjust for the new compilation scheme using the new byte-codes. * src/alloc.c (Fgarbage_collect): Merge scans of handlerlist and catchlist, and make them unconditional now that they're heap-allocated. * src/bytecode.c (BYTE_CODES): Add Bpushcatch, Bpushconditioncase and Bpophandler. (bcall0): New function. (exec_byte_code): Add corresponding cases. Improve error message when encountering an invalid byte-code. Let Bunwind_protect accept a function (rather than a list of expressions) as argument. * src/eval.c (catchlist): Remove (merge with handlerlist). (handlerlist, lisp_eval_depth): Not static any more. (internal_catch, internal_condition_case, internal_condition_case_1) (internal_condition_case_2, internal_condition_case_n): Use PUSH_HANDLER. (unwind_to_catch, Fthrow, Fsignal): Adjust to merged handlerlist/catchlist. (internal_lisp_condition_case): Use PUSH_HANDLER. Adjust to new handlerlist which can only handle a single condition-case handler at a time. (find_handler_clause): Simplify since we only a single branch here any more. * src/lisp.h (struct handler): Merge struct handler and struct catchtag. (PUSH_HANDLER): New macro. (catchlist): Remove. (handlerlist): Always declare.
-
Stefan Monnier authored
instead of the docstring to discourage use of the `restriction' arg. (error): Use `declare'. * src/charset.c (Fdecode_char, Fencode_char): Remove description of `restriction' arg. now that it's hidden by advertised-calling-convention.
-
- 02 Oct, 2013 5 commits
-
-
Jan Djärv authored
-
Dmitry Antipov authored
(FRAME_HAS_MINIBUF_P): ...this macro can be implemented without it. * frame.c (make_frame, make_minibuffer_frame): Adjust users.
-
Dmitry Antipov authored
for phys_cursor_type member. Move the latter, phys_cursor_width, phys_cursor_ascent and phys_cursor_height under HAVE_WINDOW_SYSTEM. * window.c (replace_window, make_window): Adjust users.
-
Dmitry Antipov authored
this module is never compiled otherwise.
-
Alp Aker authored
(Bug#15500).
-
- 29 Sep, 2013 4 commits
-
-
Eli Zaretskii authored
src/xdisp.c (get_next_display_element): Don't call face_for_font in a build configured --without-x.
-
Jan Djärv authored
-
Jan Djärv authored
condition. Fixes: debbugs:15475
-
Andreas Politz authored
* frame.c (delete_frame): Record selected frame only after calling Qdelete_frame_functions (Bug#15477).
-
- 28 Sep, 2013 2 commits
-
-
Jan Djärv authored
* lisp/faces.el (region): Change ns_selection_color to ns_selection_fg_color, add ns_selection_bg_color. * src/nsterm.h (NS_SELECTION_BG_COLOR_DEFAULT): Renamed from NS_SELECTION_COLOR_DEFAULT. (NS_SELECTION_FG_COLOR_DEFAULT): New. * src/nsterm.m (ns_selection_color): Remove. (ns_get_color): Check for ns_selection_(fg|bg)_color using NSColor selectedText(Background)Color. Only for COCOA. (ns_term_init): Remove assignment of ns_selection_color, logic moved to ns_get_color.
-
Eli Zaretskii authored
src/xdisp.c (Fdump_tool_bar_row): Ifdef away the body if 'struct frame' does not have the tool_bar_window member.
-
- 26 Sep, 2013 1 commit
-
-
Barry O'Reilly authored
* lread.c (read1): signal error * alloc.c (make_byte_code): eassert header size (sweep_vectors): change an int to size_t
-
- 24 Sep, 2013 2 commits
-
-
Paul Eggert authored
instead of ints, as it's the usual style for offsetof constants. See: http://lists.gnu.org/archive/html/emacs-devel/2013-09/msg00478.html
-
Paul Eggert authored
This is ugly, but it should fix the performance problem for older GCC versions in the short run. I'll look into integrating the Gnulib module for popcount, as a better fix. See the thread starting in: http://lists.gnu.org/archive/html/emacs-devel/2013-09/msg00474.html (popcount_size_t_generic) [NEED_GENERIC_POPCOUNT]: (popcount_size_t_msc) [USE_MSC_POPCOUNT]: (popcount_size_t_gcc) [USE_GCC_POPCOUNT]: (popcount_size_t): Use it.
-