Commit ed30c57c authored by Glenn Morris's avatar Glenn Morris
Browse files

Merge from emacs-24; up to 2014-06-29T18:32:35Z!michael.albinus@gmx.de

parents b9558683 315865d3
2014-08-15 Leo Liu <sdl.web@gmail.com>
* speedbar.el (speedbar-generic-list-tag-p): Allow special
elements from imenu.
2014-08-15 Glenn Morris <rgm@gnu.org>
* subr.el (with-output-to-temp-buffer): Doc fix; from elisp manual.
2014-08-13 Jan Nieuwenhuizen <janneke@gnu.org>
 
* progmodes/compile.el (compilation-error-regexp-alist-alist):
......@@ -7,7 +16,7 @@
 
* progmodes/gud.el (guiler): New function. Starts the Guile REPL;
add Guile debugger support for GUD.
2014-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
 
* obsolete/mouse-sel.el (mouse-sel-mode): Use add/remove-function.
......
......@@ -2111,9 +2111,10 @@ cell of the form ( 'DIRLIST . 'FILELIST )."
;; in order to make it look nice.
;;
;; A generic list is of the form:
;; ( ("name" . marker-or-number) <-- one tag at this level
;; ("name" ("name" . mon) ("name" . mon) ) <-- one group of tags
;; ("name" mon ("name" . mon) ) <-- group w/ a position and tags
;; ( ("name" . marker-or-number) <-- one tag at this level
;; ("name" marker-or-number goto-fun . args) <-- one tag at this level
;; ("name" ("name" . mon) ("name" . mon) ) <-- one group of tags
;; ("name" mon ("name" . mon) ) <-- group w/ a position and tags
(defun speedbar-generic-list-group-p (sublst)
"Non-nil if SUBLST is a group.
Groups may optionally contain a position."
......@@ -2144,6 +2145,8 @@ Groups may optionally contain a position."
(and (stringp (car-safe sublst))
(or (and (number-or-marker-p (cdr-safe sublst))
(not (cdr-safe (cdr-safe sublst))))
(ignore-errors (and (number-or-marker-p (nth 1 sublst))
(functionp (nth 2 sublst))))
;; For semantic/bovine items, this is needed
(symbolp (car-safe (cdr-safe sublst))))
))
......
......@@ -3102,6 +3102,11 @@ buffer temporarily current, and the window that was used to display it
temporarily selected. But it doesn't run `temp-buffer-show-hook'
if it uses `temp-buffer-show-function'.
By default, the setup hook puts the buffer into Help mode before running BODY.
If BODY does not change the major mode, the show hook makes the buffer
read-only, and scans it for function and variable names to make them into
clickable cross-references.
See the related form `with-temp-buffer-window'."
(declare (debug t))
(let ((old-dir (make-symbol "old-dir"))
......
2014-08-15 Ken Brown <kbrown@cornell.edu>
* gmalloc.c (_malloc_mutex, _aligned_blocks_mutex) [CYGWIN]: Use
ERRORCHECK mutexes. (Bug#18222)
2014-08-12 Martin Rudalics <rudalics@gmx.at>
 
* frame.c (set_menu_bar_lines_1): Remove.
......
......@@ -490,8 +490,18 @@ register_heapinfo (void)
}
#ifdef USE_PTHREAD
/* On Cygwin prior to 1.7.31, pthread_mutexes were ERRORCHECK mutexes
by default. When the default changed to NORMAL in Cygwin-1.7.31,
deadlocks occurred (bug#18222). As a temporary workaround, we
explicitly set the mutexes to be of ERRORCHECK type, restoring the
previous behavior. */
#ifdef CYGWIN
pthread_mutex_t _malloc_mutex = PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP;
pthread_mutex_t _aligned_blocks_mutex = PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP;
#else /* not CYGWIN */
pthread_mutex_t _malloc_mutex = PTHREAD_MUTEX_INITIALIZER;
pthread_mutex_t _aligned_blocks_mutex = PTHREAD_MUTEX_INITIALIZER;
#endif /* not CYGWIN */
int _malloc_thread_enabled_p;
static void
......@@ -526,14 +536,23 @@ malloc_enable_thread (void)
initialized mutexes when they are used first. To avoid such a
situation, we initialize mutexes here while their use is
disabled in malloc etc. */
#ifdef CYGWIN
/* Use ERRORCHECK mutexes; see comment above. */
pthread_mutexattr_t attr;
pthread_mutexattr_init (&attr);
pthread_mutexattr_settype (&attr, PTHREAD_MUTEX_ERRORCHECK);
pthread_mutex_init (&_malloc_mutex, &attr);
pthread_mutex_init (&_aligned_blocks_mutex, &attr);
#else /* not CYGWIN */
pthread_mutex_init (&_malloc_mutex, NULL);
pthread_mutex_init (&_aligned_blocks_mutex, NULL);
#endif /* not CYGWIN */
pthread_atfork (malloc_atfork_handler_prepare,
malloc_atfork_handler_parent,
malloc_atfork_handler_child);
_malloc_thread_enabled_p = 1;
}
#endif
#endif /* USE_PTHREAD */
static void
malloc_initialize_1 (void)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment