1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-20 12:40:56 -08:00
Commit graph

65 commits

Author SHA1 Message Date
Eli Zaretskii
bf6b4923f7 Fix the MSDOS build.
src/unexcoff.c [MSDOS]: Include libc/atexit.h.
 (copy_text_and_data): Zero out the atexit chain pointer before
 dumping Emacs.
 src/termhooks.h (encode_terminal_code): Update prototype.
 src/term.c (encode_terminal_code) [DOS_NT]: Make it externally
 visible for all DOS_NT ports, not just WINDOWSNT.
 (syms_of_term) [!MSDOS]: Don't define 'tty-menu-*' symbols on MSDOS.
 src/sysdep.c (emacs_sigaction_init, init_signals): Don't use SIGCHLD
 unless it is defined.
 (emacs_pipe) [MSDOS]: Redirect to 'pipe'.
 src/process.c (close_on_exec, accept4, process_socket): Move into
 the "ifdef subprocesses" part.
 (catch_child_signal): Condition by "ifdef subprocesses".
 (syms_of_process) <Qinternal_default_process_sentinel>
 <Qinternal_default_process_filter>: Condition by "ifdef subprocesses".
 src/msdos.h: Add prototypes for new functions.
 (EINPROGRESS): Define.
 (O_CLOEXEC): Define to zero.
 src/msdos.c (check_window_system): Remove unnecessary an
 incompatible duplicate function.
 (sys_opendir, readlinkat, faccessat, fstatat, unsetenv): New
 functions in support of new functionality.
 src/menu.c (single_menu_item): Add visual indication  of submenu
 also for menus on MSDOS frames.
 (Fx_popup_menu) [!MSDOS]: Do not call tty_menu_show on MSDOS.
 src/lisp.h (CHECK_PROCESS) [!subprocesses]: Do not define
 when async subprocesses aren't supported.
 src/font.h (FONT_WIDTH) [MSDOS]: MSDOS-specific definition.
 src/emacs.c (close_output_streams): Zero out errno before calling
 close_stream.
 src/dired.c [MSDOS]: Include msdos.h.
 src/conf_post.h (opendir) [MSDOS]: Redirect to sys_opendir.
 (DATA_START) [MSDOS]: Define.
 (SYSTEM_PURESIZE_EXTRA) [MSDOS]: Enlarge by 25K.
 src/callproc.c (block_child_signal, unblock_child_signal) [MSDOS]:
 Ifdef away for MSDOS.
 (record_kill_process) [MSDOS]: Ifdef away the entire body for MSDOS.
 (call_process_cleanup) [MSDOS]: Ifdef away portions not relevant
 for MSDOS.
 (call_process) [MSDOS]: Fix call sequence of dostounix_filename.
 Use temporary file template that is compatible with mkostemp.
 Move vfork-related portions under #ifndef MSDOS.
 (syms_of_callproc): Unify templates of MSDOS and WINDOWSNT.

 lisp/term/pc-win.el (x-list-fonts, x-get-selection-value): Provide
 doc strings, as required by snarf-documentation.

 msdos/sedlisp.inp:
 msdos/sedlibmk.inp:
 msdos/sedleim.inp:
 msdos/sed3v2.inp:
 msdos/sed2v2.inp:
 msdos/sed1v2.inp: Update Sed scripts for Emacs 24.4.
 msdos/inttypes.h: Add PRIdMAX.
 msdos/INSTALL: Update for Emacs 24.4.
 msdos/sedadmin.inp: New file.
2014-04-16 16:27:28 +03:00
Eli Zaretskii
7a49c9d615 Fix MS-Windows build in lib-src broken by last commit.
lib-src/update-game-score.c (write_scores) [WINDOWSNT]: Use chmod
 instead of fchmod.
