• Paul Eggert's avatar
    Use binary-io module, O_BINARY, and "b" flag. · ba1ed52f
    Paul Eggert authored
    * admin/merge-gnulib (GNULIB_MODULES): Add binary-io.  It was already
    present implicitly; this just makes the dependence explicit.
    * lib-src/etags.c, lib-src/hexl.c, lib-src/make-docfile.c:
    Include binary-io.h instead of fcntl.h and/or io.h.
    (main): Use set_binary_mode or SET_BINARY
    in place of handcrafted code.
    * lib-src/etags.c (main) [DOS_NT]:
    * lib-src/movemail.c (main) [WINDOWSNT]:
    Don't mess with _fmode.
    * lib-src/etags.c (main, process_file_name, analyse_regex):
    Use fopen/popen's "b" flag instead.
    * lib-src/movemail.c (main, popmail): Use open/lk_open/mkostemp's O_BINARY
    instead.
    * src/callproc.c (create_temp_file): Use mkostemp's O_BINARY flag.
    * src/emacs.c [MSDOS]:
    * src/emacs.c (main) [DOS_NT]: Don't mess with _fmode.
    (main) [MSDOS]: Use SET_BINARY instead of setmode.
    * src/minibuf.c: Include binary-io.h instead of fcntl.h.
    (read_minibuf_noninteractive):
    Use set_binary_mode instead of handcrafted code.
    Don't call emacs_set_tty if emacs_get_tty failed.
    * src/sysdep.c, src/systty.h (emacs_get_tty): Return int, not void.
    * src/sysdep.c (emacs_open, emacs_pipe): Use O_BINARY.
    * src/w32.c (pipe2): Adjust eassert to include O_BINARY.
    
    Fixes: debbugs:18006
    ba1ed52f
etags.c 171 KB