1. 31 Aug, 2014 2 commits
  2. 30 Aug, 2014 6 commits
    • Paul Eggert's avatar
    • Paul Eggert's avatar
      Vector-sorting fixes. · f9caea82
      Paul Eggert authored
      It's not safe to call qsort or qsort_r, since they have undefined
      behavior if the user-specified predicate is not a total order.
      Also, watch out for garbage-collection while sorting vectors.
      * admin/merge-gnulib (GNULIB_MODULES): Add vla.
      * configure.ac (qsort_r): Remove, as we no longer use qsort-like
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * lib/vla.h, m4/vararrays.m4: New files, copied from gnulib.
      * lib/stdlib.in.h, m4/stdlib_h.m4: Sync from gnulib, incorporating:
      2014-08-29 qsort_r: new module, for GNU-style qsort_r
      The previous two files' changes are boilerplate generated by
      admin/merge-gnulib, and should not affect Emacs.
      * src/fns.c: Include <vla.h>.
      (sort_vector_predicate) [!HAVE_QSORT_R]: Remove.
      (sort_vector_compare): Remove, replacing with ....
      (inorder, merge_vectors, sort_vector_inplace, sort_vector_copy):
      ... these new functions.
      (sort_vector): Rewrite to use the new functions.
      GCPRO locals, since the predicate can invoke the GC.
      Since it's in-place return void; caller changed.
      (merge): Use 'inorder', for clarity.
      Fixes: debbugs:18361
    • Paul Eggert's avatar
      * sysdep.c (str_collate): Clear errno just before wcscoll(_l). · 88366fcf
      Paul Eggert authored
      One can't hoist this out of the 'if', because intervening calls to
      newlocale, twolower, etc. can change errno.
    • Eli Zaretskii's avatar
    • Eli Zaretskii's avatar
      Minor ChangeLog fixes. · 670e4e48
      Eli Zaretskii authored
    • Eli Zaretskii's avatar
      Improve error checking and error messages in string-collation functions. · e7027eab
      Eli Zaretskii authored
       src/sysdep.c (str_collate) [__STDC_ISO_10646__]: Improve the
       wording of the error messages.
       (str_collate) [WINDOWSNT]: Signal an error if w32_compare_strings
       sets errno.
       src/w32proc.c (get_lcid_callback): Accept locale specifications
       without the country part, as in "enu" vs "enu_USA".
       (w32_compare_strings): Signal an error if a locale was specified,
       but couldn't be translated into a valid LCID.
  3. 29 Aug, 2014 17 commits
  4. 28 Aug, 2014 11 commits
    • Stefan Monnier's avatar
    • Stefan Monnier's avatar
      * lisp/progmodes/cc-defs.el: Expose c-lanf-defconst's expressions to the · 16f1e25b
      Stefan Monnier authored
      (lookup-syntax-properties): Silence byte-compiler.
      (c-lang-defconst): Quote the code with `lambda' rather than with
      (c-lang-const): Avoid unneeded setq.
      (c-lang-constants-under-evaluation): Add docstring.
      (c-lang--novalue): New constant.
      (c-find-assignment-for-mode): Use it instead of c-lang-constants.
      (c-get-lang-constant): Same here.
      Get the mode's value using `funcall' now that the code is quoted
      with `lambda'.
    • Michael Albinus's avatar
      * net/tramp.el (tramp-handle-shell-command): Use `display-buffer'. · 0f8fb0b9
      Michael Albinus authored
      Fixes: debbugs:18326
    • Martin Rudalics's avatar
    • Ken Brown's avatar
      Add support for HYBRID_MALLOC, allowing the use of gmalloc before · ea652500
      Ken Brown authored
      dumping and the system malloc after dumping.  (Bug#18222)
      * configure.ac (HYBRID_MALLOC): New macro; define to use gmalloc
      before dumping and the system malloc after dumping.  Define on Cygwin.
      * src/conf_post.h (malloc, realloc, calloc, free) [HYBRID_MALLOC]:
      Define as macros, expanding to hybrid_malloc, etc.
      (get_current_dir_name) [HYBRID_GET_CURRENT_DIR_NAME]: Define as
      * src/gmalloc.c: Set up the infrastructure for HYBRID_MALLOC, with a
      full implementation on Cygwin.  Remove Cygwin-specific code that
      is no longer needed.
      (malloc, realloc, calloc, free, aligned_alloc) [HYBRID_MALLOC]:
      Redefine as macros expanding to gmalloc, grealloc, etc.
      (get_current_dir_name) [HYBRID_GET_CURRENT_DIR_NAME]: Undefine.
      (USE_PTHREAD, posix_memalign) [HYBRID_MALLOC]: Don't define.
      (hybrid_malloc, hybrid_calloc, hybrid_free, hybrid_realloc)
      (hybrid_get_current_dir_name) [HYBRID_GET_CURRENT_DIR_NAME]:
      (hybrid_aligned_alloc) [HYBRID_MALLOC && (HAVE_ALIGNED_ALLOC ||
      HAVE_POSIX_MEMALIGN)]: New functions.
      * src/alloc.c (aligned_alloc) [HYBRID_MALLOC && (ALIGNED_ALLOC ||
      HAVE_POSIX_MEMALIGN)]: Define as macro expanding to
      hybrid_aligned_alloc; declare.
      HAVE_POSIX_MEMALIGN)]: Define.
      (refill_memory_reserve) [HYBRID_MALLOC]: Do nothing.
      * src/sysdep.c (get_current_dir_name) [HYBRID_GET_CURRENT_DIR_NAME]:
      Define as macro, expanding to gget_current_dir_name, and define
      the latter.
      * src/emacs.c (main) [HYBRID_MALLOC]: Don't call memory_warnings() or
      malloc_enable_thread().  Don't initialize malloc.
      * src/lisp.h (NONPOINTER_BITS) [CYGWIN]: Define (because GNU_MALLOC is
      no longer defined on Cygwin).
      (refill_memory_reserve) [HYBRID_MALLOC]: Don't declare.
      * src/sheap.c (bss_sbrk_buffer_end): New variable.
      * src/unexcw.c (__malloc_initialized): Remove variable.
      * src/ralloc.c: Throughout, treat HYBRID_MALLOC the same as
      * src/xdisp.c (decode_mode_spec) [HYBRID_MALLOC]: Don't check
    • Martin Rudalics's avatar
      Some fixes for scroll bar code. · a7ef7a0e
      Martin Rudalics authored
      * w32term.c (w32_horizontal_scroll_bar_handle_click): In
      `event->y' return entire range (the size of the scroll bar minus
      that of the thumb).
      * xterm.c (xm_scroll_callback, xaw_jump_callback): In `whole'
      return entire range (the scaled size of the scroll bar minus
      that of the slider).  In `portion' return the scaled position of
      the slider.
      (xaw_jump_callback): Restore part of code for vertical scroll
      bar broken in change from 2014-07-27.
      (xaw_scroll_callback): Provide incremental scrolling with
      horizontal scroll bars.
      (x_scroll_bar_handle_click): Fix typo introduced in change from
      * scroll-bar.el (scroll-bar-horizontal-drag-1): Handle new
      interpretation of `portion-whole'.
    • Glenn Morris's avatar
      Add install/uninstall rules for etc/emacs.appdata.xml · f1fdf67b
      Glenn Morris authored
      * Makefile.in (appdatadir): New variable.
      (install-etc, uninstall, clean): Handle etc/emacs.appdata.xml.
    • Glenn Morris's avatar
    • Glenn Morris's avatar
      * lisp/subr.el (remq): Revert 2014-08-25 doc change (not always true). · 93b31b57
      Glenn Morris authored
      See the interminable bug discussion if you have nothing better to do.
    • Glenn Morris's avatar
      * etc/emacs.appdata.xml: New file · b62da77c
      Glenn Morris authored
      Ref: http://people.freedesktop.org/~hughsient/appdata/
      The description is adapted from the Emacs homepage.
    • Paul Eggert's avatar
      * sysdep.c (LC_COLLATE, LC_COLLATE_MASK): Give individual defaults. · cbe070d1
      Paul Eggert authored
      Fixes: debbugs:18051
  5. 27 Aug, 2014 4 commits