2014-01-22 21:38:31 +02:00
Paul Eggert
dc217d0180 Fix miscellaneous update-game-score bugs.
* configure.ac (difftime): Remove.
* lib/update-game-score.c (difftime) [!HAVE_DIFFTIME]: Remove.
(read_score) [HAVE_GETDELIM]: Don't access uninitialized storage.
(read_scores, write_scores): Check for fclose failure.
(write_scores): Use fchmod, not chmod, to avoid a race.
(lock_file): Fix test for out-of-date lock file; it was reversed.
Use ordinary subtraction rather than difftime; since we're already
assuming POSIX we don't need to worry about the possibility of
time_t being a magic cookie.
2014-01-22 11:02:41 -08:00
Paul Eggert
d70efef4a8 update-game-score fixes for -m and integer overflow
* update-game-score.c: Include inttypes.h, stdbool.h.
(min): New macro, if not already defined.
(MAX_SCORES, main): Limit the maximum number of scores only from
limits imposed by the underyling platform, instead of the
arbitrary value 200.
(struct score_entry, main, read_score, write_score):
Scores are now intmax_t, not long.
(get_user_id): Reject user names containing spaces or newlines,
as they would mess up the score file.
Allow uids that don't fit in 'long'.
Increase the size of the buffer, to avoid overrun in weird cases.
(get_prefix, main): Use bool for boolean.
(main): Rewrite expr to avoid possibility of signed integer
overflow.  Don't allow newlines in data, as this would mess up
the score file.  Check for memory allocation failure when adding
the new score, or when unlockint the file.  Implement -m.
(read_score): Check for integer overflow when reading a score.
(read_score) [!HAVE_GETDELIM]: Check for integer overflow when
data gets very long.  Check only for space to delimit names,
since that's what's done in the HAVE_GETDELIM case.
(read_scores): New parameter ALLOC.  Change counts to ptrdiff_t.
All uses changed.  Use push_score to add individual scores;
that's simpler than repeating its contents.
(score_compare_reverse): Simplify.
(push_score): New parameter SIZE.  Change counts to ptrdiff_t.
All uses changed.  Check for integer overflow of size calculation.
(sort_scores, write_scores): Change counts to ptrdiff_t.
(unlock_file): Preserve errno on success, so that storage
exhaustion is diagnosed correctly.

Fixes: debbugs:16428
2014-01-19 00:50:53 -08:00
Paul Eggert
ba3189039a Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
Eli Zaretskii
98a428c15a Fix bugs in update-game-score, on MS-Windows and elsewhere.
lib-src/update-game-score.c (read_score): Try reading a character before
 probing the stream for EOF.  Initialize score->score to zero,
 before reading and accumulating the score.
 (read_scores): Fix logic that determines which value to return.
 Close the input stream when finished reading the scores (avoids
 failures in overwriting the file with a new one on MS-Windows,
 since a file that is open cannot be deleted).
 lib-src/ntlib.h (rename): Don't undefine.
 lib-src/ntlib.c (sys_rename): New function, needed for
 update-game-score.
2013-08-05 20:09:28 +03:00
Paul Eggert
e0fdb69430 Fix some minor races in hosts lacking mkostemp.
Gnulib's emulation of mkostemp doesn't have races that Emacs's does.
* configure.ac (mkostemp): Remove check for this function;
gnulib does the check now.
(mkstemp): Remove check for this no-longer-used function.
* lib/mkostemp.c, lib/secure_getenv.c, lib/tempname.c, lib/tempname.h:
* m4/mkostemp.m4, m4/secure_getenv.m4, m4/tempname.m4:
New files, copied from Gnulib.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* admin/merge-gnulib (GNULIB_MODULES): Add mkostemp.
* lib-src/movemail.c (main):
* lib-src/update-game-score.c (write_scores):
Use mkostemp (which now works on all platforms, due to changes
in the portability layer) rather than mktemp (which has a race)
or mkstemp (which we no longer bother with).
* src/callproc.c (create_temp_file):
* src/filelock.c (create_lock_file):
Assume mkostemp, since it's now provided by Gnulib.

Fixes: debbugs:15015
2013-08-04 09:56:56 -07:00
Eli Zaretskii
7c4026b6ad Finished with lib-src compilation, except emacsclientw and emacsclient.res.
Next -- compilation in nt/, and then problems in src/.
2013-03-30 20:00:51 +03:00
Paul Eggert
0877d0dc24 Merge from emacs-24; up to 2012-12-06T01:39:03Z!monnier@iro.umontreal.ca 2013-01-02 08:13:04 -08:00
Paul Eggert
ab422c4d68 Update copyright notices for 2013. 2013-01-01 09:11:05 +00:00
Paul Eggert
49cdacdad3 Assume POSIX 1003.1-1988 or later for fcntl.h.
* admin/CPP-DEFINES (O_RDONLY, O_RDWR, HAVE_FCNTL_H): Remove.
* admin/merge-gnulib (GNULIB_MODULES): Add fcntl-h.
* configure.ac: Do not check for fcntl.h.
* lib/gnulib.mk: Regenerate.
* lib-src/movemail.c, lib-src/update-game-score.c: Assume <fcntl.h> exists.
* nt/inc/sys/socket.h (O_NONBLOCK): Rename from O_NDELAY, since the
POSIX name for this flag is O_NONBLOCK.  All uses changed.
* nt/inc/unistd.h (O_RDWR, O_NOCTTY): New macros.  Like AT_FDCWD etc.
these really should be moved to a replacement <fcntl.h> if and
when that gets implemented.  In the meantime, include <fcntl.h>
to make sure we don't override its definitions.
* src/callproc.c (relocate_fd): Assume F_DUPFD.
* src/emacs.c, src/term.c (O_RDWR): Remove.
* src/keyboard.c (tty_read_avail_input): Use O_NONBLOCK rather than
O_NDELAY, since O_NONBLOCK is the standard name for this flag.
* src/nsterm.m: Assume <fcntl.h> exists.
* src/process.c (NON_BLOCKING_CONNECT, allocate_pty, create_process)
(create_pty, Fmake_network_process, server_accept_connection)
(wait_reading_process_output, init_process_emacs):
Assume O_NONBLOCK.
(wait_reading_process_output): Put in a special case for WINDOWSNT
to mimick the older behavior where it had O_NDELAY but not O_NONBLOCK.
It's not clear this is needed, but it's a more-conservative change.
(create_process): Assume FD_CLOEXEC.
(create_process, create_pty): Assume O_NOCTTY.
* src/sysdep.c (init_sys_modes, reset_sys_modes): Assume F_SETFL.
(reset_sys_modes): Use O_NONBLOCK rather than O_NDELAY.
Omit if not DOS_NT, since F_GETFL is not defined there.
(serial_open): Assume O_NONBLOCK and O_NOCTTY.
* src/term.c: Include <fcntl.h>, for flags like O_NOCTTY.
(O_NOCTTY): Remove.
(init_tty): Assume O_IGNORE_CTTY is defined to 0 on platforms that
lack it, since gnulib guarantees this.
* src/w32.c (fcntl): Test for O_NONBLOCK rather than O_NDELAY.

Fixes: debbugs:12881
2012-11-17 14:12:47 -08:00
Paul Eggert
5ebbef1dc0 Assume strerror. 2012-07-10 22:44:06 -07:00
Paul Eggert
845ca89390 Switch from NO_RETURN to C11's _Noreturn.
Fixes: debbugs:11750
2012-06-24 10:39:14 -07:00
Paul Eggert
15142f2797 Assume less-ancient POSIX support.
* update-game-score.c: Include <getopt.h> rather than rolling our
own decls for optarg, optind, opterr.  See
<http://lists.gnu.org/archive/html/emacs-devel/2011-12/msg00720.html>.
2012-04-15 17:41:01 -07:00
Glenn Morris
acaf905b11 Add 2012 to FSF copyright years for Emacs files 2012-01-05 01:46:05 -08:00
Paul Eggert
4c36be58ca Spelling fixes. 2011-11-17 01:09:20 -08:00
Paul Eggert
0c6d656d26 * update-game-score.c: Include <limits.h>
(get_user_id): Do not assume uid fits in 'int'.  Simplify.
2011-08-28 16:59:14 -07:00
Paul Eggert
da85a02af7 Merge from trunk. 2011-07-10 23:05:57 -07:00
Andreas Schwab
ec3b5374a7 * lib-src/update-game-score.c (usage): Update usage line. 2011-07-09 12:32:42 +02:00
Paul Eggert
0e926e561c Assume freestanding C89 headers, string.h, stdlib.h. 2011-07-06 18:32:56 -07:00
Paul Eggert
f0d80d43ba update-game-score: fix bug with -r
* update-game-score.c (main): Don't set 'scores' to garbage when
-r is specified and scorecount != MAX_SCORES.  This bug was
introduced in the 2002-04-10 change, and was found with gcc
-Wstrict-overflow (GCC 4.5.2, x86-64).
2011-03-21 00:46:53 -07:00
Paul Eggert
b23b5a5b7d Declare file-scope functions and variables static if not exported.
This is more consistent, and is nicer with gcc -Wstrict-prototypes.
* ebrowse.c, emacsclient.c, fakemail.c, make-docfile.c, movemail.c:
* profile.c, test-distrib.c, update-game-score.c:
Declare non-'main' functions and variables to be static.
* ebrowse.c: Omit redundant function prototypes.
2011-02-21 10:06:25 -08:00
Glenn Morris
95df8112a0 Refill some long/short copyright headers. 2011-01-26 00:36:39 -08:00
Glenn Morris
73b0cd5003 Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
Paul Eggert
a3e44e7937 Merge from mainline. 2011-01-17 11:01:01 -08:00
Glenn Morris
0d9f702fd0 Nuke arch-tags. 2011-01-15 15:16:57 -08:00
Paul Eggert
8a1f4a98c1 Merge from mainline. 2011-01-14 10:14:17 -08:00
Stefan Monnier
77ab81d054 Merge from emacs-23 2011-01-14 12:18:41 -05:00
Paul Eggert
4004364e67 Include <unistd.h> unilaterally. 2011-01-09 00:12:35 -08:00
Glenn Morris
5df4f04cd3 Add 2011 to FSF/AIST copyright years. 2011-01-02 15:50:46 -08:00
Jan D
988e88ab11 Fix warnings produced by compiling with -Wwrite_strings (i.e. use const char *).
* b2m.c (concat, fatal): Use const char*.
(main): Don't assign labels a string literal.

