1. 28 May, 2014 2 commits
    • Dmitry Antipov's avatar
      On X, always make pointer visible when deleting frame (Bug#17609). · 632fd57c
      Dmitry Antipov authored
      * frame.c (frame_make_pointer_visible, frame_make_pointer_invisible):
      Pass frame as arg.
      * frame.h (frame_make_pointer_visible, frame_make_pointer_invisible):
      Adjust prototypes.
      * cmds.c (Fself_insert_command): Use SELECTED_FRAME.
      * keyboard.c (gobble_input): If there is no terminal input error,
      make sure the pointer is visible for all frames on this terminal.
      * xterm.c (x_free_frame_resources): Always enable pointer visibility.
      632fd57c
    • Stefan Monnier's avatar
      * lisp/subr.el (zerop): Move from C. Add compiler-macro. · 4c539a7b
      Stefan Monnier authored
      * lisp/emacs-lisp/byte-opt.el (byte-optimize-zerop): Remove.
      * src/data.c (Fzerop): Move to Elisp.
      (syms_of_data): Don't defsubr it.
      * src/keyboard.c (echo_keystrokes_p): New function.
      (read_char, record_menu_key, read_key_sequence): Use it.
      
      Fixes: debbugs:17475
      4c539a7b
  2. 27 May, 2014 5 commits
    • Stefan Monnier's avatar
      * src/bytecode.c (FETCH) [BYTE_CODE_SAFE]: Check the bytecode wasn't · 9da43ddc
      Stefan Monnier authored
      relocated from under us.
      9da43ddc
    • Fabrice Popineau's avatar
      Use mmap(2) emulation for buffer text on MS-Windows. · 587fd086
      Fabrice Popineau authored
       src/Makefile.in (C_HEAP_SWITCH): Get the predefined heap size from
       configure.
       (ADDSECTION, MINGW_TEMACS_POST_LINK): Remove, no longer used.
       src/lisp.h (NONPOINTER_BITS): Modify the condition to define to zero
       for MinGW, since it no longer uses gmalloc.
       src/buffer.c: Do not define mmap allocations functions for Windows.
       Remove mmap_find which is unused. Remove mmap_set_vars which does
       nothing useful.
       [WINDOWSNT]: Include w32heap.h.
       (init_buffer): Always allocate new memory for buffers.
       src/emacs.c: Remove mmap_set_vars calls.
       src/image.c (free_image): Undef free for Windows because it is
       redirected to our private version.
       src/unexw32.c (COPY_PROC_CHUNK): Use %p format for 64bits
       compatibility.
       (copy_executable_and_dump_data): Remove dumping the heap section.
       (unexec): Restore using_dynamic_heap after dumping.
       src/w32heap.c (dumped_data_commit, malloc_after_dump)
       (malloc_before_dump, realloc_after_dump, realloc_before_dump)
       (free_after_dump, free_before_dump, mmap_alloc, mmap_realloc)
       (mmap_free): New functions.
       src/w32heap.h: Declare dumped_data and mmap_* function prototypes.
      
       nt/inc/ms-w32.h: Switch to the system heap allocation scheme
       instead of GNU malloc and ralloc.
       nt/inc/sys/mman.h: New file.
       nt/INSTALL: Update for the new build requirements.
      
       etc/NEWS: Mention build changes on MS-Windows.
      
       configure.ac (C_HEAP_SWITCH) define for different values of
       dumped heap size depending on 32/64bits arch on Windows.
       Don't check for pthreads.h on MinGW32/64, it gets in the way.
       Use mmap(2) for buffers and system malloc for MinGW32/64.
      587fd086
    • Paul Eggert's avatar
      * image.c (imagemagick_load_image): Use MagickRealType for local · c24163d4
      Paul Eggert authored
      'color_scale', instead of double, to avoid a GCC warning about
      double promotion.
      c24163d4
    • Paul Eggert's avatar
      1ad913a1
    • Paul Eggert's avatar
      Don't kill already-reaped process. · ca0279be
      Paul Eggert authored
      * process.c (process_send_signal): Fix race condition where a
      subprocess was reaped by a signal handler between the check for
      liveness and calling 'kill', which meant that Emacs could in
      theory kill an innocent bystander process.  Do the fix by blocking
      SIGCHLD in a critical section that checks liveness before killing.
      
      Fixes: debbugs:17561
      ca0279be
  3. 26 May, 2014 4 commits
  4. 25 May, 2014 2 commits
  5. 24 May, 2014 6 commits
  6. 22 May, 2014 2 commits
    • Paul Eggert's avatar
      Supply malloc and alloc_size attributes for extern allocators. · 74fde0f4
      Paul Eggert authored
      This documents the C API, and helps GCC generate a bit better code.
      * conf_post.h (ATTRIBUTE_MALLOC, ATTRIBUTE_ALLOC_SIZE)
      (ATTRIBUTE_MALLOC_SIZE): New macros.
      * gmalloc.c (malloc, realloc, calloc):
      * gtkutil.h (malloc_widget_value):
      * lisp.h (ralloc, r_re_alloc, xmalloc, xzalloc, xrealloc, xnmalloc)
      (xnrealloc, xstrdup, xlispstrdup, record_xmalloc):
      Use them.
      74fde0f4
    • Paul Eggert's avatar
      Fix port to 32-bit AIX. · 4f4ec76f
      Paul Eggert authored
      * configure.ac (opsys): On Power Architecture, treat release 7 of
      AIX like releases 5 and 6.
      * src/unexaix.c (copy_text_and_data): Don't add text_scnptr to ptr
      twice.  _text already includes this offset.
      (unrelocate_symbols): Don't cast 64-bit integer to pointer.
      
      Fixes: debbugs:17540
      4f4ec76f
  7. 21 May, 2014 3 commits
  8. 20 May, 2014 2 commits
  9. 19 May, 2014 3 commits
    • Paul Eggert's avatar
      Allow any non-nil value to count as true in bool-vector. · 2f1205e0
      Paul Eggert authored
      Likewise for xd_signature in dbusbind.c.
      This is more consistent with the usual practice in Emacs, which is
      that any non-nil value counts as true.
      * doc/lispref/sequences.texi (Bool-Vectors): Coalesce discussion of how to
      print them.  bool-vector's args need not be t or nil.
      * src/alloc.c (Fbool_vector): Don't require args to be t or nil.
      * src/dbusbind.c (xd_signature): Likewise, for booleans.
      * src/data.c, lisp.h (Qbooleanp):
      * src/lisp.h (CHECK_BOOLEAN): Remove.  All uses removed.
      2f1205e0
    • Dmitry Antipov's avatar
      * font.c (font_matching_entity): Extract font-entity object · 8bb59716
      Dmitry Antipov authored
      from the vector of matching entities (Bug#17486).
      8bb59716
    • Dmitry Antipov's avatar
      * src/lisp.h (CHECK_BOOLEAN): New function. · 2bcf0551
      Dmitry Antipov authored
      * src/alloc.c (Fbool_vector): New function.
      (syms_of_alloc): Defsubr it.
      * src/data.c (Qbooleanp): New symbol.
      (syms_of_data): DEFSYM it.
      * src/dbusbind.c (xd_signature): Use CHECK_BOOLEAN.
      * doc/lispref/sequences.texi (Bool-vectors): Mention bool-vector.
      2bcf0551
  10. 17 May, 2014 2 commits
    • Paul Eggert's avatar
      Assume C99 or later. · 8208d2bf
      Paul Eggert authored
      * lib/stdarg.in.h, lib/stdbool.in.h, m4/stdarg.m4, m4/stdbool.m4:
      Remove.
      * configure.ac (_AC_PROG_CC_C89): Define a dummy, to keep 'configure'
      smaller.
      (gl_PROG_CC_C99): Use this to get C99 or later.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * admin/merge-gnulib (GNULIB_MODULES): Remove stdarg, stdbool.
      (GNULIB_TOOL_FLAGS): Avoid stdarg, stdbool.
      * doc/lispref/internals.texi (C Dialect): Document this.
      * etc/NEWS: Document this.
      * nt/gnulib.mk: Remove stdarg and stdbool modules.
      * src/bytecode.c (B__dummy__): Remove.
      * src/conf_post.h (bool_bf) [!NS_IMPL_GNUSTEP]: Use bool.
      (FLEXIBLE_ARRAY_MEMBER): Now always empty.
      * src/dbusbind.c (XD_DEBUG_MESSAGE) [!DBUS_DEBUG]:
      * src/regex.c (DEBUG_PRINT): Assume varargs macros.
      * src/lisp.h (DEFUN_FUNCTION_INIT): Remove.  All uses now assume C99.
      
      Fixes: debbugs:17487
      8208d2bf
    • Fabrice Popineau's avatar
      Always map new memory for buffers after dumping. · f63fc858
      Fabrice Popineau authored
       src/buffer.c (init_buffer) [USE_MMAP_FOR_BUFFERS]: Always map new
       memory for every buffer that was dumped.
      f63fc858
  11. 15 May, 2014 2 commits
  12. 14 May, 2014 1 commit
    • Dmitry Antipov's avatar
      Minor cleanup for terminal setup. · 6f1d9822
      Dmitry Antipov authored
      * termhooks.h (create_terminal): Adjust prototype.
      * terminal.c (create_terminal): Pass output method and RIF as args.
      (init_initial_terminal):
      * nsterm.m (ns_create_terminal):
      * term.c (init_tty):
      * w32term.c (w32_create_terminal):
      * xterm.c (x_create_terminal): Adjust users.
      Avoid redundant NULL initializers and add comments.
      6f1d9822
  13. 13 May, 2014 2 commits
    • Paul Eggert's avatar
      * keyboard.c (Qdeactivate_mark): Now static. · 3246c8b1
      Paul Eggert authored
      3246c8b1
    • Dmitry Antipov's avatar
      If available, use Xfixes extension to do pointer blanking. · d3e5c0ea
      Dmitry Antipov authored
      * configure.ac (HAVE_XFIXES): Define if available.
      (XFIXES_CFLAGS, XFIXES_LIBS): New AC_SUBSTs.
      * src/Makefile.in (XFIXES_CFLAGS, XFIXES_LIBS): New var.
      * src/xfns.c (x_set_mouse_color): Do not call make_invisible_cursor here.
      (make_invisible_cursor): Move to...
      * src/xterm.c (make_invisible_cursor): ...here.
      (x_probe_xfixes_extension, xfixes_toggle_visible_pointer)
      (x_toggle_visible_pointer, x_setup_pointer_blanking): New functions.
      (x_term_init): Call to x_setup_pointer_blanking.
      (XTtoggle_invisible_pointer): Use blanking specific to this display.
      * src/xterm.h (struct x_display_info): New member toggle_visible_pointer.
      d3e5c0ea
  14. 12 May, 2014 1 commit
  15. 11 May, 2014 1 commit
  16. 10 May, 2014 1 commit
  17. 07 May, 2014 1 commit