1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-06 03:40:56 -08:00
Commit graph

111 commits

Author SHA1 Message Date
Paul Eggert
4da38c6321 Update copyright year to 2025
Run "TZ=UTC0 admin/update-copyright".
2025-01-01 07:39:17 +00:00
Stefan Kangas
1a2fa8f413 Remove redundant casts from void* with malloc functions
* src/msdos.c (IT_menu_make_room):
* src/pgtkterm.c (pgtk_define_fringe_bitmap):
* src/w16select.c (set_clipboard_data):
* src/w32term.c (w32_define_fringe_bitmap):
* src/w32uniscribe.c (uniscribe_shape): Remove redundant cast from
void* with xrealloc.
* admin/coccinelle/alloc_cast.cocci: New semantic patch.
2024-01-10 14:48:00 +01:00
Po Lu
8e1c56ae46 ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
Eli Zaretskii
cae528457c ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
Andrea Corallo
1200e55b6f Make use of NILP where possible
* src/w32menu.c (menubar_selection_callback, w32_menu_show): Use NILP
where possible.
* src/w32fns.c (w32_set_mouse_color): Likewise.
* src/w16select.c (Fw16_selection_exists_p): Likewise.
* src/process.c (Fnetwork_lookup_address_info): Likewise.
* src/cygw32.c (Fcygwin_convert_file_name_to_windows)
(Fcygwin_convert_file_name_from_windows): Likewise.
2022-01-26 12:59:10 +01:00
Eli Zaretskii
19dcb237b5 ; Add 2022 to copyright years. 2022-01-01 02:45:51 -05:00
Stefan Kangas
dc12ad8978 ; Update some links to HTTPS and note some broken links 2021-09-27 12:40:04 +02:00
Paul Eggert
ba05d005e5 Update copyright year to 2021
Run "TZ=UTC0 admin/update-copyright".
2021-01-01 01:13:56 -08:00
Andreas Schwab
a9f147af71 Use the full name of the null byte/character, not its abbreviation
* lisp/subr.el (inhibit-nul-byte-detection): Make it an obsolete alias.
* src/coding.c (setup_coding_system): Use original name.
(detect_coding): Rename nul_byte_found => null_byte_found.
(detect_coding_system): Use original name.
Rename nul_byte_found => null_byte_found.
(Fdefine_coding_system_internal): Use original name.
(syms_of_coding): Rename inhibit-nul-byte-detection to
inhibit-null-byte-detection.
* src/w16select.c (get_clipboard_data): Rename nul_char to null_char.
* src/json.c (check_string_without_embedded_nulls): Rename from
check_string_without_embedded_nuls.
(Fjson_parse_string): Adjust accordingly.
* src/coding.h (enum define_coding_undecided_arg_index)
(enum coding_attr_index): Rename ...nul_byte... to ...null_byte....
* lisp/info.el (info-insert-file-contents, Info-insert-dir):
* lisp/international/mule.el (define-coding-system):
* lisp/vc/vc-git.el (vc-git--call):
* doc/lispref/nonascii.texi (Lisp and Coding Systems): Use original name.
2020-10-05 20:19:59 +02:00
Stefan Kangas
d6a2754348 ; Fix more typos 2020-10-03 12:53:51 +02:00
Paul Eggert
365e01cc9f Update copyright year to 2020
Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
2020-01-01 00:59:52 +00:00
Stefan Monnier
76fea1eba1 Fix misuses of NULL when talking about the NUL character
* lisp/subr.el (inhibit-null-byte-detection): Make it an obsolete alias.