* ebrowse.c (struct member): filename, def_filename is const.
(struct sym): filename, sfilename is const.
(struct kw): name is const.
(add_sym, yyerror, token_string, insert_keyword, main): Use const char*.

* emacsclient.c (message, sock_err_message, send_to_emacs)
(quote_argument, set_local_socket)
(start_daemon_and_retry_set_socket): Use const char*.

* etags.c (compressor, language, Ada_suffix, Ada_help, Asm_suffixes)
(Asm_help, default_C_suffixes, default_C_help, Cplusplus_suffixes)
(Cplusplus_help, Cjava_suffixes, Cobol_suffixes, Cstar_suffixes)
(Erlang_suffixes, Erlang_help, Forth_suffixes, Forth_help)
(Fortran_suffixes, Fortran_help, HTML_suffixes,  HTML_help)
(Lisp_suffixes, Lisp_help, Lua_suffixes, Lua_help)
(Makefile_filenames, Makefile_help, Objc_suffixes, Objc_help)
(Pascal_suffixes, Pascal_help, Perl_suffixes, Perl_interpreters)
(Perl_help, PHP_suffixes, PHP_help, plain_C_suffixses, PS_suffixes)
(PS_help, Prolog_suffixes, Prolog_help, Python_suffixes, Python_help)
(Scheme_suffixes, Scheme_help, TeX_suffixes, TeX_help, Texinfo_suffixes)
(Texinfo_help, Yacc_suffixes, Yacc_help, auto_help, none_help)
(no_lang_help, print_language_names)
(get_language_from_interpreter, get_language_from_filename)
(init, make_tag, struct C_stab_entry, write_classname, TEX_defenv)
(TEX_decode_env, nocase_tail, savestr, savenstr, fatal, pfatal)
(concat): Use const char*.

* make-docfile.c (error, fatal, scan_c_file, scan_lisp_file): Use
const char *.

* movemail.c (fatal, error, concat): Use const char *.

* pop.c (pop_multi_first, socket_connection, sendline): Use conat char*.

* pop.h (pop_multi_first): Use const char *.
(_ARGS): Remove.

* sorted-doc.c (error, fatal, states): Use const char *.

* update-game-score.c (get_prefix, write_scores, main): Use const char*.
2010-08-11 10:20:34 +02:00
Dan Nicolaescu
68441b90e9 Add NO_RETURN specifiers to functions in lib-src.
* lib-src/update-game-score.c (usage):  Add NO_RETURN specifier.
* lib-src/movemail.c (fatal, pfatal_with_name, pfatal_and_delete):
* lib-src/make-docfile.c (fatal):
* lib-src/hexl.c (usage):
* lib-src/fakemail.c (fatal):
* lib-src/etags.c (fatal, suggest_asking_for_help, pfatal):
* lib-src/emacsclient.c (fatal):
* lib-src/b2m.c (fatal): Likewise.
2010-07-24 10:18:18 -07:00
Dan Nicolaescu
0216627eb3 Remove leftover P_ macros.
* lib-src/update-game-score.c (P_): Remove macro.
* lib-src/ebrowse.c: Remove include guards.
(P_): Remove macro.
2010-07-07 22:48:57 -07:00
Dan Nicolaescu
873fbd0b84 Convert function definitions to standard C.
* lib-src/update-game-score.c: Convert function definitions to standard C.
* lib-src/sorted-doc.c:
* lib-src/profile.c:
* lib-src/pop.c:
* lib-src/movemail.c:
* lib-src/make-docfile.c:
* lib-src/hexl.c:
* lib-src/fakemail.c:
* lib-src/etags.c:
* lib-src/ebrowse.c:
* lib-src/digest-doc.c:
* lib-src/b2m.c: Likewise.
2010-07-02 17:50:23 -07:00
Jan D
f57e2426f0 Remove __P and P_ from .c and .m files and definition of P_
* lisp.h:
* atimer.h: Remove define for P_.

