1. 03 Jun, 2013 3 commits
    • Stefan Monnier's avatar
      * src/eval.c (backtrace_p, backtrace_top, backtrace_next): Export them to · a8a7c5f6
      Stefan Monnier authored
      .gdbinit.
      * src/data.c (pure_write_error): Add `object' argument.
      * src/puresize.h (CHECK_IMPURE): Use it.
      * src/keyboard.c (safe_run_hooks_error): Improve error message.
      a8a7c5f6
    • Michael Albinus's avatar
      * configure.ac (file-notification): New option, replaces inotify option. · c9628c79
      Michael Albinus authored
      (HAVE_W32): Remove w32notify.o.
      (with_file_notification): Add checks for glib and w32. Adapt check
      for inotify.
      (Summary): Add entry for file notification.
      
      * autogen/config.in: Add entries for HAVE_GFILENOTIFY,
      HAVE_W32NOTIFY and USE_FILE_NOTIFY.
      
      * lisp/autorevert.el (auto-revert-notify-enabled)
      (auto-revert-notify-rm-watch, auto-revert-notify-add-watch)
      (auto-revert-notify-event-p, auto-revert-notify-event-file-name)
      (auto-revert-notify-handler): Handle also gfilenotify.
      
      * lisp/subr.el: (file-notify-handle-event): New defun. Replacing ...
      (inotify-event-p, inotify-handle-event, w32notify-handle-event):
      Removed.
      
      * src/Makefile.in (NOTIFY_OBJ): New variable.
      (base_obj): Replace inotify.o by $(NOTIFY_OBJ).
      
      * src/emacs.c (main): Use HAVE_W32NOTIFY to wrap respective code.
      Call syms_of_gfilenotify.
      
      * src/gfilenotify.c: New file.
      
      * src/keyboard.c (Qfile_notify): New variable.  Replaces Qfile_inotify
      and Qfile_w32notify.
      (top): Wrap respective code by HAVE_GFILENOTIFY, HAVE_INOTIFY,
      HAVE_W32NOTIFY and USE_FILE_NOTIFY.
      
      * src/lisp.h: Declare syms_of_gfilenotify.
      
      * src/termhooks.h (e): Wrap enum by USE_FILE_NOTIFY.
      c9628c79
    • Stefan Monnier's avatar
      Merge the specpdl and backtrace stacks. Make the structure of the · 2f592f95
      Stefan Monnier authored
      specpdl entries more obvious via a tagged union of structs.
      * src/lisp.h (BITS_PER_PTRDIFF_T): New constant.
      (enum specbind_tag): New enum.
      (struct specbinding): Make it a tagged union of structs.
      Add a case for backtrace records.
      (specpdl_symbol, specpdl_old_value, specpdl_where, specpdl_arg)
      (specpdl_func, backtrace_function, backtrace_nargs, backtrace_args)
      (backtrace_debug_on_exit): New accessors.
      (struct backtrace): Remove.
      (struct catchtag): Remove backlist field.
      * src/data.c (let_shadows_buffer_binding_p, let_shadows_global_binding_p):
      Move to eval.c.
      (Flocal_variable_p): Speed up the common case where the binding is
      already loaded.
      * src/eval.c (backtrace_list): Remove.
      (set_specpdl_symbol, set_specpdl_old_value): Remove.
      (set_backtrace_args, set_backtrace_nargs)
      (set_backtrace_debug_on_exit, backtrace_p, backtrace_top)
      (backtrace_next): New functions.
      (Fdefvaralias, Fdefvar): Adjust to new specpdl format.
      (unwind_to_catch, internal_lisp_condition_case)
      (internal_condition_case, internal_condition_case_1)
      (internal_condition_case_2, internal_condition_case_n): Don't bother
      with backtrace_list any more.
      (Fsignal): Adjust to new backtrace format.
      (grow_specpdl): Move up.
      (record_in_backtrace): New function.
      (eval_sub, Ffuncall): Use it.
      (apply_lambda): Adjust to new backtrace format.
      (let_shadows_buffer_binding_p, let_shadows_global_binding_p): Move from
      data.c.
      (specbind): Adjust to new specpdl format.  Simplify.
      (record_unwind_protect, unbind_to): Adjust to new specpdl format.
      (Fbacktrace_debug, Fbacktrace, Fbacktrace_frame): Adjust to new
      backtrace format.
      (mark_backtrace): Remove.
      (mark_specpdl, get_backtrace, backtrace_top_function): New functions.
      * src/xdisp.c (redisplay_internal): Use record_in_backtrace.
      * src/alloc.c (Fgarbage_collect): Use record_in_backtrace.
      Use mark_specpdl.
      * src/profiler.c (record_backtrace): Use get_backtrace.
      (handle_profiler_signal): Use backtrace_top_function.
      * src/.gdbinit (xbacktrace, hookpost-backtrace): Use new backtrace
      accessor functions.
      2f592f95
  2. 02 Jun, 2013 2 commits
    • Jan Djärv's avatar
      Update the GNUStep port so it works OK. Redraw and sizing bugs remain. · c0342369
      Jan Djärv authored
      * nextstep/templates/Info-gnustep.plist.in: Add NSDocumentClass EmacsDocument.
      
      * src/nsfns.m (x_set_foreground_color, x_set_background_color): Use
      EmacsCGFloat.
      (ns_implicitly_set_icon_type, Fx_create_frame): Make static, remove
      unused variables.
      (Fns_read_file_name): Keep track if panel is for save.  Use
      ns_filename_from_panel/ns_directory_from_panel.
      (Fns_list_services): delegate only used for COCOA.
      (Fns_convert_utf8_nfd_to_nfc): Remove warning for GNUStep.  Just
      return the input if GNUStep.
      (x_screen_planes): Remove.
      (Fxw_color_values): Use EmacsCGFloat
      (Fns_display_monitor_attributes_list): Only get screen number for
      Cocoa.
      (getDirectory, getFilename): Removed from EmacsOpenPanel and
      EmacsSavePanel.
      (EmacsOpenPanel:ok:): Use ns_filename_from_panel and
      ns_directory_from_panel.
      
      * src/nsfont.m (ns_attribute_fvalue, ns_spec_to_descriptor)
      (ns_charset_covers, ns_get_covering_families, nsfont_open):
      Use F suffix on floats.
      (ns_char_w...
      c0342369
    • Juanma Barranquero's avatar
      8a621d53
  3. 01 Jun, 2013 1 commit
  4. 31 May, 2013 2 commits
  5. 29 May, 2013 2 commits
  6. 27 May, 2013 1 commit
  7. 25 May, 2013 2 commits
    • Jan Djärv's avatar
      Factor out common code for multimonitors, for Gtk+, non-Gtk+ X11 and NS. · 6799bb26
      Jan Djärv authored
      * frame.c (Qgeometry, Qworkarea, Qmm_size, Qframes, Qsource): New
      Lisp_Object:s.
      (free_monitors, make_monitor_attribute_list): New functions.
      (syms_of_frame): DEFSYM Qgeometry, Qworkarea, Qmm_size, Qframes,
      Qsource.
      
      * frame.h (Qgeometry, Qworkarea, Qmm_size, Qframes, Qsource): Declare.
      (struct MonitorInfo): New struct.
      (free_monitors, make_monitor_attribute_list): Declare.
      
      * nsfns.m (Qgeometry, Qworkarea, Qmm_size, Qframes, Qsource): Remove.
      (struct MonitorInfo, free_monitors): Remove.
      (ns_screen_name): Make static.
      (ns_make_monitor_attribute_list): Call make_monitor_attribute_list.
      (syms_of_nsfns): Remove DEFSYM for Qgeometry, Qworkarea, Qmm_size,
      Qframes, Qsource.
      
      * xfns.c (Qgeometry, Qworkarea, Qmm_size, Qframes, Qsource): Remove.
      (struct MonitorInfo, free_monitors): Remove.
      (x_make_monitor_attribute_list): Call make_monitor_attribute_list.
      (Fx_display_monitor_attributes_list): Call make_monitor_attribute_list.
      (syms_of_xfns): Remove DEFSYM for Qgeometry, Qworkarea, Qmm_size,
      Qframes, Qsource.
      6799bb26
    • Xue Fuqiao's avatar
  8. 23 May, 2013 2 commits
  9. 22 May, 2013 3 commits
  10. 21 May, 2013 2 commits
  11. 20 May, 2013 3 commits
  12. 18 May, 2013 1 commit
    • Paul Eggert's avatar
      Port --enable-gcc-warnings to clang. · 31ff141c
      Paul Eggert authored
      * configure.ac (nw): Remove obsolescent warnings.
      These aren't needed for clang, or for gcc for that matter.
      (emacs_cv_clang): New var, which tests for clang.
      Omit warnings that clang is too picky about.
      (GLIB_DISABLE_DEPRECATION_WARNINGS): Define this;
      needed for Ubuntu 13.04 + clang + --enable-gcc-warnings.
      * lib-src/etags.c: Omit unnecessary forward decls.
      (print_version, print_help): Declare _Noreturn.
      * lib-src/pop.c (socket_connection) [HAVE_GETADDRINFO]: Simplify.
      * src/bytecode.c (exec_byte_code):
      * src/regex.c:
      Redo diagnostic pragmas to pacify clang, too.
      * src/dbusbind.c (xd_retrieve_arg): Do not use uninitialized variable.
      * src/editfns.c (Fencode_time):
      * src/fileio.c (file_accessible_directory_p):
      * src/font.c (font_unparse_xlfd):
      Use '&"string"[index]' instead of '"string" + (index)'.
      * src/undo.c (user_error): Remove; unused.
      31ff141c
  13. 16 May, 2013 2 commits
  14. 15 May, 2013 3 commits
    • Stefan Monnier's avatar
      Use just DOC instead of DOC-nn.mm. · 6e911150
      Stefan Monnier authored
      * lisp/loadup.el: Just use unversioned DOC.
      * Makefile.in (install-doc): DOC file is not version specific any more.
      * .bzrignore: Don't ignore DOC-* any more.
      * admin/quick-install-emacs: Don't prune DOC-* files a any more.
      * doc/lispref/loading.texi (Autoload):
      * doc/lispref/help.texi (Documentation Basics, Accessing Documentation)
      (Accessing Documentation, Accessing Documentation): DOC-* is now DOC.
      * etc/.gitignore: Don't ignore DOC-* any more.
      * lib-src/makefile.w32-in ($(DOC)): Use DOC rather than DOC-X.
      * msdos/sed1x.inp: Don't rewrite DOC any more.
      * nt/makefile.w32-in (clean, top-distclean): DOC-X doesn't exist any more.
      * src/Makefile.in (bootstrap-clean): DOC-* doesn't exist any more.
      * src/makefile.w32-in (DOC): Use just "DOC".
      6e911150
    • Stefan Monnier's avatar
      * src/process.c: Export default filters and sentinels to Elisp. · 1aa8d505
      Stefan Monnier authored
      (Qinternal_default_process_sentinel, Qinternal_default_process_filter):
      New constants.
      (pset_filter, pset_sentinel, make_process, Fset_process_filter)
      (Fset_process_sentinel, Fformat_network_address):
      Default to them instead of nil.
      (server_accept_connection): Sentinels can't be nil any more.
      (read_and_dispose_of_process_output): New function, extracted from
      read_process_output.
      (read_process_output): Use it; filters can't be nil.
      (Finternal_default_process_filter): New function, extracted from
      read_process_output.
      (exec_sentinel_unwind): Remove function.
      (exec_sentinel): Don't zilch sentinel while running.
      (status_notify): Sentinels can't be nil.
      (Finternal_default_process_sentinel): New function extracted from
      status_notify.
      (setup_process_coding_systems): Default filter is not nil any more.
      (syms_of_process): Export new Elisp functions and initialize
      new constants.
      * src/lisp.h (make_lisp_proc): New function.
      1aa8d505
    • Stefan Monnier's avatar
      * lisp/progmodes/f90.el (f90-blocks-re): Include the terminating \> in the · 5ac2eb34
      Stefan Monnier authored
      surrounding group.
      * src/regex.c (regex_compile) [\=, \>, \<]: Don't forget to set laststart.
      
      Fixes: debbugs:14402
      5ac2eb34
  15. 14 May, 2013 2 commits
  16. 12 May, 2013 1 commit
  17. 09 May, 2013 3 commits
  18. 08 May, 2013 3 commits
  19. 07 May, 2013 2 commits
    • Paul Eggert's avatar
      Use Gnulib ACL implementation, for benefit of Solaris etc. · ffdc270a
      Paul Eggert authored
      * configure.ac: Remove -with-acl option, since Gnulib does that for
      us now.
      (LIBACL_LIBS): Remove; no longer needed.
      * lib/Makefile.am (CLEANFILES, SUFFIXES): New (empty) macros,
      for the benefit of the new ACL implementation.
      * lib/makefile.w32-in (GNULIBOBJS): Add $(BLD)/acl-errno-valid.$(O).
      ($(BLD)/acl-errno-valid.$(O)): New rule.
      * lib/acl-errno-valid.c, lib/acl-internal.h, lib/acl.h:
      * lib/acl_entries.c, lib/errno.in.h, lib/file-has-acl.c:
      * lib/qcopy-acl.c, lib/qset-acl.c, m4/acl.m4, m4/errno_h.m4:
      New files, taken from gnulib.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * admin/merge-gnulib (GNULIB_MODULES): Add qacl.
      (GNULIB_TOOL_FLAGS): Do not avoid errno.
      * etc/NEWS: Emacs is no longer limited to POSIX ACLs.  --disable-acl,
      not --without-acl, since we're now using Gnulib's implementation.
      * nt/config.nt (HAVE_ACL_SET_FILE): Rename from HAVE_POSIX_ACL.
      * nt/inc/ms-w32.h (EOPNOTSUPP): New macro.
      * src/Makefile.in (LIB_ACL): New macro.
      (LIBACL_LIBS): Remove.
      (LIBES): Use LIB_ACL, not LIBACL_LIBS.
      * src/fileio.c: Include <acl.h>.
      Use HAVE_ACL_SET_FILE rather than HAVE_POSIX_ACL.
      (ACL_NOT_WELL_SUPPORTED): Remove.  All uses replaced by
      !acl_errno_valid.
      (Fcopy_file) [!WINDOWSNT]: Use qcopy_acl instead of rolling
      it ourselves.
      
      Fixes: debbugs:14295
      ffdc270a
    • Paul Eggert's avatar
      * unexelf.c: Don't assume ElfW (Half) fits in int. · f269bc61
      Paul Eggert authored
      (entry_address, find_section, unexec): Use ptrdiff_t, not int,
      when dealing with ElfW (Half) values, since they can exceed 2**31
      on 64-bit OpenBSD hosts.  Problem reported privately by Han Boetes.
      (entry_address): Omit unused NUM arg.  All uses changed.
      f269bc61