1. 15 Apr, 2019 1 commit
    • Eli Zaretskii's avatar
      Fix the MSDOS build when running under CWSDPMI · 70ec3928
      Eli Zaretskii authored
      * src/msdos.c (the_only_tty_output): Define.
      * src/msdos.h (the_only_tty_output): Declare.
      * src/frame.c (make_terminal_frame) [MSDOS]:
      * src/dispnew.c (init_display) [MSDOS]: Set up
      f->output_data.tty pointer using the_only_tty_output, before
      dereferencing the pointer.  This prevents crashes with DPMI
      servers that provide NULL pointer protection.
      70ec3928
  2. 01 Jan, 2019 1 commit
  3. 08 Aug, 2018 1 commit
    • Tom Tromey's avatar
      More macro renamings for bignum · d1ec3a0a
      Tom Tromey authored
      * src/alloc.c, src/bidi.c, src/buffer.c, src/buffer.h, src/bytecode.c,
      src/callint.c, src/callproc.c, src/casefiddle.c, src/casetab.c,
      src/category.c, src/ccl.c, src/character.c, src/character.h,
      src/charset.c, src/charset.h, src/chartab.c, src/cmds.c, src/coding.c,
      src/composite.c, src/composite.h, src/data.c, src/dbusbind.c,
      src/decompress.c, src/dired.c, src/dispextern.h, src/dispnew.c,
      src/disptab.h, src/doc.c, src/dosfns.c, src/editfns.c,
      src/emacs-module.c, src/emacs.c, src/eval.c, src/fileio.c,
      src/floatfns.c, src/fns.c, src/font.c, src/font.h, src/fontset.c,
      src/frame.c, src/frame.h, src/fringe.c, src/ftcrfont.c, src/ftfont.c,
      src/gfilenotify.c, src/gnutls.c, src/gtkutil.c, src/image.c,
      src/indent.c, src/insdel.c, src/intervals.c, src/json.c,
      src/keyboard.c, 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/syntax.h, src/sysdep.c, src/term.c,
      src/termhooks.h, src/textprop.c, src/undo.c, src/w32.c,
      src/w32console.c, src/w32fns.c, src/w32font.c, src/w32inevt.c,
      src/w32proc.c, src/w32select.c, src/w32term.c, src/w32term.h,
      src/w32uniscribe.c, src/window.c, src/xdisp.c, src/xfaces.c,
      src/xfns.c, src/xfont.c, src/xftfont.c, src/xmenu.c, src/xml.c,
      src/xrdb.c, src/xselect.c, src/xsettings.c, src/xterm.c, src/xwidget.c
      Rename XINT->XFIXNUM, XFASTINT->XFIXNAT, XUINT->XUFIXNUM.
      d1ec3a0a
  4. 13 Jul, 2018 1 commit
    • Tom Tromey's avatar
      Rename integerp->fixnum, etc, in preparation for bignums · 42fe787b
      Tom Tromey authored
      * 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.
      42fe787b
  5. 08 Jun, 2018 1 commit
    • Daniel Colascione's avatar
      Add support for per-window face remapping · 9d447fa1
      Daniel Colascione authored
      Extend face specifications to support the notion of filtering to a
      specific context and add a filter that limits a face specification to
      windows having a certain parameter.
      
      * src/xfaces.c:
      (evaluate_face_filter,filter_face_ref): New functions.
      (merge_face_ref): Ignore filtered face specifications.
      (Fx_list_fonts,get_lface_attributes,merge_face_vectors)
      (merge_named_face,merge_face_ref,merge_face_ref)
      (Finternal_merge_in_global_face,Fface_font,lookup_named_face)
      (lookup_basic_face,Fface_attributes_as_vector)
      (x_supports_face_attributes_p)
      (Fdisplay_supports_face_attributes_p,realize_named_face)
      (compute_char_face,face_at_buffer_position)
      (face_at_buffer_position,face_at_buffer_position)
      (face_at_buffer_position)
      (face_for_overlay_string,face_at_string_position,merge_faces):
      Pass window to face machinery.
      (syms_of_xfaces): Add :window and :filtered
      
      * src/xdisp.c (init_iterator, handle_face_prop)
      (handle_single_display_spec, merge_escape_glyph_face)
      (merge_glyphless_glyph_face, get_next_display_element)
      (next_element_from_display_vector, append_space_for_newline)
      (extend_face_to_end_of_line,highlight_trailing_whitespace)
      (maybe_produce_line_number)
      (display_line, calc_line_height_property): Pass window to
      face machinery.
      
      * src/term.c (tty_menu_activate): Adjust to new face core
      function signature.
      
      * src/msdos.c (XMenuActivate): Adjust to new face core
      function signature.
      
      * src/fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
      Pass window to face machinery.
      
      * src/font.c (font_range, Finternal_char_font): Pass window to
      face machinery.
      
      * src/dispnew.c (spec_glyph_lookup_face): Pass window to
      face machinery.
      
      * src/dispextern.h:
      (lookup_named_face,lookup_basic_face)
      (lookup_derived_face,merge_faces):
      Add struct window arguments to prototypes.
      9d447fa1
  6. 01 Jan, 2018 1 commit
  7. 18 Oct, 2017 1 commit
    • Eli Zaretskii's avatar
      Fix the MSDOS build. · 2f7163fb
      Eli Zaretskii authored
      * msdos/sed1v2.inp (GETADDRINFO_A_LIBS, LIBLCMS2, XDBE_LIBS)
      (XDBE_FLAGS, HYBRID_MALLOC, LIBSYSTEMD_CFLAGS)
      (LIBSYSTEMD_LIBS): Edit to empty.
      (LIBRESOLV, DEPFLAGS, MKDEPDIR, YMF_PASS_LDFLAGS)
      (PRE_EDIT_LDFLAGS, POST_EDIT_LDFLAGS): Remove editing.
      Remove editing of lines that are no longer present in
      src/Makefile.in.
      * msdos/sed2v2.inp (NEED_MKTIME_INTERNAL)
      (NEED_MKTIME_WORKING): Define to 1.
      (HAVE_STRUCT_DIRENT_D_TYPE): Define to 1 for
      DJGPP >= 2.05.
      (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 1.
      Define PACKAGE_VERSION, not VERSION.
      (FLEXIBLE_ARRAY_MEMBER): Define to empty.
      (HAVE_DECL_*_UNLOCKED): Define to 0.
      (HAVE___BUILTIN_FRAME_ADDRESS): Define to 1.
      (PENDING_*): Don't define, as Gnulib no longer supports that.
      Instead, define _IOERR as it is in libc/file.h.
      * msdos/sed3v2.inp: Use $(CURDIR) instead of $(shell cd) to
      determine the current directory.
      (UPDATE_MANIFEST, UTILITIES): Don't edit.
      * msdos/sedlisp.inp (FIND_DELETE): Edit to "-delete".
      * msdos/sedlibmk.inp (AUTO_DEPEND): Define to yes.
      (HYBRID_MALLOC): Edit to empty.
      (am__cd): Don't edit.
      (../config.status): Replaces $(top_builddir)/config.status.
      Define OMIT_GNULIB_MODULE_foo = true for modules not built for
      MS-DOS.  Convert GL_GENERATE_xxx_H_TRUE and
      GL_GENERATE_xxx_H_FALSE into values of GL_GENERATE_xxx_H.
      * msdos/mainmake.v2 (src): Use 'compile-one-process', and make
      the command line shorter to fit into 126-char limit of
      command.com.
      * config.bat: Generate src/deps/*.d files.  Rename more files
      like djtar on plain DOS would.
      Don't rename src/dir.h: it is long gone.  Edit
      lib/gnulib.mk.in using the same scripts as for
      lib/Makefile.in.
      * msdos/depfiles.bat: Create *.d files, not *.Po.
      
      * src/thread.c (Fmake_thread) [!THREADS_ENABLED]: Improve the
      error message.
      * src/thread.h [MSDOS]: Include <signal.h>.
      * src/sysselect.h (select) [MSDOS]: Undefine, to avoid
      compilation errors.
      * src/sysdep.c (block_interrupt_signal, restore_signal_mask):
      Expose to MSDOS build.
      * src/process.c (update_processes_for_thread_death)
      [!subprocess]: No-op implementation.
      [HAVE_SETRLIMIT]: Move inclusion of sys/resource.h and
      declaration of nofile_limit outside "#ifdef subprocesses", as
      it's needed for MSDOS.
      * src/msdos.c (faccessat): Declare fullname[].
      * src/msdos.h (ENOTSUP): Define to be identical to ENOSYS.
      Include termhooks.h.
      * src/conf_post.h [WINDOWSNT]: Include ms-w32.h only on
      WINDOWSNT, not DOS_NT.
      
      * admin/admin.el (set-version): Set version on PACKAGE_VERSION.
      2f7163fb
  8. 30 Sep, 2017 1 commit
  9. 16 Sep, 2017 1 commit
    • Eli Zaretskii's avatar
      Increment Emacs version to 27.0.50 · 977cd6cb
      Eli Zaretskii authored
      * README:
      * configure.ac:
      * nt/README.W32:
      * src/msdos.c (internal_terminal_init):
      * msdos/sed2v2.inp:
      * etc/refcards/ru-refcard.tex: Increment Emacs version to 27.0.50.
      * etc/NEWS: New file with sections for Emacs 27.1.
      * etc/NEWS.26: Renamed from etc/NEWS.
      977cd6cb
  10. 12 Aug, 2017 1 commit
  11. 01 Jan, 2017 1 commit
  12. 01 Oct, 2016 1 commit
    • Eli Zaretskii's avatar
      Bump Emacs version to 26.0.50 · 787b525f
      Eli Zaretskii authored
      * README:
      * configure.ac:
      * etc/NEWS:
      * etc/refcards/ru-refcard.tex:
      * msdos/sed2v2.inp:
      * src/msdos.c: Increment Emacs version to 26.0.50.
      * etc/NEWS.25: New file, copied from etc/NEWS with post-25.1 stuff
      moved to etc/NEWS.
      787b525f
  13. 02 Jul, 2016 1 commit
    • Eli Zaretskii's avatar
      Rename FACE_OPT_FROM_ID to FACE_FROM_ID_OR_NULL · 55d38fc8
      Eli Zaretskii authored
      * src/dispextern.h (FACE_FROM_ID_OR_NULL): Renamed from
      FACE_OPT_FROM_ID; all callers changed.
      * src/xdisp.c (extend_face_to_end_of_line): Call FACE_FROM_ID, not
      FACE_FROM_ID_OR_NULL, as the resulting face is immediately
      dereferenced.
      (fill_gstring_glyph_string): Call FACE_FROM_ID, not
      FACE_FROM_ID_OR_NULL, as the resulting face will be dereferenced
      when the glyph string is drawn.
      (BUILD_COMPOSITE_GLYPH_STRING): Call FACE_FROM_ID, not
      FACE_FROM_ID_OR_NULL, as the resulting face will be dereferenced
      in fill_composite_glyph_string.
      (calc_line_height_property): Call FACE_FROM_ID_OR_NULL rather that
      FACE_FROM_ID, since the function and its caller can cope with that
      situation.  Conflate 3 tests of missing face or font into just
      one.
      * src/xfaces.c (Fx_list_fonts, Fface_font, lookup_face): Call
      FACE_FROM_ID_OR_NULL rather that FACE_FROM_ID, since these
      functions can cope with that situation.
      (lookup_derived_face): Don't call FACE_FROM_ID if the result will
      not be used.
      * src/w32console.c (w32_face_attributes): Remove redundant 'eassert'.
      55d38fc8
  14. 18 May, 2016 1 commit
    • Paul Eggert's avatar
      Port --enable-gcc-warnings to GCC 6.1 · 374f6a5f
      Paul Eggert authored
      * configure.ac (WERROR_CFLAGS): Omit -Wunused-const-variable=2.
      * lib-src/etags.c (LOOKING_AT, LOOKING_AT_NOCASE):
      Omit test whether pointer plus a constant equals a null pointer.
      * src/alloc.c (compact_small_strings):
      Avoid pointer arithmetic on null pointers.
      * src/alloc.c (mark_face_cache):
      * src/fontset.c (free_realized_fontsets, Fset_fontset_font):
      * src/fringe.c (draw_fringe_bitmap_1)
      (Fset_fringe_bitmap_face):
      * src/macfont.m (macfont_draw):
      * src/msdos.c (IT_set_face, IT_clear_screen):
      * src/nsfont.m (nsfont_draw):
      * src/nsterm.h (FRAME_DEFAULT_FACE):
      * src/nsterm.m (ns_draw_window_cursor)
      (ns_draw_vertical_window_border, ns_draw_window_divider)
      (ns_dumpglyphs_box_or_relief)
      (ns_maybe_dumpglyphs_background, ns_dumpglyphs_image)
      (ns_dumpglyphs_stretch):
      * src/w32term.c (w32_draw_vertical_window_border)
      (w32_draw_window_divider, x_set_mouse_face_gc):
      * src/xdisp.c (estimate_mode_line_height, init_iterator)
      (handle_face_prop, handle_single_display_spec, pop_it)
      (CHAR_COMPOSED_P, get_next_display_element)
      (next_element_from_display_vector, extend_face_to_end_of_line)
      (fill_gstring_glyph_string,BUILD_COMPOSITE_GLYPH_STRING):
      * src/xfaces.c (Finternal_merge_in_global_face, Fface_font)
      (lookup_named_face):
      * src/xterm.c (x_draw_vertical_window_border)
      (x_draw_window_divider, x_set_mouse_face_gc):
      Prefer FACE_OPT_FROM_ID to FACE_FROM_ID when the result might be null.
      * src/xterm.c (try_window_id):
      Redo loop to convince GCC 6.1 that it is null pointer safe.
      (x_color_cells):
      Use eassume as necessary to pacify GCC 6.1.
      * src/dispextern.h (FACE_FROM_ID, IMAGE_FROM_ID): Now returns non-null.
      (FACE_OPT_FROM_ID, IMAGE_OPT_FROM_ID): New macro, with the old
      behavior of the non-_OPT macro, to be used when the result
      might be a null pointer.
      * src/dispnew.c (buffer_posn_from_coords, marginal_area_string)
      [HAVE_WINDOW_SYSTEM]:
      * src/intervals.h (INTERVAL_WRITABLE_P):
      * src/term.c (turn_off_face):
      * src/xdisp.c (get_glyph_face_and_encoding, fill_image_glyph_string)
      (produce_image_glyph, produce_xwidget_glyph):
      * src/xfaces.c (lookup_named_face):
      Remove unnecessary test for null pointer.
      * src/keyboard.c (read_char): Suppress bogus -Wclobbered warning.
      * src/process.c (would_block): New function.
      (server_accept_connection, wait_reading_process_output, send_process):
      Use it.
      * src/xdisp.c (get_window_cursor_type, note_mouse_highlight):
      Prefer IMAGE_OPT_FROM_ID to IMAGE_FROM_ID when the result
      might be null.
      374f6a5f
  15. 30 Apr, 2016 1 commit
    • Eli Zaretskii's avatar
      Fix the MSDOS build · ccdaf04c
      Eli Zaretskii authored
      * 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.
      ccdaf04c
  16. 10 Mar, 2016 1 commit
    • Paul Eggert's avatar
      Rework C source files to avoid ^( · 7352c6c6
      Paul Eggert authored
      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.
      7352c6c6
  17. 01 Jan, 2016 1 commit
  18. 28 Jan, 2015 1 commit
    • Paul Eggert's avatar
      Use bool, not int, to track face changes · cdee38ab
      Paul Eggert authored
      * xfaces.c (face_change): Rename from face_change_count, and
      change from int to bool.  The var is now true (instead of nonzero)
      if attributes have changed; this is simpler.  All uses changed.
      Fixes: bug#19698
      cdee38ab
  19. 01 Jan, 2015 2 commits
  20. 29 Sep, 2014 1 commit
    • Eli Zaretskii's avatar
      Follow-up to renaming v24.5 to 25.1. · 2b3d968a
      Eli Zaretskii authored
       README: Bump version to 25.0.50.
       configure.ac (AC_INIT): Bump version to 25.0.50.
      
       nt/makefile.w32-in (VERSION): Bump version to 25.0.50.
       nt/emacsclient.rc: Bump version to 25.0.50.
       nt/emacs.rc: Bump version to 25.0.50.
       nt/config.nt (VERSION): Bump version to 25.0.50.
      
       msdos/sed2v2.inp: Bump version to 25.0.50.
      
       etc/refcards/ru-refcard.tex: Bump version to 25.0.50.
       etc/refcards/emacsver.tex: Bump version to 25.0.50.
      
       src/msdos.c (internal_terminal_init): Bump version to 25.
      
       doc/man/emacs.1: Bump version to 25.0.50.
      
       doc/emacs/emacsver.texi (EMACSVER): Bump to 20.0.50.
      2b3d968a
  21. 10 Aug, 2014 1 commit
  22. 09 Aug, 2014 1 commit
  23. 04 Jun, 2014 1 commit
    • Dmitry Antipov's avatar
      Use terminal-specific hooks to display menus. · cfd794af
      Dmitry Antipov authored
      * termhooks.h (struct terminal): New field menu_show_hook.
      * menu.h (<anonymous enum>): Bit flags for menu hooks.
      (x_menu_show, w32_menu_show, ns_menu_show, tty_menu_show):
      Adjust prototypes.
      * menu.c (Fx_popup_menu): Use bit flags and menu_show_hook.
      * nsmenu.m (ns_menu_show):
      * w32menu.c (w32_menu_show):
      * xmenu.c (x_menu_show):
      * term.c (tty_menu_show): Adjust to use bit flags.
      (set_tty_hooks): Set menu_show_hook.
      * xterm.c (x_create_terminal):
      * nsterm.m (ns_create_terminal):
      * msdos.c (initialize_msdos_display):
      * w32term.c (w32_create_terminal): Likewise.
      cfd794af
  24. 16 Apr, 2014 1 commit
    • Eli Zaretskii's avatar
      Fix the MSDOS build. · bf6b4923
      Eli Zaretskii authored
       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.
      bf6b4923
  25. 03 Apr, 2014 2 commits
  26. 01 Jan, 2014 1 commit
  27. 04 Nov, 2013 1 commit
    • Paul Eggert's avatar
      Port to stricter C99 platforms. · 91f2d272
      Paul Eggert authored
      Especially, C99 prohibits nesting a struct X inside struct Y if
      struct X has a flexible array member.
      Also, merge from gnulib, incorporating:
      2013-11-03 intprops: port to Oracle Studio c99
      * lib/intprops.h: Update from gnulib.
      * src/alloc.c (struct sdata): New type.
      (sdata): Implement in terms of struct sdata.
      Remove u member; all uses replaced by next_vector, set_next_vector.
      (SDATA_SELECTOR, SDATA_DATA, SDATA_DATA_OFFSET): Adjust to sdata change.
      (SDATA_DATA_OFFSET): Now a constant, not a macro.
      (struct sblock): Rename first_data member to data, which is now
      a flexible array member.  All uses changed.
      (next_vector, set_next_vector, large_vector_vec): New functions.
      (vector_alignment): New constant.
      (roundup_size): Make it a multiple of ALIGNOF_STRUCT_LISP_VECTOR, too.
      (struct large-vector): Now merely a NEXT member, since the old approach
      ran afoul of stricter C99.  All uses changed to use
      large_vector_vec or large_vector_offset.
      (large_vector_offset): New constant.
      * src/dispnew.c: Include tparam.h, for tgetent.
      Do not include term.h; no longer needed.
      * src/gnutls.c (Fgnutls_boot): Don't continue after calling a _Noreturn.
      * src/lisp.h (ENUM_BF) [__SUNPRO_C && __STDC__]: Use unsigned int.
      (struct Lisp_Vector): Use a flexible array member for contents,
      instead of a union with a member that is an array of size 1.
      All uses changed.
      (ALIGNOF_STRUCT_LISP_VECTOR): New constant, to make up for the
      fact that the struct no longer contains a union.
      (struct Lisp_Misc_Any, struct Lisp_Marker, struct Lisp_Overlay)
      (struct Lisp_Save_Value, struct Lisp_Free):
      Use unsigned, not int, for spacers, to avoid c99 warning.
      (union specbinding): Use unsigned, not bool, for bitfield, as
      bool is not portable to pre-C99 hosts.
      91f2d272
  28. 02 Nov, 2013 1 commit
  29. 24 Sep, 2013 1 commit
    • Dmitry Antipov's avatar
      Use union for the payload of struct Lisp_Vector. · d6d9cbc1
      Dmitry Antipov authored
      This helps to avoid a few glitches dictated by C's aliasing rules.
      * lisp.h (struct Lisp_Vector): Use union for next and
      contents member.  Adjust comment.  Change related users.
      * alloc.c (next_in_free_list, set_next_in_free_list): Remove.
      Related users changed.
      * buffer.c, bytecode.c, ccl.c, character.h, chartab.c, composite.c:
      * composite.h, disptab.h, fns.c, fontset.c, indent.c, keyboard.c:
      * lread.c, msdos.c, process.c, w32menu.c, window.c, xdisp.c:
      * xfaces.c, xfont.c, xmenu.c: Related users changed.
      d6d9cbc1
  30. 23 Sep, 2013 1 commit
    • Dmitry Antipov's avatar
      * dispnew.c (frame_garbaged, selected_frame, last_nonminibuf_frame): · 5492865b
      Dmitry Antipov authored
      Move to...
      * frame.c (frame_garbaged, selected_frame, last_nonminibuf_frame):
      ...this file and convert the latter to static.  Adjust comment.
      (make_initial_frame):
      * window.c (init_window_once): Adjust user.
      * frame.h (last_nonminibuf_frame): Remove declaration.
      * lisp.h (selected_frame): Likewise.
      * msdos.c (the_only_display_info): Adjust comment.
      5492865b
  31. 13 Sep, 2013 1 commit
    • Dmitry Antipov's avatar
      Unify FRAME_window_system_DISPLAY_INFO macros between all ports. · aad3612f
      Dmitry Antipov authored
      All of them are replaced with FRAME_DISPLAY_INFO, defined in
      each port to reference the port-specific window system data.
      * msdos.h (FRAME_X_DISPLAY_INFO): Remove.
      (FRAME_DISPLAY_INFO): Define.
      * w32term.h (FRAME_W32_DISPLAY_INFO, FRAME_X_DISPLAY_INFO): Remove.
      (FRAME_DISPLAY_INFO): Define.  Adjust users.
      * xterm.h (FRAME_X_DISPLAY_INFO): Remove.
      (FRAME_DISPLAY_INFO): Define.  Adjust users.
      * frame.h (FRAME_RES_X, FRAME_RES_Y): Unify.
      * font.c, frame.c, gtkutil.c, image.c, menu.c, msdos.c, nsfns.m:
      * nsfont.m, nsterm.m, w32fns.c, w32font.c, w32menu.c, w32term.c:
      * w32xfns.c, widget.c, xdisp.c, xfaces.c, xfns.c, xfont.c, xmenu.c:
      * xselect.c, xterm.c: All related users changed.
      aad3612f
  32. 02 Sep, 2013 2 commits
    • Dmitry Antipov's avatar
      * msdos.c (last_mouse_window): Move to... · 1fccc530
      Dmitry Antipov authored
      (dos_rawgetc): ...this function and adjust comment.
      * nsterm.m (last_window): Rename to last_mouse_window, move to...
      (mouseMoved): ...this function and adjust comment.
      * w32term.c (last_window): Likewise with...
      (w32_read_socket): ...this function.
      * xterm.c (last_window): Likewise with...
      (handle_one_xevent): ...this function.
      1fccc530
    • Dmitry Antipov's avatar
      * msdos.c (IT_set_terminal_window): Remove no-op. · 0c7f856e
      Dmitry Antipov authored
      (initialize_msdos_display): Adjust terminal setup.
      * w32console.c (w32con_set_terminal_window): Remove no-op.
      (initialize_w32_display): Adjust terminal setup.
      * w32term.c (w32_set_terminal_window): Remove no-op.
      (w32_create_terminal): Adjust terminal setup.
      * xterm.c (XTset_terminal_window): Remove no-op.
      (x_create_terminal): Adjust terminal setup.
      0c7f856e
  33. 27 Aug, 2013 2 commits
    • Paul Eggert's avatar
      Simplify EMACS_TIME-related code. · 43aac990
      Paul Eggert authored
      This portability layer is no longer needed, since Emacs has been
      using struct timespec as a portability layer for some time.
      Merge from gnulib, incorporating:
      2013-08-27 timespec: new convenience constants and function
      * src/atimer.h, src/buffer.h, src/dispextern.h, src/xgselect.h:
      Include <time.h> rather than "systime.h"; that's all that's needed now.
      * src/dispnew.c: Include <timespec.h> rather than "systime.h";
      that's all that's needed now.
      * src/systime.h (EMACS_TIME): Remove.  All uses changed to struct timespec.
      (EMACS_TIME_RESOLUTION): Remove.  All uses changed to
      TIMESPEC_RESOLUTION.
      (LOG10_EMACS_TIME_RESOLUTION): Remove.  All uses changed to
      LOG10_TIMESPEC_RESOLUTION.
      (EMACS_SECS, emacs_secs_addr): Remove.  All uses changed to tv_sec.
      (EMACS_NSECS): Remove.  All uses changed to tv_nsec.
      (make_emacs_time): Remove.  All used changed to make_timespec.
      (invalid_timespec): Rename from invalid_emacs_time.  All uses changed.
      (current_timespec): Rename from current_emacs_time.  All uses changed.
      (add_emacs_time): Remove.  All uses changed to timespec_add.
      (sub_emacs_time): Remove.  All uses change dot timespec_sub.
      (EMACS_TIME_SIGN): Remove.  All uses changed to timespec_sign.
      (timespec_valid_p): Rename from EMACS_TIME_VALID_P.  All uses changed.
      (EMACS_TIME_FROM_DOUBLE): Remove.  All uses changed to dtotimespec.
      (EMACS_TIME_TO_DOUBLE): Remove.  All uses changed to timespectod.
      (current_timespec): Rename from current_emacs_time.  All uses changed.
      (EMACS_TIME_EQ, EMACS_TIME_LT, EMACS_TIME_LE): Remove.  All uses
      changed to timespec_cmp.
      * src/xgselect.c: Include <timespec.h>, since our .h files don't.
      43aac990
    • Dmitry Antipov's avatar
      * lisp.h (Mouse_HLInfo): Move from here... · 9fed9729
      Dmitry Antipov authored
      * dispextern.h (Mouse_HLInfo): ...to here and offload lisp.h.
      (reset_mouse_highlight): New function.
      * msdos.c (dos_set_window_size, IT_update_begin)
      (internal_terminal_init):
      * nsterm.m (ns_update_window_end, x_free_frame_resources)
      (ns_initialize_display_info):
      * w32console.c (initialize_w32_display):
      * w32term.c (x_update_window_end, x_free_frame_resources)
      (w32_initialize_display_info):
      * xterm.c (x_update_window_end, x_free_frame_resources, x_term_init):
      * window.c (Fdelete_other_windows_internal):
      * xdisp.c (clear_mouse_face, cancel_mouse_face): Use it.
      * termchar.h (toplevel):
      * xterm.h (toplevel): Include dispextern.h.
      9fed9729
  34. 03 Aug, 2013 1 commit
    • Dmitry Antipov's avatar
      Drop FRAME_PTR typedef. · a10c8269
      Dmitry Antipov authored
      * composite.c, font.c, font.h, fontset.c, fontset.h, frame.c, frame.h:
      * ftfont.c, ftxfont.c, gtkutil.c, gtkutil.h, image.c, keyboard.c:
      * menu.c, menu.h, msdos.c, nsfns.m, nsfont.m, nsmenu.m, nsterm.h:
      * nsterm.m, scroll.c, term.c, w32fns.c, w32font.c, w32font.h:
      * w32inevt.c, w32inevt.h, w32menu.c, w32notify.c, w32term.c, w32term.h:
      * w32uniscribe.c, w32xfns.c, widget.c, window.c, xdisp.c, xfaces.c:
      * xfns.c, xfont.c, xftfont.c, xmenu.c, xselect.c, xterm.c:
      All related users changed.
      a10c8269
  35. 31 Jul, 2013 1 commit
    • Dmitry Antipov's avatar
      Drop unnecessary functions that deals with frame pixel size. · f435830e
      Dmitry Antipov authored
      * frame.h, msdos.h, w32term.h, xterm.h (x_pixel_width)
      (x_pixel_height): Drop prototypes.
      * msdos.c, nsfns.m, w32fns.c, xfns.c (x_pixel_width)
      (x_pixel_height): Drop implementations.
      * frame.c (Fframe_pixel_height): Use FRAME_PIXEL_HEIGHT
      which should be always valid for window frame.
      (Frame_pixel_width): Likewise with FRAME_PIXEL_WIDTH.
      * w32menu.c (Fx_popup_dialog):
      * xmenu.c (Fx_popup_dialog): Likewise for both.
      f435830e
  36. 07 Apr, 2013 1 commit
    • Dmitry Antipov's avatar
      Get rid of some platform-specific functions examining window · 7452b7bd
      Dmitry Antipov authored
      system and its capabilities.  This is a partial rework of the
      2013-04-05 change.
      * lisp.h (have_menus_p): Remove prototype.  This function is
      replaced with platform-independent window_system_available.
      (check_window_system): Move to...
      * frame.h (decode_window_system_frame, window_system_available):
      ...here, add new prototypes.
      * frame.c (window_system_available, decode_window_system_frame):
      New functions.
      (check_window_system): Platform-independent now.
      * xterm.h (x_in_use): Remove declaration.
      (check_x_frame):
      * w32term.h (check_x_frame):
      * nsterm.h (check_x_frame): Remove prototypes.  This function
      is replaced with platform-independent decode_window_system_frame.
      * msdos.c (have_menus_p): Remove.
      * nsfns.m (check_window_system, have_menus_p, check_ns_frame):
      Remove platform-specific functions.  Use check_window_system,
      decode_window_system_frame and check_ns_display_info where
      appropriate.  Minor style and comment tweaks.
      * w32fns.c (w32_in_use, check_window_system, have_menus_p)
      (check_x_frame): Likewise.
      * xfns.c (x_in_use, check_window_system, have_menus_p, check_x_frame):
      Likewise.
      * fileio.c, fns.c, font.c, fontset.c, image.c, menu.c, nsmenu.m:
      * nsselect.m, nsterm.m, w32font.c, w32menu.c, xfaces.c, xgselect.c:
      * xmenu.c, xselect.c: All related users changed.
      7452b7bd