* src/coding.c (setup_coding_system): Use new name.
(detect_coding): Rename null_byte_found => nul_byte_found.
(detect_coding_system): Use new name.
Rename null_byte_found => nul_byte_found.
(Fdefine_coding_system_internal): Use new name.
(syms_of_coding): Rename inhibit-null-byte-detection to
inhibit-nul-byte-detection.
* src/w16select.c (get_clipboard_data): null_char => nul_char.
* src/json.c (check_string_without_embedded_nuls): Rename from
check_string_without_embedded_nulls.
(Fjson_parse_string): Adjust accordingly.
* src/coding.h (enum define_coding_undecided_arg_index)
(enum coding_attr_index): ...null_byte... => ...nul_byte....
* lisp/info.el (info-insert-file-contents, Info-insert-dir):
* lisp/international/mule.el (define-coding-system):
* lisp/vc/vc-git.el (vc-git--call):
* doc/lispref/nonascii.texi (Lisp and Coding Systems): Use the new name.
2019-03-21 23:55:28 -04:00
Paul Eggert
ba809612c0 Merge from origin/emacs-26
2fcf2df Fix copyright years by hand
26bed8b Update copyright year to 2019
2814292 Fix value of default frame height.  (Bug#33921)
2018-12-31 17:57:29 -08:00
Paul Eggert
26bed8ba10 Update copyright year to 2019
Run 'TZ=UTC0 admin/update-copyright $(git ls-files)'.
2019-01-01 01:01:13 +00:00
Tom Tromey
42fe787b0f Rename integerp->fixnum, etc, in preparation for bignums
* src/json.c, src/keyboard.c, src/keyboard.h, src/keymap.c,
src/kqueue.c, src/lcms.c, src/lisp.h, src/lread.c, src/macros.c,
src/marker.c, src/menu.c, src/minibuf.c, src/msdos.c, src/print.c,
src/process.c, src/profiler.c, src/search.c, src/sound.c,
src/syntax.c, src/sysdep.c, src/term.c, src/terminal.c,
src/textprop.c, src/undo.c, src/w16select.c, src/w32.c,
src/w32console.c, src/w32cygwinx.c, src/w32fns.c, src/w32font.c,
src/w32inevt.c, src/w32proc.c, src/w32select.c, src/w32term.c,
src/w32uniscribe.c, src/widget.c, src/window.c, src/xdisp.c,
src/xfaces.c, src/xfns.c, src/xfont.c, src/xftfont.c, src/xmenu.c,
src/xrdb.c, src/xselect.c, src/xterm.c, src/xwidget.c: Rename
INTEGERP->FIXNUM, make_number->make_fixnum, CHECK_NUMBER->CHECK_FIXNUM,
make_natnum->make_fixed_natum, NUMBERP->FIXED_OR_FLOATP,
NATNUMP->FIXNATP, CHECK_NATNUM->CHECK_FIXNAT.
2018-07-12 22:12:27 -06:00
Glenn Morris
298275c595 ; Replace "Written by" with standard "Author:" header in some C files 2018-02-13 14:29:59 -08:00
Glenn Morris
4bee1b8bac Stop keeping multiple doc copies for items defined multiple times
It was always a nuisance to keep all the copies in sync.
* src/doc.c (Fsnarf_documentation): Don't skip entire files.
Instead, skip individual doc strings starting with "SKIP".
* doc/lispref/internals.texi (Writing Emacs Primitives):
Mention this skipping.
* lisp/term/ns-win.el, lisp/term/pc-win.el, src/dosfns.c:
* src/frame.c, src/nsfns.m, src/nsmenu.m, src/nsterm.m:
* src/w16select.c, src/w32fns.c, src/w32menu.c, src/w32select.c:
* src/w32term.c, src/xmenu.c: Remove duplicated doc strings.
* src/xfns.c: Merge in information from doc string duplicates.
2018-02-13 14:22:16 -08:00
Paul Eggert
5c7dd8a783 Update copyright year to 2018
Run admin/update-copyright.
2018-01-01 00:57:59 -08:00
Paul Eggert
cbc8324488 Prefer HTTPS to HTTP for gnu.org
This catches some URLs I missed in my previous scan,
or perhaps were added after the scan.
2017-09-29 17:48:22 -07:00
Paul Eggert
5badc81c1c Update copyright year to 2017
Run admin/update-copyright.
2016-12-31 19:42:26 -08:00
Eli Zaretskii
ccdaf04cfd Fix the MSDOS build
* config.bat:
* msdos/sedlisp.inp:
* msdos/sedlibmk.inp:
* msdos/sedleim.inp:
* msdos/sedadmin.inp:
* msdos/sed6.inp:
* msdos/sed3v2.inp:
* msdos/sed2v2.inp:
* msdos/sed1v2.inp: Adapt to Emacs 25.

* src/process.c (remove_slash_colon): Move out of "#ifdef
subprocesses" block, as it its called unconditionally.  Move
ADD_SUBFEATURE calls into "#ifdef subprocesses" block, as they
reference variables only defined in that block.
* src/msdos.h: Provide prototypes for IT_set_frame_parameters,
faccessat, msdos_fatal_signal, syms_of_msdos, pthread_sigmask,
dos_keysns, dos_keyread, run_msdos_command, and
syms_of_win16select, to avoid compiler warnings.
* src/msdos.c (SYS_ENVIRON): Define to either '_environ' or
'environ', depending on the DJGPP version.
Remove declarations of externally-visible Lisp objects, like
Qbackground_color and Qreverse.
(run_msdos_command): First argument is not signed, not unsigned.
Use SYS_ENVIRON.
(sys_select): Use 'timespec_cmp' instead of 'timespec_sign', as
the latter doesn't work when 'time_t' is an unsigned data type.
This caused idle timers to behave incorrectly: they only fired
after a keyboard input event.
* src/frame.c (adjust_frame_size) [MSDOS]: Account for
FRAME_TOP_MARGIN that isn't counted in the frame's number of
lines, but dos_set_window_size needs it to be added.
* src/lread.c (INFINITY, NAN) [DJGPP < 2.05]: Provide definitions.
* src/fns.c (sort_vector_copy) [__GNUC__ < 4]: Provide a prototype
that works around compilation errors with older GCC versions.
* src/w16select.c: Don't declare QCLIPBOARD and QPRIMARY as Lisp
Objects.
* src/filelock.c [MSDOS]: Ifdef away most of the code.  Provide
no-op implementations for 'lock_file' and 'unlock_file'.
(Ffile_locked_p) [MSDOS]: Always return nil.  This avoids multiple
ifdefs in all users of filelock.c functionality.
* src/conf_post.h (EOVERFLOW, SIZE_MAX) [DJGPP < 2.04]: Define.
* src/emacs.c [MSDOS]: Include dosfns.h, to avoid compiler
warnings.
* src/dosfns.h: Provide prototypes for dos_cleanup,
syms_of_dosfns, and init_dosfns.
* src/deps.mk (atimer.o): Depend on msdos.h.
(emacs.o): Depend on dosfns.h.
* src/atimer.c [MSDOS]: Include msdos.h, to avoid compiler
warnings.

* lisp/window.el (window--adjust-process-windows): Skip the body
if 'process-list' is not available.  This avoids failure to start
up on MS-DOS.
* lisp/vc/diff.el (diff-no-select): Test 'make-process', not
'start-process', as the latter is now available on all platforms.
* lisp/textmodes/ispell.el (ispell-async-processp): Replace
'start-process' with 'make-process' in a comment.
* lisp/term/internal.el (IT-unicode-translations): Modify and add
a few translations to display Info files with Unicode markup.  Fix
an ancient off-by-one mismatch error with Unicode codepoints.
* lisp/progmodes/compile.el (compilation-start): Test
'make-process', not 'start-process', as the latter is now
available on all platforms.
* lisp/man.el (Man-build-man-command, Man-getpage-in-background):
Test 'make-process', not 'start-process', as the latter is now
available on all platforms.
* lisp/international/mule-cmds.el (set-coding-system-map): Test
'make-process', not 'start-process', as the latter is now
available on all platforms.
* lisp/eshell/esh-cmd.el (eshell-do-pipelines-synchronously): Doc
fix.
(eshell-execute-pipeline): Test 'make-process', not
'start-process', as the latter is now available on all platforms.
2016-04-30 13:45:33 +03:00
Paul Eggert
7352c6c695 Rework C source files to avoid ^(
Work around Bug#22884 by rewording comments and strings to avoid ‘(’
at the start of a line unless it starts a function.  This change
is a short-term hack; in the longer run we plan to fix cc-mode’s
performance for C files that have ‘(’ at the start of a line in a
comment or string.
2016-03-10 07:59:19 -08:00
Paul Eggert
0e963201d0 Update copyright year to 2016
Run admin/update-copyright.
2016-01-01 01:34:24 -08:00
Paul Eggert
032ce1c7d1 Omit unnecessary \ before paren in C docstrings
Although \( is needed in docstrings in Elisp code, it is not needed in
docstrings in C code, since C function definitiions do not start with
a parenthesis.  The backslashes made the docstrings a bit harder to
read and to format in columns.  Also, some C docstrings had ( in
column 1 and this did not appear to be causing any problems.  So,
simplify C docstrings by replacing \( with ( and \) with ).
2015-09-16 16:26:07 -07:00
Paul Eggert
7e09ef09a4 Update copyright year to 2015
Run admin/update-copyright.
2015-01-01 14:26:41 -08:00
Stefan Monnier
a046b8dd48 Get rid of backend-dependent selection-handling functions for kill/yank
and make it generic instead by relying on the lower-level selection
management functions.

* select.el (select-enable-clipboard): Rename from
gui-select-enable-clipboard.
(select-enable-primary): Move from x-win.el and rename from
x-select-enable-primary.
(gui-last-selected-text): Remove.
(gui--last-selected-text-clipboard, gui--last-selected-text-primary):
New vars.
(gui-select-text): Rewrite, based on x-win.el's old x-select-text.
(gui-select-text-alist, gui-selection-value-alist): Remove.
(x-select-request-type): Move from x-win.el.
(gui--selection-value-internal): New function, taken from x-win's
x-selection-value-internal.
(gui-selection-value): Rewrite, based on x-win.el's old x-selection-value.
(gui-set-selection-alist): Rename from gui-own-selection-alist and
extend it to handle a nil value as a "disown" request.
(gui-disown-selection-alist): Remove.
(xselect-convert-to-delete): Adjust accordingly.
(gui-set-selection): Simplify accordingly as well.  Use dotimes.

* lisp/frame.el (gui-method): Use window-system rather than framep.
(gui-method-declare): The tty case is now nil rather than t.
(make-frame): Adjust accordingly.

* lisp/term/x-win.el (x-last-selected-text-primary)
(x-select-enable-primary): Remove (moved to select.el).
(x-select-request-type): Move to select.el.
(x-selection-value-internal, x--selection-value): Remove functions.
(gui-selection-value, gui-select-text): Remove moethods.
(gui-set-selection): Merge own and disown methods.

* lisp/startup.el (command-line): Adjust now that `gui-method' expects nil
for ttys.

* lisp/term/ns-win.el (ns-get-pasteboard, ns-set-pasteboard)
(ns-selection-value): Remove functions.
(gui-select-text, gui-selection-value): Don't define method any more.
(gui-set-selection): Merge the old own and disown methods.
(gui-selection-exists-p, gui-get-selection): Adjust to new name of
underlying C primitive.

* lisp/term/pc-win.el (w16-get-selection-value): Add dummy argument and drop
test of gui-select-enable-clipboard, to make it usable as
a gui-get-selection method.
(gui-selection-exists-p): Adjust to new name of C primitive.
(gui-set-selection): Merge own and disown methods.
(gui-select-text, gui-selection-value): Delete methods.
(w16--select-text): Delete function.

* lisp/term/w32-win.el (w32--select-text, w32--get-selection-value):
Delete function (move functionality into w32--set-selection and
w32--get-selection).
(gui-select-text, gui-selection-value): Don't define methods.
(w32--set-selection, w32--get-selection, w32--selection-owner-p):
New functions.
(gui-get-selection, gui-selection-owner-p, gui-selection-exists-p):
Use them.
(gui-selection-exists-p): Adjust to new name of C primitive.

* src/nsselect.m (ns_get_local_selection): Signal error rather than `quit'.
(Fns_own_selection_internal): Tighten scoping.
(Fns_selection_exists_p): Rename from Fx_selection_exists_p.
(Fns_get_selection): Rename from Fx_get_selection_internal.
(Fns_get_selection_internal, Fns_store_selection_internal):
Remove functions.
(syms_of_nsselect): Adjust accordingly.

* src/w16select.c (Fw16_selection_exists_p): Rename from
Fx_selection_exists_p.
(syms_of_win16select): Adjust accordingly.

* src/w32select.c (Fw32_selection_exists_p): Rename from
Fx_selection_exists_p.
(syms_of_w32select): Adjust accordingly.
2014-10-21 11:27:18 -04:00
Eli Zaretskii
64384ca4de Fix last commit of src/w16select.c. 2014-07-17 18:40:18 +03:00
Eli Zaretskii
e8bd4b948b Fix setting up coding-systems for clipboard access on MS-Windows and MS-DOS.
src/w32select.c (setup_windows_coding_system): Apply
 CODING_ANNOTATION_MASK to the common_flags member of struct
 coding_system.  Reported by Martin Rudalics <rudalics@gmx.at>.
 src/w16select.c (Fw16_get_clipboard_data): Apply
 CODING_ANNOTATION_MASK to the common_flags member of struct
 coding_system.
2014-07-17 18:37:48 +03:00
Paul Eggert
ba3189039a Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
Dmitry Antipov
d2a95ffb4e Prefer selected_window to Fselected_window, likewise for frames.
* buffer.c (Fbuffer_swap_text):
* data.c (Fvariable_binding_locus):
* window.c (run_window_configuration_change_hook): Adjust users.
* w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
Use decode_live_frame.
2013-08-07 17:21:59 +04:00
Stefan Monnier
b09cca6ace * src/xdisp.c (message2, message2_nolog): Remove functions.
(message3, message3_nolog): Extract nbytes and multibyteness directly
from the string.  Change all callers.
(message3_nolog): Don't set message_enable_multibyte since set_message
will reset it anyway.
(message1, message1_nolog): Use message3.
(vmessage): Use a stack allocated buffer rather than f->message_buf.
(with_echo_area_buffer): Remove last two arguments.  Update all callers.
(set_message): Drop all but the second arg, which has to be a string.
(set_message_1): Simplify now that we know that a1 is NULL and the
second arg is a string.
* src/frame.h (struct frame): Remove `message_buf' field.
Use glyphs_initialized_p instead.
(FRAME_MESSAGE_BUF): Remove macro.
* src/w16select.c (Fw16_set_clipboard_data): Prefer message3 to message2.
* src/lisp.h (message2, message2_nolog): Remove declarations.
(message3, message3_nolog): Update declarations.
* src/keyboard.c (read_char_minibuf_menu_text)
(read_char_minibuf_menu_width): Remove vars.
(read_char_minibuf_menu_prompt): Rewrite the menu's construction so as
to correctly handle multibyte strings.
* src/frame.c (delete_frame): Don't free message_buf any more.
* src/editfns.c (message_text, message_length): Remove vars.
(Fmessage_box): Don't copy the Lisp string's bytes any longer.
* src/fileio.c (auto_save_error): Use message3 instead of message2.
* src/dispnew.c (adjust_frame_message_buffer): Remove function.
2013-01-23 15:07:28 -05:00
Paul Eggert
ab422c4d68 Update copyright notices for 2013. 2013-01-01 09:11:05 +00:00
Paul Eggert
4d7e6e51dd Simplify and avoid signal-handling races.
* nt/inc/ms-w32.h (emacs_raise): New macro.
* src/alloc.c (die):
* src/sysdep.c (emacs_abort) [HAVE_NTGUI]:
Avoid recursive loop if there's a fatal error in the function itself.
* src/atimer.c (pending_atimers):
* src/blockinput.h: Don't include "atimer.h"; no longer needed.
(interrupt_input_pending): Remove.  All uses removed.
pending_signals now counts both atimers and ordinary interrupts.
This is less racy than having three separate pending-signal flags.
(block_input, unblock_input, totally_unblock_input, unblock_input_to)
(input_blocked_p):
Rename from their upper-case counterparts BLOCK_INPUT,
UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT, UNBLOCK_INPUT_TO,
INPUT_BLOCKED_P, and turn into functions.  All uses changed.
This makes it easier to access volatile variables more accurately.
(BLOCK_INPUT_RESIGNAL): Remove.  All uses replaced by unblock_input ().
(input_blocked_p): Prefer this to 'interrupt_input_blocked', as
that's more reliable if the code is buggy and sets
interrupt_input_blocked to a negative value.  All uses changed.
* src/atimer.c (deliver_alarm_signal):
Remove.  No need to deliver this to the parent; any thread can
handle this signal now.  All uses replaced by underlying handler.
* src/atimer.c (turn_on_atimers):
* src/dispnew.c (handle_window_change_signal):
* src/emacs.c (handle_danger_signal):
* src/keyboard.c (kbd_buffer_get_event):
Don't reestablish signal handler; not needed with sigaction.
* src/blockinput.h (UNBLOCK_INPUT_TO, TOTALLY_UNBLOCK_INPUT)
(UNBLOCK_INPUT_TO):
Rework to avoid unnecessary accesses to volatile variables.
(UNBLOCK_INPUT_TO): Now a function.
(totally_unblock_input, unblock_input): New decls.
* src/data.c (handle_arith_signal, deliver_arith_signal): Move to sysdep.c
(init_data): Remove.  Necessary stuff now done in init_signal.
* src/emacs.c, src/xdisp.c: Include "atimer.h", since we invoke atimer functions.
* src/emacs.c (handle_fatal_signal, deliver_fatal_signal): Move to sysdep.c.
(fatal_error_code): Remove; no longer needed.
(terminate_due_to_signal): Rename from fatal_error_backtrace, since
it doesn't always backtrace.  All uses changed.  No need to reset
signal to default, since sigaction and/or die does that for us now.
Use emacs_raise (FOO), not kill (getpid (), FOO).
(main): Check more-accurately whether we're dumping.
Move fatal-error setup to sysdep.c
* src/floatfns.c: Do not include "syssignal.h"; no longer needed.
* src/gtkutil.c (xg_get_file_name, xg_get_font):
Remove no-longer-needed signal-mask manipulation.
* src/keyboard.c, src/process.c (POLL_FOR_INPUT):
Don't depend on USE_ASYNC_EVENTS, a symbol that is never defined.
* src/keyboard.c (read_avail_input): Remove.
All uses replaced by gobble_input.
(Ftop_level): Use TOTALLY_UNBLOCK_INPUT rather than open code.
(kbd_buffer_store_event_hold, gobble_input):
(record_asynch_buffer_change) [USABLE_SIGIO]:
(store_user_signal_events):
No need to mess with signal mask.
(gobble_input): If blocking input and there are terminals, simply
set pending_signals to 1 and return.  All hooks changed to not
worry about whether input is blocked.
(process_pending_signals): Clear pending_signals before processing
them, in case a signal comes in while we're processing.
By convention callers now test pending_signals before calling us.
(UNBLOCK_INPUT_TO, unblock_input, totally_unblock_input):
New functions, to support changes to blockinput.h.
(handle_input_available_signal): Now extern.
(reinvoke_input_signal): Remove.  All uses replaced by
handle_async_input.
(quit_count): Now volatile, since a signal handler uses it.
(handle_interrupt): Now takes bool IN_SIGNAL_HANDLER as arg.  All
callers changed.  Block SIGINT only if not already blocked.
Clear sigmask reliably, even if Fsignal returns, which it can.
Omit unnecessary accesses to volatile var.
(quit_throw_to_read_char): No need to restore sigmask.
* src/keyboard.c (gobble_input, handle_user_signal):
* src/process.c (wait_reading_process_output):
Call signal-handling code rather than killing ourselves.
* src/lisp.h: Include <float.h>, for...
(IEEE_FLOATING_POINT): New macro, moved here to avoid duplication.
(pending_signals): Now volatile.
(syms_of_data): Now const if IEEE floating point.
(handle_input_available_signal) [USABLE_SIGIO]:
(terminate_due_to_signal, record_child_status_change): New decls.
* src/process.c (create_process): Avoid disaster if memory is exhausted
while we're processing a vfork, by tightening the critical section
around the vfork.
(send_process_frame, process_sent_to, handle_pipe_signal)
(deliver_pipe_signal): Remove.  No longer needed, as Emacs now
ignores SIGPIPE.
(send_process): No need for setjmp/longjmp any more, since the
SIGPIPE stuff is now gone.  Instead, report an error if errno
is EPIPE.
(record_child_status_change): Now extern.  PID and W are now args.
Return void, not bool.  All callers changed.
* src/sysdep.c (wait_debugging) [(BSD_SYSTEM || HPUX) && !defined (__GNU__)]:
Remove.  All uses removed.  This bug should be fixed now in a
different way.
(wait_for_termination_1): Use waitpid rather than sigsuspend,
and record the child status change directly.  This avoids the
need to futz with the signal mask.
(process_fatal_action): Move here from emacs.c.
(emacs_sigaction_flags): New function, containing
much of what used to be in emacs_sigaction_init.
(emacs_sigaction_init): Use it.  Block nonfatal system signals that are
caught by emacs, to make races less likely.
(deliver_process_signal): Rename from handle_on_main_thread.
All uses changed.
(BACKTRACE_LIMIT_MAX): Now at top level.
(thread_backtrace_buffer, threadback_backtrace_pointers):
New static vars.
(deliver_thread_signal, deliver_fatal_thread_signal):
New functions, for more-accurate delivery of thread-specific signals.
(handle_fatal_signal, deliver_fatal_signal): Move here from emacs.c.
(deliver_arith_signal): Handle in this thread, not
in the main thread, since it's triggered by this thread.
(maybe_fatal_sig): New function.
(init_signals): New arg DUMPING so that we can be more accurate
about whether we're dumping.  Caller changed.
Treat thread-specific signals differently from process-general signals.
Block all signals while handling fatal error; that's safer.
xsignal from SIGFPE only on non-IEEE hosts, treating it as fatal
on IEEE hosts.
When batch, ignore SIGHUP, SIGINT, SIGTERM if they were already ignored.
Ignore SIGPIPE unless batch.
(emacs_backtrace): Output backtrace for the appropriate thread,
which is not necessarily the main thread.
* src/syssignal.h: Include <stdbool.h>.
(emacs_raise): New macro.
* src/xterm.c (x_connection_signal): Remove; no longer needed
now that we use sigaction.
(x_connection_closed): No need to mess with sigmask now.
(x_initialize): No need to reset SIGPIPE handler here, since
init_signals does this for us now.

Fixes: debbugs:12471
2012-09-23 01:44:20 -07:00
Eli Zaretskii
7105c8cbf3 Fix MS-Windows build broken by 2012-09-15T07:06:56Z!eggert@cs.ucla.edu, completing fix for bug #12446.
src/w32xfns.c:
 src/w32uniscribe.c:
 src/w32term.c:
 src/w32select.c:
 src/w32reg.c:
 src/w32proc.c:
 src/w32menu.c:
 src/w32inevt.c:
 src/w32heap.c:
 src/w32font.c:
 src/w32fns.c:
 src/w32console.c:
 src/w32.c:
 src/w16select.c: Remove inclusion of setjmp.h, as it is now included
 by lisp.h.  This completes removal of setjmp.h inclusion
 erroneously announced in the previous commit.
 src/lisp.h [!HAVE__SETJMP, !HAVE_SIGSETJMP]: Make the commentary
 more accurate.
 src/image.c (_setjmp) [!HAVE__SETJMP]: Define only if 'setjmp' is
 not defined as a macro.  The latter happens on MS-Windows.
2012-09-15 11:03:11 +03:00
Dmitry Antipov
23f86fce48 Cleanup xmalloc.
* admin/coccinelle/xzalloc.cocci: Semantic patch to convert
calls to xmalloc with following memset to xzalloc.
* src/lisp.h (xzalloc): New prototype.  Omit needless casts.
* src/alloc.c (xzalloc): New function.  Omit needless casts.
* src/charset.c: Omit needless casts.  Convert all calls to
malloc with following memset to xzalloc.
* src/dispnew.c: Likewise.
* src/fringe.c: Likewise.
* src/image.c: Likewise.
* src/sound.c: Likewise.
* src/term.c: Likewise.
* src/w32fns.c: Likewise.
* src/w32font.c: Likewise.
* src/w32term.c: Likewise.
* src/xfaces.c: Likewise.
* src/xfns.c: Likewise.
* src/xterm.c: Likewise.
* src/atimer.c: Omit needless casts.
* src/buffer.c: Likewise.
* src/callproc.c: Likewise.
* src/ccl.c: Likewise.
* src/coding.c: Likewise.
* src/composite.c: Likewise.
* src/doc.c: Likewise.
* src/doprnt.c: Likewise.
* src/editfns.c: Likewise.
* src/emacs.c: Likewise.
* src/eval.c: Likewise.
* src/filelock.c: Likewise.
* src/fns.c: Likewise.
* src/gtkutil.c: Likewise.
* src/keyboard.c: Likewise.
* src/lisp.h: Likewise.
* src/lread.c: Likewise.
* src/minibuf.c: Likewise.
* src/msdos.c: Likewise.
* src/print.c: Likewise.
* src/process.c: Likewise.
* src/region-cache.c: Likewise.
* src/search.c: Likewise.
* src/sysdep.c: Likewise.
* src/termcap.c: Likewise.
* src/terminal.c: Likewise.
* src/tparam.c: Likewise.
* src/w16select.c: Likewise.
* src/w32.c: Likewise.
* src/w32reg.c: Likewise.
* src/w32select.c: Likewise.
* src/w32uniscribe.c: Likewise.
* src/widget.c: Likewise.
* src/xdisp.c: Likewise.
* src/xmenu.c: Likewise.
* src/xrdb.c: Likewise.
* src/xselect.c: Likewise.
2012-07-05 10:32:41 +04:00
Andreas Schwab
e5560ff7d2 * buffer.h (FETCH_MULTIBYTE_CHAR): Define as inline.
(BUF_FETCH_MULTIBYTE_CHAR): Likewise.
* character.c (_fetch_multibyte_char_p): Remove.
* alloc.c: Include "character.h" before "buffer.h".
* bidi.c: Likewise.
* buffer.c: Likewise.
* bytecode.c: Likewise.
* callint.c: Likewise.
* callproc.c: Likewise.
* casefiddle.c: Likewise.
* casetab.c: Likewise.
* category.c: Likewise.
* cmds.c: Likewise.
* coding.c: Likewise.
* composite.c: Likewise.
* dired.c: Likewise.
* dispnew.c: Likewise.
* doc.c: Likewise.
* dosfns.c: Likewise.
* editfns.c: Likewise.
* emacs.c: Likewise.
* fileio.c: Likewise.
* filelock.c: Likewise.
* font.c: Likewise.
* fontset.c: Likewise.
* fringe.c: Likewise.
* indent.c: Likewise.
* insdel.c: Likewise.
* intervals.c: Likewise.
* keyboard.c: Likewise.
* keymap.c: Likewise.
* lread.c: Likewise.
* macros.c: Likewise.
* marker.c: Likewise.
* minibuf.c: Likewise.
* nsfns.m: Likewise.
* nsmenu.m: Likewise.
* print.c: Likewise.
* process.c: Likewise.
* regex.c: Likewise.
* region-cache.c: Likewise.
* search.c: Likewise.
* syntax.c: Likewise.
* term.c: Likewise.
* textprop.c: Likewise.
* undo.c: Likewise.
* unexsol.c: Likewise.
* w16select.c: Likewise.
* w32fns.c: Likewise.
* w32menu.c: Likewise.
* window.c: Likewise.
* xdisp.c: Likewise.
* xfns.c: Likewise.
* xmenu.c: Likewise.
* xml.c: Likewise.
* xselect.c: Likewise.
2012-06-16 14:24:15 +02:00
Eli Zaretskii
90b671e274 Sync MS-DOS selection-related doc strings with X doc strings.
lisp/term/pc-win.el (x-select-text, x-selection-owner-p)
 (x-own-selection-internal, x-disown-selection-internal)
 (x-get-selection-internal): Sync doc strings and argument lists
 with xselect.c, common-win.el and x-win.el.  (Bug#10783)
 src/w16select.c (Fx_selection_exists_p): Sync doc string with
 xselect.c.  (Bug#10783)
2012-02-11 11:38:41 +02:00
Glenn Morris
acaf905b11 Add 2012 to FSF copyright years for Emacs files 2012-01-05 01:46:05 -08:00
Paul Eggert
bbd240ceee Spelling fixes. 2011-12-14 23:24:10 -08:00
Juanma Barranquero
5e617bc2b6 Whitespace changes. 2011-09-09 03:06:52 +02:00
Glenn Morris
73b0cd5003 Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
Tom Tromey
29208e8237 Move all DEFVAR'd globals into a structure -- threading infrastructure
* globals.h: New file.
	* xterm.h (Vx_pixel_size_width_font_regexp): Remove declaration.
	* window.h (Vinitial_window_system, Vminibuf_scroll_window)
	(Vwindow_system_version): Remove declaration.
	* w32term.h (Vw32_enable_palette)
	(Vx_pixel_size_width_font_regexp): Remove declaration.
	* w32menu.c (Voverriding_local_map)
	(Voverriding_local_map_menu_flag): Remove declaration.
	* w32inevt.c (Vw32_alt_is_meta, Vw32_apps_modifier)
	(Vw32_capslock_is_shiftlock, Vw32_enable_caps_lock)
	(Vw32_enable_num_lock, Vw32_lwindow_modifier)
	(Vw32_pass_lwindow_to_system, Vw32_pass_rwindow_to_system)
	(Vw32_phantom_key_code, Vw32_recognize_altgr)
	(Vw32_rwindow_modifier, Vw32_scroll_lock_modifier)
	(w32_use_full_screen_buffer): Remove declaration.
	* w32.c (Vsystem_configuration, Vw32_downcase_file_names)
	(Vw32_generate_fake_inodes, Vw32_get_true_file_attributes)
	(w32_num_mouse_buttons, w32_pipe_read_delay): Remove declaration.
	* termopts.h (Vtruncate_partial_width_windows, inverse_video)
	(no_redraw_on_reenter, visible_bell): Remove declaration.
	* sysdep.c (Vsystem_name): Remove declaration.
	* syntax.h (parse_sexp_lookup_properties): Remove declaration.
	* menu.h (Vmenu_updating_frame): Remove declaration.
	* macros.h (Vexecuting_kbd_macro, executing_kbd_macro_index):
	Remove declaration.
	* lisp.h (Vafter_init_time, Vafter_load_alist)
	(Vauto_save_list_file_name, Vbefore_init_time, Vcommand_history)
	(Vcompletion_regexp_list, Vcurrent_load_list)
	(Vcurrent_prefix_arg, Vdata_directory, Vdebug_on_error)
	(Vdoc_directory, Vdoc_file_name, Vdynamic_library_alist)
	(Vexec_directory, Vexec_path, Vexec_suffixes)
	(Vface_font_rescale_alist, Vface_ignored_fonts, Vfeatures)
	(Vhelp_form, Vhistory_length, Vinhibit_field_text_motion)
	(Vinhibit_quit, Vinhibit_read_only, Vinhibit_redisplay)
	(Vinstallation_directory, Vinvocation_directory)
	(Vinvocation_name, Vload_file_rep_suffixes, Vload_history)
	(Vload_suffixes, Vmark_even_if_inactive, Vmemory_full)
	(Vmessage_log_max, Vobarray, Vprint_length, Vprint_level)
	(Vpurify_flag, Vquit_flag, Vsaved_region_selection)
	(Vscalable_fonts_allowed, Vselect_active_regions)
	(Vshell_file_name, Vstandard_input, Vstandard_output)
	(Vsystem_name, Vtemporary_file_directory, Vthrow_on_input)
	(Vtop_level, Vtty_erase_char, Vundo_outer_limit)
	(Vuser_login_name, Vwindow_scroll_functions)
	(Vwindow_system_version, Vx_no_window_manager)
	(Vx_resource_class, Vx_resource_name, baud_rate)
	(completion_ignore_case, debug_on_next_call, gc_cons_threshold)
	(history_delete_duplicates, inhibit_x_resources)
	(last_nonmenu_event, load_in_progress, max_specpdl_size)
	(minibuffer_auto_raise, print_escape_newlines, scroll_margin)
	(use_dialog_box, use_file_dialog): Remove declaration.  Include
	globals.h.
	* keymap.h (Voverriding_local_map)
	(Voverriding_local_map_menu_flag, meta_prefix_char): Remove
	declaration.
	* keyboard.h (Vdouble_click_time, Vfunction_key_map)
	(Vinput_method_function, Vkey_translation_map)
	(Vlucid_menu_bar_dirty_flag, Vthis_original_command)
	(do_mouse_tracking, extra_keyboard_modifiers)
	(num_nonmacro_input_events): Remove declaration.
	* intervals.h (Vchar_property_alias_alist)
	(Vdefault_text_properties, Vinhibit_point_motion_hooks)
	(Vtext_property_default_nonsticky): Remove declaration.
	* gtkutil.h (x_gtk_file_dialog_help_text)
	(x_gtk_show_hidden_files, x_gtk_use_old_file_dialog)
	(x_gtk_whole_detached_tool_bar): Remove declaration.
	* frame.h (Vdefault_frame_alist, Vframe_alpha_lower_limit)
	(Vmenu_bar_mode, Vmouse_highlight, Vterminal_frame)
	(Vtool_bar_mode, Vx_resource_class, Vx_resource_name)
	(focus_follows_mouse): Remove declaration.
	* fontset.h (Valternate_fontname_alist, Vfontset_alias_alist)
	(Vignore_relative_composition, Votf_script_alist)
	(Vuse_default_ascent, Vvertical_centering_font_regexp): Remove
	declaration.
	* font.h (Vfont_log): Remove declaration.
	* dosfns.h (Vdos_display_scancodes, Vdos_version)
	(Vdos_windows_version, dos_codepage, dos_country_code)
	(dos_decimal_point, dos_hyper_key, dos_keyboard_layout)
	(dos_keypad_mode, dos_super_key, dos_timezone_offset): Remove
	declaration.
	* disptab.h (Vglyph_table, Vstandard_display_table): Remove
	declaration.
	* dispextern.h (Vface_remapping_alist, Vglyphless_char_display)
	(Vmouse_autoselect_window, Voverflow_newline_into_fringe)
	(Vshow_trailing_whitespace, Vtool_bar_button_margin)
	(Vtool_bar_style, cursor_in_echo_area, display_hourglass_p)
	(inverse_video, mode_line_in_non_selected_windows)
	(tool_bar_button_relief, tool_bar_max_label_size)
	(underline_minimum_offset)
	(unibyte_display_via_language_environment, x_stretch_cursor_p):
	Remove declaration.
	* composite.h (Vauto_composition_function)
	(Vcomposition_function_table): Remove declaration.
	* commands.h (Vexecuting_kbd_macro)
	(Vminibuffer_local_completion_map)
	(Vminibuffer_local_filename_completion_map)
	(Vminibuffer_local_filename_must_match_map)
	(Vminibuffer_local_map, Vminibuffer_local_must_match_map)
	(Vminibuffer_local_ns_map, Vthis_command)
	(Vunread_command_events, cursor_in_echo_area)
	(last_command_event, last_nonmenu_event, unread_command_char):
	Remove declaration.
	* coding.h (Vcoding_system_for_read, Vcoding_system_for_write)
	(Vdefault_file_name_coding_system)
	(Vdefault_process_coding_system, Vfile_name_coding_system)
	(Vlast_coding_system_used, Vlocale_coding_system)
	(Vselect_safe_coding_system_function)
	(Vtranslation_table_for_input, coding_system_require_warning)
	(eol_mnemonic_dos, eol_mnemonic_mac, eol_mnemonic_undecided)
	(eol_mnemonic_unix, inherit_process_coding_system): Remove
	declaration.
	* charset.h (Vcharset_list, Vcurrent_iso639_language): Remove
	declaration.
	* character.h (Vauto_fill_chars, Vchar_direction_table)
	(Vchar_script_table, Vchar_width_table, Vprintable_chars)
	(Vscript_representative_chars, Vtranslation_table_vector)
	(Vunicode_category_table): Remove declaration.
	* ccl.h (Vfont_ccl_encoder_alist): Remove declaration.
	* buffer.h (Vafter_change_functions, Vbefore_change_functions)
	(Vdeactivate_mark, Vfirst_change_hook, Vtransient_mark_mode)
	(inhibit_modification_hooks): Remove declaration.
	* xterm.c (syms_of_xterm): Update.
	(Vx_alt_keysym, Vx_hyper_keysym, Vx_keysym_table)
	(Vx_meta_keysym, Vx_super_keysym, Vx_toolkit_scroll_bars)
	(x_mouse_click_focus_ignore_position)
	(x_underline_at_descent_line)
	(x_use_underline_position_properties): Remove.
	* xsmfns.c (syms_of_xsmfns): Update.
	(Vx_session_id, Vx_session_previous_id): Remove.
	* xsettings.c (syms_of_xsettings): Update.
	(Vxft_settings, use_system_font): Remove.
	* xselect.c (syms_of_xselect): Update.
	(Vselection_converter_alist, Vx_lost_selection_functions)
	(Vx_sent_selection_functions, x_selection_timeout): Remove.
	* xfns.c (syms_of_xfns): Update.
	(Vgtk_version_string, Vmotif_version_string)
	(Vx_cursor_fore_pixel, Vx_hourglass_pointer_shape)
	(Vx_max_tooltip_size, Vx_mode_pointer_shape)
	(Vx_no_window_manager, Vx_nontext_pointer_shape)
	(Vx_pixel_size_width_font_regexp, Vx_pointer_shape)
	(Vx_sensitive_text_pointer_shape)
	(Vx_window_horizontal_drag_shape, x_gtk_file_dialog_help_text)
	(x_gtk_show_hidden_files, x_gtk_use_old_file_dialog)
	(x_gtk_use_system_tooltips, x_gtk_whole_detached_tool_bar):
	Remove.
	* xfaces.c (syms_of_xfaces): Update.
	(Vface_default_stipple, Vface_font_rescale_alist)
	(Vface_ignored_fonts, Vface_new_frame_defaults)
	(Vface_remapping_alist, Vfont_list_limit)
	(Vscalable_fonts_allowed, Vtty_defined_color_alist): Remove.
	* xdisp.c (syms_of_xdisp): Update.
	(Vauto_resize_tool_bars, Vblink_cursor_alist)
	(Vdisplay_pixels_per_inch, Vfontification_functions)
	(Vframe_title_format, Vglobal_mode_string)
	(Vglyphless_char_display, Vhourglass_delay, Vhscroll_step)
	(Vicon_title_format, Vinhibit_redisplay)
	(Vline_number_display_limit, Vline_prefix)
	(Vmax_mini_window_height, Vmenu_bar_update_hook)
	(Vmenu_updating_frame, Vmessage_log_max)
	(Vmouse_autoselect_window, Vnobreak_char_display)
	(Voverlay_arrow_position, Voverlay_arrow_string)
	(Voverlay_arrow_variable_list, Vredisplay_end_trigger_functions)
	(Vresize_mini_windows, Vshow_trailing_whitespace)
	(Vtool_bar_border, Vtool_bar_button_margin, Vtool_bar_style)
	(Vtruncate_partial_width_windows, Vvoid_text_area_pointer)
	(Vwindow_scroll_functions, Vwindow_size_change_functions)
	(Vwindow_text_change_functions, Vwrap_prefix)
	(auto_raise_tool_bar_buttons_p, automatic_hscrolling_p)
	(debug_end_pos, display_hourglass_p, emacs_scroll_step)
	(highlight_nonselected_windows, hscroll_margin)
	(inhibit_eval_during_redisplay, inhibit_free_realized_faces)
	(inhibit_menubar_update, inhibit_try_cursor_movement)
	(inhibit_try_window_id, inhibit_try_window_reusing)
	(line_number_display_limit_width)
	(make_cursor_line_fully_visible_p, message_truncate_lines)
	(mode_line_inverse_video, multiple_frames, overline_margin)
	(scroll_conservatively, scroll_margin, tool_bar_button_relief)
	(tool_bar_max_label_size, underline_minimum_offset)
	(unibyte_display_via_language_environment, x_stretch_cursor_p):
	Remove.
	* window.c (syms_of_window): Update.
	(Vminibuf_scroll_window, Vother_window_scroll_buffer)
	(Vrecenter_redisplay, Vscroll_preserve_screen_position)
	(Vtemp_buffer_show_function, Vwindow_configuration_change_hook)
	(Vwindow_point_insertion_type, auto_window_vscroll_p)
	(mode_line_in_non_selected_windows, next_screen_context_lines)
	(window_min_height, window_min_width): Remove.
	(scroll_margin): Remove declaration.
	* w32term.c (syms_of_w32term): Update.
	(Vw32_capslock_is_shiftlock, Vw32_grab_focus_on_raise)
	(Vw32_recognize_altgr, Vw32_swap_mouse_buttons)
	(Vx_toolkit_scroll_bars, w32_num_mouse_buttons)
	(w32_use_visible_system_caret, x_underline_at_descent_line)
	(x_use_underline_position_properties): Remove.
	(Vcommand_line_args, Vsystem_name, extra_keyboard_modifiers):
	Remove declaration.
	* w32select.c (syms_of_w32select): Update.
	(Vnext_selection_coding_system, Vselection_coding_system): Remove.
	* w32proc.c (syms_of_ntproc): Update.
	(Vw32_downcase_file_names, Vw32_generate_fake_inodes)
	(Vw32_get_true_file_attributes, Vw32_quote_process_args)
	(Vw32_start_process_inherit_error_mode)
	(Vw32_start_process_share_console)
	(Vw32_start_process_show_window, w32_pipe_read_delay): Remove.
	(Vsystem_name): Remove declaration.
	* w32font.c (syms_of_w32font): Update.
	(Vw32_charset_info_alist): Remove.
	* w32fns.c (globals_of_w32fns, syms_of_w32fns): Update.
	(Vw32_alt_is_meta, Vw32_apps_modifier, Vw32_bdf_filename_alist)
	(Vw32_color_map, Vw32_enable_caps_lock, Vw32_enable_num_lock)
	(Vw32_enable_palette, Vw32_lwindow_modifier)
	(Vw32_pass_alt_to_system, Vw32_pass_lwindow_to_system)
	(Vw32_pass_rwindow_to_system, Vw32_phantom_key_code)
	(Vw32_rwindow_modifier, Vw32_scroll_lock_modifier)
	(Vx_cursor_fore_pixel, Vx_hourglass_pointer_shape)
	(Vx_max_tooltip_size, Vx_mode_pointer_shape)
	(Vx_no_window_manager, Vx_nontext_pointer_shape)
	(Vx_pixel_size_width_font_regexp, Vx_pointer_shape)
	(Vx_sensitive_text_pointer_shape)
	(Vx_window_horizontal_drag_shape, w32_ansi_code_page)
	(w32_enable_synthesized_fonts, w32_mouse_button_tolerance)
	(w32_mouse_move_interval)
	(w32_pass_extra_mouse_buttons_to_system)
	(w32_pass_multimedia_buttons_to_system, w32_quit_key)
	(w32_strict_fontnames, w32_strict_painting): Remove.
	(Vhourglass_delay, Vmenu_bar_mode, Vtool_bar_mode)
	(Vw32_recognize_altgr, Vwindow_system_version)
	(w32_num_mouse_buttons, w32_use_visible_system_caret): Remove
	declaration.
	* w32console.c (syms_of_ntterm): Update.
	(w32_use_full_screen_buffer): Remove.
	(Vtty_defined_color_alist): Remove declaration.
	* w16select.c (syms_of_win16select): Update.
	(Vnext_selection_coding_system, Vselection_coding_system): Remove.
	* undo.c (syms_of_undo): Update.
	(Vundo_outer_limit, Vundo_outer_limit_function)
	(undo_inhibit_record_point, undo_limit, undo_strong_limit):
	Remove.
	* textprop.c (syms_of_textprop): Update.
	(Vchar_property_alias_alist, Vdefault_text_properties)
	(Vinhibit_point_motion_hooks, Vtext_property_default_nonsticky):
	Remove.
	* terminal.c (syms_of_terminal): Update.
	(Vdelete_terminal_functions, Vring_bell_function): Remove.
	* term.c (syms_of_term): Update.
	(Vresume_tty_functions, Vsuspend_tty_functions)
	(no_redraw_on_reenter, system_uses_terminfo, visible_cursor):
	Remove.
	* syntax.c (syms_of_syntax): Update.
	(Vfind_word_boundary_function_table, multibyte_syntax_as_symbol)
	(open_paren_in_column_0_is_defun_start)
	(parse_sexp_ignore_comments, parse_sexp_lookup_properties)
	(words_include_escapes): Remove.
	* search.c (syms_of_search): Update.
	(Vinhibit_changing_match_data, Vsearch_spaces_regexp): Remove.
	* process.c (syms_of_process): Update.
	(Vprocess_adaptive_read_buffering, Vprocess_connection_type)
	(delete_exited_processes): Remove.
	* print.c (syms_of_print): Update.
	(Vfloat_output_format, Vprint_charset_text_property)
	(Vprint_circle, Vprint_continuous_numbering, Vprint_gensym)
	(Vprint_length, Vprint_level, Vprint_number_table)
	(Vstandard_output, print_escape_multibyte)
	(print_escape_newlines, print_escape_nonascii, print_quoted):
	Remove.
	* msdos.c (syms_of_msdos): Update.
	(Vdos_unsupported_char_glyph): Remove.
	(unibyte_display_via_language_environment): Remove declaration.
	* minibuf.c (syms_of_minibuf): Update.
	(Vcompletion_regexp_list, Vhistory_add_new_input)
	(Vhistory_length, Vminibuffer_completing_file_name)
	(Vminibuffer_completion_confirm)
	(Vminibuffer_completion_predicate, Vminibuffer_completion_table)
	(Vminibuffer_exit_hook, Vminibuffer_help_form)
	(Vminibuffer_history_position, Vminibuffer_history_variable)
	(Vminibuffer_prompt_properties, Vminibuffer_setup_hook)
	(Vread_buffer_function, Vread_expression_map)
	(completion_ignore_case, enable_recursive_minibuffers)
	(history_delete_duplicates, minibuffer_allow_text_properties)
	(minibuffer_auto_raise, read_buffer_completion_ignore_case):
	Remove.
	* marker.c (syms_of_marker): Update.
	(byte_debug_flag): Remove.
	* macros.c (syms_of_macros): Update.
	(Vexecuting_kbd_macro, executing_kbd_macro_index): Remove.
	* lread.c (syms_of_lread): Update.
	(Vafter_load_alist, Vbyte_boolean_vars)
	(Vbytecomp_version_regexp, Vcurrent_load_list)
	(Veval_buffer_list, Vload_file_name, Vload_file_rep_suffixes)
	(Vload_history, Vload_path, Vload_read_function)
	(Vload_source_file_function, Vload_suffixes, Vobarray)
	(Vold_style_backquotes, Vpreloaded_file_list, Vread_circle)
	(Vread_symbol_positions_list, Vread_with_symbol_positions)
	(Vsource_directory, Vstandard_input, Vuser_init_file, Vvalues)
	(force_load_messages, load_convert_to_unibyte)
	(load_dangerous_libraries, load_force_doc_strings)
	(load_in_progress): Remove.
	* keymap.c (syms_of_keymap): Update.
	(Vdefine_key_rebound_commands, Vemulation_mode_map_alists)
	(Vminibuffer_local_completion_map)
	(Vminibuffer_local_filename_completion_map)
	(Vminibuffer_local_filename_must_match_map)
	(Vminibuffer_local_map, Vminibuffer_local_must_match_map)
	(Vminibuffer_local_ns_map, Vminor_mode_map_alist)
	(Vminor_mode_overriding_map_alist, Vwhere_is_preferred_modifier):
	Remove.
	* keyboard.c (syms_of_keyboard): Update.
	(Vauto_save_timeout, Vcommand_error_function)
	(Vcommand_hook_internal, Vdeactivate_mark)
	(Vdeferred_action_function, Vdeferred_action_list)
	(Vdisable_point_adjustment, Vdouble_click_time)
	(Vecho_keystrokes, Venable_disabled_menus_and_buttons)
	(Vfunction_key_map, Vglobal_disable_point_adjustment)
	(Vhelp_char, Vhelp_event_list, Vhelp_form)
	(Vinput_method_function, Vinput_method_previous_message)
	(Vkey_translation_map, Vlast_event_frame)
	(Vlucid_menu_bar_dirty_flag, Vmenu_bar_final_items)
	(Vminibuffer_message_timeout, Voverriding_local_map)
	(Voverriding_local_map_menu_flag, Vpost_command_hook)
	(Vpre_command_hook, Vprefix_help_command)
	(Vsaved_region_selection, Vselect_active_regions)
	(Vshow_help_function, Vspecial_event_map, Vsuggest_key_bindings)
	(Vthis_command, Vthis_command_keys_shift_translated)
	(Vthis_original_command, Vthrow_on_input, Vtimer_idle_list)
	(Vtimer_list, Vtool_bar_separator_image_expression, Vtop_level)
	(Vtty_erase_char, Vunread_command_events)
	(Vunread_input_method_events, Vunread_post_input_method_events)
	(auto_save_interval, cannot_suspend, do_mouse_tracking)
	(double_click_fuzz, extra_keyboard_modifiers)
	(inhibit_local_menu_bar_menus, last_command_event)
	(last_input_event, last_nonmenu_event, menu_prompt_more_char)
	(menu_prompting, meta_prefix_char, num_input_keys)
	(num_nonmacro_input_events, polling_period, unread_command_char):
	Remove.
	* insdel.c (syms_of_insdel): Update.
	(Vcombine_after_change_calls, check_markers_debug_flag): Remove.
	* indent.c (syms_of_indent): Update.
	(indent_tabs_mode): Remove.
	* image.c (syms_of_image): Update.
	(Vimage_cache_eviction_delay, Vimage_types)
	(Vimagemagick_render_type, Vmax_image_size, Vx_bitmap_file_path)
	(cross_disabled_images): Remove.
	* fringe.c (syms_of_fringe): Update.
	(Vfringe_bitmaps, Voverflow_newline_into_fringe): Remove.
	* frame.c (syms_of_frame): Update.
	(Vdefault_frame_alist, Vdefault_frame_scroll_bars)
	(Vdelete_frame_functions, Vframe_alpha_lower_limit)
	(Vmake_pointer_invisible, Vmenu_bar_mode, Vmouse_highlight)
	(Vmouse_position_function, Vterminal_frame, Vtool_bar_mode)
	(Vx_resource_class, Vx_resource_name, focus_follows_mouse):
	Remove.
	* fontset.c (syms_of_fontset): Update.
	(Valternate_fontname_alist, Vfont_encoding_charset_alist)
	(Vfontset_alias_alist, Vignore_relative_composition)
	(Votf_script_alist, Vuse_default_ascent)
	(Vvertical_centering_font_regexp): Remove.
	* font.c (syms_of_font): Update.
	(Vfont_encoding_alist, Vfont_log, Vfont_slant_table)
	(Vfont_weight_table, Vfont_width_table): Remove.
	* fns.c (syms_of_fns): Update.
	(Vfeatures, use_dialog_box, use_file_dialog): Remove.
	* filelock.c (syms_of_filelock): Update.
	(Vtemporary_file_directory): Remove.
	* fileio.c (syms_of_fileio): Update.
	(Vafter_insert_file_functions, Vauto_save_include_big_deletions)
	(Vauto_save_list_file_name, Vauto_save_visited_file_name)
	(Vdefault_file_name_coding_system, Vfile_name_coding_system)
	(Vfile_name_handler_alist, Vinhibit_file_name_handlers)
	(Vinhibit_file_name_operation, Vset_auto_coding_function)
	(Vwrite_region_annotate_functions)
	(Vwrite_region_annotations_so_far)
	(Vwrite_region_post_annotation_function)
	(delete_by_moving_to_trash, write_region_inhibit_fsync): Remove.
	(Vw32_get_true_file_attributes): Remove declaration.
	* eval.c (syms_of_eval): Update.
	(Vdebug_ignored_errors, Vdebug_on_error, Vdebug_on_signal)
	(Vdebugger, Vinhibit_quit, Vmacro_declaration_function)
	(Vquit_flag, Vsignal_hook_function, Vstack_trace_on_error)
	(debug_on_next_call, debug_on_quit, debugger_may_continue)
	(max_lisp_eval_depth, max_specpdl_size): Remove.
	* emacs.c (syms_of_emacs): Update.
	(Vafter_init_time, Vbefore_init_time, Vcommand_line_args)
	(Vdynamic_library_alist, Vemacs_copyright, Vemacs_version)
	(Vinstallation_directory, Vinvocation_directory)
	(Vinvocation_name, Vkill_emacs_hook, Vpath_separator)
	(Vprevious_system_messages_locale, Vprevious_system_time_locale)
	(Vsystem_configuration, Vsystem_configuration_options)
	(Vsystem_messages_locale, Vsystem_time_locale, Vsystem_type)
	(inhibit_x_resources, noninteractive1): Remove.
	* editfns.c (syms_of_editfns): Update.
	(Vbuffer_access_fontified_property)
	(Vbuffer_access_fontify_functions, Vinhibit_field_text_motion)
	(Voperating_system_release, Vsystem_name, Vuser_full_name)
	(Vuser_login_name, Vuser_real_login_name): Remove.
	* dosfns.c (syms_of_dosfns): Update.
	(Vdos_display_scancodes, Vdos_version, Vdos_windows_version)
	(dos_codepage, dos_country_code, dos_decimal_point)
	(dos_hyper_key, dos_keyboard_layout, dos_keypad_mode)
	(dos_super_key, dos_timezone_offset): Remove.
	* doc.c (syms_of_doc): Update.
	(Vbuild_files, Vdoc_file_name): Remove.
	* dispnew.c (syms_of_display): Update.
	(Vglyph_table, Vinitial_window_system)
	(Vredisplay_preemption_period, Vstandard_display_table)
	(Vwindow_system_version, baud_rate, cursor_in_echo_area)
	(inverse_video, redisplay_dont_pause, visible_bell): Remove.
	* dired.c (syms_of_dired): Update.
	(Vcompletion_ignored_extensions): Remove.
	(Vw32_get_true_file_attributes): Remove declaration.
	* dbusbind.c (syms_of_dbusbind): Update.
	(Vdbus_debug, Vdbus_registered_buses)
	(Vdbus_registered_objects_table): Remove.
	* data.c (syms_of_data): Update.
	(Vmost_negative_fixnum, Vmost_positive_fixnum): Remove.
	* composite.c (syms_of_composite): Update.
	(Vauto_composition_function, Vauto_composition_mode)
	(Vcompose_chars_after_function, Vcomposition_function_table):
	Remove.
	* coding.c (syms_of_coding): Update.
	(Vcharset_revision_table, Vcoding_category_list)
	(Vcoding_system_alist, Vcoding_system_for_read)
	(Vcoding_system_for_write, Vcoding_system_list)
	(Vdefault_process_coding_system, Venable_character_translation)
	(Vfile_coding_system_alist, Vlast_code_conversion_error)
	(Vlast_coding_system_used, Vlatin_extra_code_table)
	(Vlocale_coding_system, Vnetwork_coding_system_alist)
	(Vprocess_coding_system_alist)
	(Vselect_safe_coding_system_function)
	(Vstandard_translation_table_for_decode)
	(Vstandard_translation_table_for_encode)
	(Vtranslation_table_for_input, coding_system_require_warning)
	(eol_mnemonic_dos, eol_mnemonic_mac, eol_mnemonic_undecided)
	(eol_mnemonic_unix, inherit_process_coding_system)
	(inhibit_eol_conversion, inhibit_iso_escape_detection)
	(inhibit_null_byte_detection): Remove.
	* cmds.c (syms_of_cmds): Update.
	(Vpost_self_insert_hook): Remove.
	* charset.c (syms_of_charset): Update.
	(Vcharset_list, Vcharset_map_path, Vcurrent_iso639_language)
	(inhibit_load_charset_map): Remove.
	* character.c (syms_of_character): Update.
	(Vauto_fill_chars, Vchar_direction_table, Vchar_script_table)
	(Vchar_width_table, Vprintable_chars)
	(Vscript_representative_chars, Vtranslation_table_vector)
	(Vunicode_category_table): Remove.
	* ccl.c (syms_of_ccl): Update.
	(Vcode_conversion_map_vector, Vfont_ccl_encoder_alist)
	(Vtranslation_hash_table_vector): Remove.
	* category.c (syms_of_category): Update.
	(Vword_combining_categories, Vword_separating_categories): Remove.
	* callproc.c (syms_of_callproc): Update.
	(Vconfigure_info_directory, Vdata_directory, Vdoc_directory)
	(Vexec_directory, Vexec_path, Vexec_suffixes)
	(Vinitial_environment, Vprocess_environment)
	(Vshared_game_score_directory, Vshell_file_name): Remove.
	* callint.c (syms_of_callint): Update.
	(Vcommand_debug_status, Vcommand_history, Vcurrent_prefix_arg)
	(Vmark_even_if_inactive, Vmouse_leave_buffer_hook): Remove.
	* bytecode.c (syms_of_bytecode): Update.
	(Vbyte_code_meter, byte_metering_on): Remove.
	* buffer.c (syms_of_buffer): Update.
	(Vafter_change_functions, Vbefore_change_functions)
	(Vchange_major_mode_hook, Vfirst_change_hook)
	(Vinhibit_read_only, Vkill_buffer_query_functions)
	(Vtransient_mark_mode, inhibit_modification_hooks): Remove.
	* alloc.c (syms_of_alloc): Update.
	(Vgc_cons_percentage, Vgc_elapsed, Vmemory_full)
	(Vmemory_signal_data, Vpost_gc_hook, Vpurify_flag)
	(cons_cells_consed, floats_consed, garbage_collection_messages)
	(gc_cons_threshold, gcs_done, intervals_consed)
	(misc_objects_consed, pure_bytes_used, string_chars_consed)
	(strings_consed, symbols_consed, vector_cells_consed): Remove.

	* lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
	(DEFVAR_INT): Assume global is in `globals'.
	* alloc.c (globals): Define.
2011-01-18 13:45:37 -07:00
Glenn Morris
e9bffc61f2 Refill some copyright headers. 2011-01-15 18:21:30 -08:00
Stefan Monnier
77ab81d054 Merge from emacs-23 2011-01-14 12:18:41 -05:00
Glenn Morris
5df4f04cd3 Add 2011 to FSF/AIST copyright years. 2011-01-02 15:50:46 -08:00
Glenn Morris
f5f2561564 Sync docs of selection-coding-system between C and Lisp.
* src/w16select.c (syms_of_win16select) <selection-coding-system>:
* src/w32select.c (syms_of_w32select) <selection-coding-system>:
Sync docs with select.el.
* lisp/select.el (selection-coding-system): Sync doc with C versions.
2010-10-23 19:22:43 -07:00
Glenn Morris
3646b86d0e Sync Lisp and C docs of next-selection-coding-system.
* src/w16select.c (syms_of_win16select) <next-selection-coding-system>:
* src/w32select.c (syms_of_w32select) <next-selection-coding-system>:
Sync docs with select.el.
* lisp/select.el (next-selection-coding-system): Sync doc with C versions.
2010-10-23 19:13:37 -07:00
Dan Nicolaescu
4cacd822d1 Do not include stdlib.h and string.h, config.h does it.
* src/xfont.c:
* src/w32term.c:
* src/w32reg.c:
* src/w32inevt.c:
* src/w32heap.c:
* src/w32console.c:
* src/w16select.c:
* src/unexsol.c:
* src/term.c:
* src/sound.c:
* src/scroll.c (m):
* src/gtkutil.c:
* src/font.c:
* src/filelock.c:
* src/fileio.c:
* src/dosfns.c:
* src/dbusbind.c:
* src/bidi.c:
* src/callproc.c:
* src/process.c:
* src/msdos.c:
* src/charset.c: Do not include stdlib.h and string.h, config.h does it.

* configure.in: Include stdlib.h and string.h unconditionally.
2010-10-01 06:56:33 -07:00
Eli Zaretskii
891ef8f7d7 Fix -Wall compiler warnings in MSDOS sources.
msdos.c (IT_set_face): Fix format string to match argument types.
 (IT_write_glyphs, IT_note_mode_line_highlight)
 (IT_set_frame_parameters): Remove unused variables.
 (x_set_menu_bar_lines): Declare set_menu_bar_lines.
 (IT_set_terminal_modes): Disambiguate expression in if clause.
 (Fmsdos_remember_default_colors): Return Qnil.
 (IT_set_frame_parameters): Add parens to disambiguate boolean
 expression for logging the cursor type to termscript.
 (keyboard_layout_list, keypad_translate_map)
 (grey_key_translate_map): Add braces in inner initializers.
 (dos_rawgetc): Add parens in condition for mouse-3 button-press.
 (dos_rawgetc): Remove unused label.
 (XMenuActivate): Add braces to remove ambiguous `else'.
 (dos_ttraw): Always return a value.
 (spawnve): Declare.
 (run_msdos_command): Cast 3rd arg of spawnve to "char **".
 dosfns.h (x_set_title): Declare.
 w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
 Remove unused variables.
 dosfns.c (Fint86, Fdos_memget, Fdos_memput): Remove unused variables.
 (init_dosfns): Declare get_lim_data.
 (system_process_attributes): Declare Fget_internal_run_time.
2010-08-13 12:21:31 +03:00
Dan Nicolaescu
5842a27bbf Convert DEFUNs to standard C.
* src/alloc.c: Convert DEFUNs to standard C.
* src/buffer.c:
* src/bytecode.c:
* src/callint.c:
* src/callproc.c:
* src/casefiddle.c:
* src/casetab.c:
* src/category.c:
* src/character.c:
* src/charset.c:
* src/chartab.c:
* src/cmds.c:
* src/coding.c:
* src/composite.c:
* src/data.c:
* src/dbusbind.c:
* src/dired.c:
* src/dispnew.c:
* src/doc.c:
* src/dosfns.c:
* src/editfns.c:
* src/emacs.c:
* src/eval.c:
* src/fileio.c:
* src/filelock.c:
* src/floatfns.c:
* src/fns.c:
* src/font.c:
* src/fontset.c:
* src/frame.c:
* src/fringe.c:
* src/image.c:
* src/indent.c:
* src/insdel.c:
* src/keyboard.c:
* src/keymap.c:
* src/lread.c:
* src/macros.c:
* src/marker.c:
* src/menu.c:
* src/minibuf.c:
* src/msdos.c:
* src/nsfns.m:
* src/nsmenu.m:
* src/nsselect.m:
* src/print.c:
* src/process.c:
* src/search.c:
* src/sound.c:
* src/syntax.c:
* src/term.c:
* src/terminal.c:
* src/textprop.c:
* src/undo.c:
* src/w16select.c:
* src/w32console.c:
* src/w32fns.c:
* src/w32font.c:
* src/w32menu.c:
* src/w32proc.c:
* src/w32select.c:
* src/window.c:
* src/xdisp.c:
* src/xfaces.c:
* src/xfns.c:
* src/xmenu.c:
* src/xselect.c:
* src/xsettings.c:
* src/xsmfns.c: Likewise.
2010-07-08 14:25:08 -07:00