- 05 Sep, 2012 6 commits
-
-
Dmitry Antipov authored
* lisp.h (CYCLE_CHECK, CHAR_TABLE_TRANSLATE): Remove. * conf_post.h (RE_TRANSLATE): Use char_table_translate. * editfns.c (Fcompare_buffer_substrings): Likewise. * frame.h (struct terminal, struct font_driver_list): Remove redundant declarations. * window.h (Qleft, Qright): Likewise.
-
Dmitry Antipov authored
* alloc.c (mark_buffer): Mark just the buffer if it is dead. (mark_object): Likewise for windows and frames.
-
Dmitry Antipov authored
buffer_defaults and buffer_local_symbols as valid objects. Return special value to denote them.
-
Paul Eggert authored
* fileio.c (auto_saving, auto_save_error_occurred, make_temp_name) (Fexpand_file_name, barf_or_query_if_file_exists, Fcopy_file) (file_name_absolute_p, Fsubstitute_in_file_name): (check_executable, check_writable, Ffile_accessible_directory_p) (Fset_file_selinux_context, Fdefault_file_modes) (Finsert_file_contents, choose_write_coding_system) (Fwrite_region, build_annotations, a_write, e_write) (Fdo_auto_save): * filelock.c (boot_time_initialized, get_boot_time) (get_boot_time_1, lock_file_1, within_one_second): * floatfns.c (in_float): * fns.c (concat, internal_equal, Frequire, base64_encode_1) (base64_decode_1, cmpfn_eql, cmpfn_user_defined) (sweep_weak_table, sweep_weak_hash_tables, secure_hash): * lisp.h (struct Lisp_Hash_Table.cmpfn): * window.c (compare_window_configurations): Use bool for booleans. * fileio.c (auto_saving_dir_umask, auto_saving_mode_bits) (Fdefault_file_modes): Now mode_t, not int, for modes. (Fdo_auto_save): Set a boolean to 1 rather than using ++. (internal_delete_file): Now returns void, not a (boolean) int, since nobody was looking at the return value. * lisp.h, window.h: Adjust to above API changes.
-
Paul Eggert authored
-
Juanma Barranquero authored
-
- 04 Sep, 2012 6 commits
-
-
Lars Ingebrigtsen authored
This allows tracking down what piece of code is outputting stuff in the echo area. * eval.c (call_debugger): Make the function non-static so that we can call it from set_message. * xdisp.c (set_message): Implement the new variable `debug-on-message'. (syms_of_xdisp): Defvar it and `inhibit-debug-on-message'.
-
Paul Eggert authored
* doc/emacs/trouble.texi (Crashing): New section, documenting this. * etc/NEWS: Document the change. * src/alloc.c [ENABLE_CHECKING]: Do not include <execinfo.h>. (die) [ENABLE_CHECKING]: Call fatal_error_backtrace instead of doing the work ourselves. * src/emacs.c (fatal_error_signal): Let fatal_error_backtrace do most of the work. (fatal_error_backtrace): New function, taken from the guts of the old fatal_error_signal, but with a new option to output a backtrace. (shut_down_emacs) [!DOS_NT]: Use strsignal to give more-useful info about the signal than just its number. * src/lisp.h (fatal_error_backtrace, emacs_backtrace): New decls. * src/sysdep.c: Include <execinfo.h> (emacs_backtrace): New function, taken partly from the previous code of the 'die' function. (emacs_abort): Call fatal_error_backtrace rather than abort.
-
Stefan Monnier authored
* src/lread.c (readevalloop): Call internal-macroexpand-for-load to perform eager (load-time) macro-expansion. * src/lisp.mk (lisp): Add macroexp. * lisp/loadup.el: Load macroexp. Remove hack. * lisp/emacs-lisp/macroexp.el (macroexp--eval-if-compile): New function. (macroexp--expand-all): Use it to get better warnings. (macroexp--backtrace, macroexp--trim-backtrace-frame) (internal-macroexpand-for-load): New functions. (macroexp--pending-eager-loads): New var. (emacs-startup-hook): New hack to replace one in loadup.el. * lisp/emacs-lisp/cl-macs.el (cl--compiler-macro-list*) (cl--compiler-macro-cXXr): Move to top, before they can be used. (cl-psetf): Simplify. (cl-defstruct): Add indent rule.
-
Paul Eggert authored
Do not try to redefine the 'abort' function. Instead, redo the code so that it calls 'emacs_abort' rather than 'abort'. This removes the need for the NO_ABORT configure-time macro and makes it easier to change the abort code to do a backtrace. * configure.ac (NO_ABRT): Remove. * admin/CPP-DEFINES (NO_ABORT): Remove. * nt/inc/ms-w32.h (w32_abort) [HAVE_NTGUI]: Remove. * src/.gdbinit: Just stop at emacs_abort, not at w32_abort or abort. * src/emacs.c (abort) [!DOS_NT && !NO_ABORT]: Remove; sysdep.c's emacs_abort now takes its place. * src/lisp.h (emacs_abort): New decl. All calls from Emacs code to 'abort' changed to use 'emacs_abort'. * src/msdos.c (dos_abort) [defined abort]: Remove; not used. (abort) [!defined abort]: Rename to ... (emacs_abort): ... new name. * src/sysdep.c (emacs_abort) [!HAVE_NTGUI]: New function, taking the place of the old 'abort' in emacs.c. * src/w32.c, src/w32fns.c (abort): Do not #undef. * src/w32.c (emacs_abort): Rename from w32_abort.
-
Eli Zaretskii authored
src/w32uniscribe.c (uniscribe_shape): Reverse the sign of offsets[j].dv, since the y axis of the screen coordinates points down, while the y axis of the font definition coordinates points up. This fixes display of Arabic diacritics such as KASRA and KASRATAN.
-
Paul Eggert authored
* alloc.c (test_setjmp, mark_stack): * image.c (PNG_LONGJMP) [PNG_LIBPNG_VER < 10500]: (PNG_JMPBUF) [! (PNG_LIBPNG_VER < 10500)]: (png_load, my_error_exit, jpeg_load): * process.c (send_process_trap, send_process): Uniformly prefer _setjmp and _longjmp to setjmp and longjmp. The underscored versions are up to 30x faster on some hosts. Formerly, the code used setjmp+longjmp sometimes and _setjmp+_longjmp at other times, with no particular reason to prefer setjmp+longjmp.
-
- 03 Sep, 2012 4 commits
-
-
Paul Eggert authored
-
Paul Eggert authored
* buffer.c (Fdelete_all_overlays): Return nil. * doc.c (Fsubstitute_command_keys): * regex.c (WEAK_ALIAS): * xdisp.c (redisplay_internal): Move initialization down, to pacify GCC 4.7.1 -Wjump-misses-init.
-
Martin Rudalics authored
* buffer.c (Fdelete_all_overlays): New function. * window.el (temp-buffer-window-setup-hook) (temp-buffer-window-show-hook): New hooks. (temp-buffer-window-setup, temp-buffer-window-show) (with-temp-buffer-window): New functions. (fit-window-to-buffer): Remove unused optional argument OVERRIDE. (special-display-popup-frame): Make sure the window used shows BUFFER. * help.el (temp-buffer-resize-mode): Fix doc-string. (resize-temp-buffer-window): New optional argument WINDOW. * files.el (recover-file, save-buffers-kill-emacs): * dired.el (dired-mark-pop-up): Use with-temp-buffer-window.
-
Chong Yidong authored
-
- 02 Sep, 2012 7 commits
-
-
Paul Eggert authored
* emacs.c (initialized, inhibit_window_system, running_asynch_code): (malloc_using_checking) [DOUG_LEA_MALLOC]: (display_arg) [HAVE_X_WINDOWS || HAVE_NS]: (noninteractive, no_site_lisp, fatal_error_in_progress, argmatch) (main, decode_env_path, Fdaemon_initialized): * eval.c (call_debugger, Finteractive_p, interactive_p): (unwind_to_catch, Fsignal, wants_debugger, skip_debugger) (maybe_call_debugger, Fbacktrace): * process.c (read_process_output, exec_sentinel): Use bool for booleans. * emacs.c (shut_down_emacs): Omit unused boolean argument NO_X. All callers changed. * eval.c (interactive_p): Omit always-true boolean argument EXCLUDE_SUBRS_P. All callers changed. * dispextern.h, lisp.h: Reflect above API changes. * firstfile.c (dummy): Use the address of 'main', whose signature won't change, instead of the address of 'initialize', whose signature just changed from int to bool. * lisp.h (fatal_error_in_progress): New decl of boolean, moved here ... * msdos.c (fatal_error_in_progress): ... from here. * xdisp.c (redisplaying_p): Now a boolean. Set it to 1 instead of incrementing it. (redisplay_internal, unwind_redisplay): Simply clear REDISPLAYING_P when unwinding, instead of saving its previous, always-false value and then restoring it.
-
Paul Eggert authored
Mostly, this hoists extern decls out of .c files and into .h files. That way, we're more likely to catch errors if the interfaces change. * alloc.c [USE_GTK]: Include "gtkutil.h" so that we need not declare xg_mark_data. * dispextern.h (x_frame_parm_handlers): * font.h (Qxft): * lisp.h (Qlexical_binding, Qinternal_interpreter_environment) (Qextra_light, Qlight, Qsemi_light, Qsemi_bold, Qbold, Qextra_bold) (Qultra_bold, Qoblique, Qitalic): Move extern decl here from .c file. * alloc.c (xg_mark_data) [USE_GTK]: * doc.c (Qclosure): * eval.c (Qlexical_binding): * fns.c (time) [!HAVE_UNISTD_H]: * gtkutil.c (Qxft, Qnormal, Qextra_light, Qlight, Qsemi_light) (Qsemi_bold, Qbold, Qextra_bold, Qultra_bold, Qoblique, Qitalic): * image.c (Vlibrary_cache, QCloaded_from) [HAVE_NTGUI]: * lread.c (Qinternal_interpreter_environment): * minibuf.c (Qbuffer): * process.c (QCfamily, QCfilter): * widget.c (free_frame_faces): * xfaces.c (free_frame_menubar) [USE_X_TOOLKIT]: * xfont.c (x_clear_errors): * xterm.c (x_frame_parm_handlers): Remove now-redundant extern decls. * keyboard.c, keyboard.h (ignore_mouse_drag_p) [USE_GTK || HAVE_NS]: * xfaces.c (Qultra_light, Qreverse_oblique, Qreverse_italic): Now static. * xfaces.c: Remove unnecessary static decls. * xterm.c (updating_frame): Remove decl of nonexistent object.
-
Paul Eggert authored
when building globals.h, as the objects that are not built on this host are not needed to compile C files on this host.
-
Jan Djärv authored
* frame.h: Add missing prototype for x_wm_set_size_hint. * gtkutil.h: Remove prototype for x_wm_set_size_hint.
-
Paul Eggert authored
* doc.c (read_bytecode_char, get_doc_string, reread_doc_file) (Fdocumentation, Fdocumentation_property, Fsnarf_documentation) (Fsubstitute_command_keys): * editfns.c (region_limit, find_field, Fconstrain_to_field) (save_excursion_save, save_excursion_restore) (disassemble_lisp_time, decode_time_components, emacs_nmemftime) (format_time_string, general_insert_function) (make_buffer_string, make_buffer_string_both) (Fsubst_char_in_region, Ftranslate_region_internal, Fformat): * insdel.c (check_markers, gap_left, adjust_markers_for_insert) (copy_text, insert_1, insert_1_both, insert_from_string) (insert_from_string_before_markers, insert_from_string_1) (insert_from_buffer, insert_from_buffer_1, replace_range) (replace_range_2, del_range_1, del_range_byte, del_range_both) (del_range_2, modify_region): * intervals.c (intervals_equal, balance_possible_root_interval) (adjust_intervals_for_insertion, merge_properties_sticky) (graft_intervals_into_buffer, lookup_char_property) (adjust_for_invis_intang, set_point_both) (get_property_and_range, compare_string_intervals) (set_intervals_multibyte_1, set_intervals_multibyte): * keyboard.c (decode_timer): Use bool for boolean. * intervals.h, lisp.h, systime.h: Reflect above API changes. * editfns.c (struct info): Use 1-bit unsigned bitfields for booleans.
-
Chong Yidong authored
Fixes: debbugs:11758
-
Juanma Barranquero authored
(CCL_H, W32FONT_H): New macros. (ATIMER_H, FONT_H, $(BLD)/alloc.$(O), $(BLD)/callproc.$(O)) ($(BLD)/editfns.$(O), $(BLD)/ccl.$(O), $(BLD)/chartab.$(O)) ($(BLD)/coding.$(O), $(BLD)/sysdep.$(O), $(BLD)/fontset.$(O)) ($(BLD)/sysdep.$(O), $(BLD)/w32fns.$(O), $(BLD)/keyboard.$(O)) ($(BLD)/w32term.$(O), $(BLD)/w32menu.$(O), $(BLD)/process.$(O)) ($(BLD)/w32font.$(O), $(BLD)/w32uniscribe.$(O)): Update.
-
- 01 Sep, 2012 6 commits
-
-
Eli Zaretskii authored
src/w32uniscribe.c (uniscribe_shape): Handle correctly the case of more than one grapheme cluster passed to the shaper: compute the offset adjustment values separately for each cluster.
-
Eli Zaretskii authored
-
Eli Zaretskii authored
src/image.c: Restore mistakenly removed inclusion of w32.h. Without it, GCC doesn't see prototypes of w32_delayed_load, and complains about implicit conversions from integer to pointer.
-
Daniel Colascione authored
-
Daniel Colascione authored
This change streamlines the window system selection code in configure.in and moves many common function declarations from window-specific headers to frame.h. It introduces a new TERM_HEADER macro in config.h: we set this macro to the right header to use for the window system for which we're compiling Emacs and have source files include it indirectly. This way, we don't have to teach every file about every window system.
-
Paul Eggert authored
* doc/lispref/numbers.texi (Random Numbers): Document new behavior of the calls (random) and (random STRING). * etc/NEWS: Document new behavior of (random), (random "string"). * lisp/play/5x5.el, lisp/play/animate.el, lisp/play/cookie1.el: * lisp/play/dissociate.el, lisp/play/doctor.el, lisp/play/dunnet.el: * lisp/play/gomoku.el, lisp/play/landmark.el, lisp/play/mpuz.el: * lisp/play/tetris.el, lisp/play/zone.el: * lisp/calc/calc-comb.el (math-init-random-base): * lisp/play/blackbox.el (bb-init-board): * lisp/play/life.el (life): * lisp/server.el (server-use-tcp): * lisp/type-break.el (type-break): Remove unnecessary call to (random t). * lisp/net/sasl.el (sasl-unique-id-function): Change (random t) to (random), now that the latter is more random. * lisp/play/life.el (life-initialized): Remove no-longer-needed var. * lisp/gnus/gnus-sync.el (gnus-sync-lesync-setup): * lisp/gnus/message.el (message-canlock-generate, message-unique-id): Change (random t) to (random), now that the latter is more random. * lisp/org/org-id.el (org-id-uuid): Change (random t) to (random), now that the latter is more random. * src/emacs.c (main): Call init_random. * src/fns.c (Frandom): Set the seed from a string argument, if given. Remove long-obsolete Gentzel cruft. * src/lisp.h, src/sysdep.c (seed_random): Now takes address and size, not long. (init_random): New function.
-
- 31 Aug, 2012 3 commits
-
-
Dmitry Antipov authored
* lisp.h (mark_ttys): Remove prototype. * alloc.c (Fgarbage_collect): Remove redundant (and the only) call to mark_ttys because all possible values of 'top_frame' slot are the frames which are reachable from Vframe_list. * term.c (mark_ttys): Remove. (init_tty): Safely initialize 'top_frame' slot with Qnil.
-
Dmitry Antipov authored
* frame.h (struct frame): Change type of 'display_preempted', 'visible', 'iconified', 'has_minibuffer', 'wants_modeline', 'auto_raise', 'auto_lower', 'no_split', 'explicit_name', 'window_sizes_changed', 'mouse_moved' and 'pointer_invisible' bitfields from unsigned char to unsigned.
-
Dmitry Antipov authored
* xterm.h (struct x_output): Remove unused field 'needs_exposure'. * w32term.h (struct w32_output): Likewise.
-
- 30 Aug, 2012 3 commits
-
-
Jan Djärv authored
does not become zero. Fixes: debbugs:12234
-
Paul Eggert authored
for GCC 4.7.1 x86-64.
-
Glenn Morris authored
* src/lread.c (init_lread): For out-of-tree builds, only add the source directory's site-lisp dir to the load-path if it exists, consistent with in-tree builds.
-
- 28 Aug, 2012 5 commits
-
-
Jan Djärv authored
* nsmenu.m (initWithContentRect:styleMask:backing:defer:): Initialize button_values to NULL. Call setStykeMask so dialogs get a close button. (windowShouldClose:): Set window_closed. (dealloc): New member, free button_values. (process_dialog:): Make member function. Remove window argument, replace window with self. Count buttons and allocate and store values in button_values. (addButton:value:row:): value is int with the name tag. Call setTag with tag. Remove return self, declare return value as void. (addString:row:): Remove return self, declare return value as void. (addSplit): Remove return self, declare return value as void. (clicked:): Remove return self, declare return value as void. Set dialog_return to button_values[seltag]. Code formatting change. (initFromContents:isQuestion:): Adjust call to process_dialog. Code formatting change. (timeout_handler:): Set timer_fired to YES. (runDialogAt:): Set timer_fired to NO. Handle click on close button as quit. * nsterm.h (EmacsDialogPanel): Make timer_fired BOOL. Add window_closed and button_values. Add void as return value for add(Button|String|Split). addButton takes int instead of Lisp_Object. Add process_dialog as new member.
-
Martin Rudalics authored
* window.c (Fset_window_configuration): Install revision of reverted fix.
-
Martin Rudalics authored
* window.c (Fset_window_configuration): Remove handling of auto-buffer-name window parameter.
-
Dmitry Antipov authored
* buffer.c (Fset_buffer_major_mode): Signal an error if the buffer is dead. (Fother_buffer, other_buffer_safely): Remove redundant nested declaration.
-
Dmitry Antipov authored
* buffer.h (record_unwind_current_buffer): New function. * bytecode.c, dispnew.c, editfns.c, fileio.c, fns.c, insdel.c: * keyboard.c, keymap.c, minibuf.c, print.c, process.c, textprop.c: * undo.c, window.c: Adjust users. * buffer.c (set_buffer_if_live): Fix comment.
-