* alloc.c: Remove __P and P_ from .c and .m files.
* atimer.c:
* buffer.c:
* callint.c:
* category.c:
* charset.c:
* chartab.c:
* cm.c:
* coding.c:
* composite.c:
* data.c:
* dired.c:
* dispnew.c:
* doc.c:
* editfns.c:
* emacs.c:
* eval.c:
* fileio.c:
* filelock.c:
* fns.c:
* font.c:
* fontset.c:
* frame.c:
* ftfont.c:
* ftxfont.c:
* gmalloc.c:
* gtkutil.c:
* image.c:
* indent.c:
* intervals.c:
* keyboard.c:
* keymap.c:
* lread.c:
* marker.c:
* menu.c:
* minibuf.c:
* print.c:
* process.c:
* scroll.c:
* search.c:
* sound.c:
* strftime.c:
* syntax.c:
* sysdep.c:
* term.c:
* terminal.c:
* textprop.c:
* unexalpha.c:
* w32console.c:
* w32fns.c:
* w32font.c:
* w32menu.c:
* w32term.c:
* w32uniscribe.c:
* window.c:
* xdisp.c:
* xfaces.c:
* xfns.c:
* xfont.c:
* xftfont.c:
* xmenu.c:
* xselect.c:
* xterm.c: Likewise.

* ebrowse.c: Remove P_ and __P.
* etags.c:
* movemail.c:
* pop.c:
* update-game-score.c: Likewise.
2010-07-02 14:19:53 +02:00
Glenn Morris
114f9c9679 Add 2010 to copyright years. 2010-01-13 00:35:10 -08:00
Juanma Barranquero
89cc15915a Fix typo in comment. 2009-09-24 01:44:35 +00:00
Stefan Monnier
24e9e99693 (main): Sort scores before trimming them,
reported by Jason Feng <jfeng@ozbert.com> (bug#4397).
2009-09-11 19:11:07 +00:00
Glenn Morris
f5d0ac07d6 Add 2009 to copyright years. 2009-01-08 03:38:51 +00:00
Glenn Morris
294981c77c Switch to recommended form of GPLv3 permissions notice. 2008-05-09 23:19:13 +00:00
Glenn Morris
a5b68355b3 Add 2008 to copyright years. 2008-01-07 08:42:46 +00:00
Glenn Morris
4a9f99bdfb Switch license to GPLv3 or later. 2007-07-25 05:08:27 +00:00
Glenn Morris
4e6835dbc4 Add 2007 to copyright years. 2007-01-21 04:57:37 +00:00
Thien-Thi Nguyen
273dc16aaf Update years in copyright notice; nfc. 2006-02-06 11:28:28 +00:00
Thien-Thi Nguyen
92b47a4a99 Update years in copyright notice; nfc. 2005-08-07 10:56:27 +00:00
Lute Kamstra
364c38d3af Update FSF's address. 2005-07-04 15:47:28 +00:00
Thien-Thi Nguyen
65396510c3 Throughout, replace 0 destined for exit' arg with EXIT_SUCCESS'.
Likewise, replace 1 with `EXIT_FAILURE'.
(main): Use `EXIT_SUCCESS' or `EXIT_FAILURE' for return value.
2004-05-08 15:26:33 +00:00
Miles Bader
ab5796a9f9 Add arch taglines 2003-09-01 15:45:59 +00:00
Dave Love
1d28afaf27 (difftime) [!HAVE_DIFFTIME]: Define.
(strerror) [!HAVE_STRERROR && !WINDOWSNT]: New.
2003-05-22 20:01:19 +00:00
Juanma Barranquero
ee435bae30 (read_scores): Fix corruption of score files. 2003-04-27 11:22:16 +00:00