diff options
| author | Glenn Morris | 2014-08-14 21:34:06 -0700 |
|---|---|---|
| committer | Glenn Morris | 2014-08-14 21:34:06 -0700 |
| commit | ed30c57cc9cdcf8ddc169f4b042146db9b3b7179 (patch) | |
| tree | 30e07052f35dcfb7c4616a30c8e9bdebb8a3526c | |
| parent | b9558683e3339fb95ff9cad1ced705f525d86d7a (diff) | |
| parent | 315865d31dde9f0771f96a98a4562bd282aa21ea (diff) | |
| download | emacs-ed30c57cc9cdcf8ddc169f4b042146db9b3b7179.tar.gz emacs-ed30c57cc9cdcf8ddc169f4b042146db9b3b7179.zip | |
Merge from emacs-24; up to 2014-06-29T18:32:35Z!michael.albinus@gmx.de
| -rw-r--r-- | lisp/ChangeLog | 11 | ||||
| -rw-r--r-- | lisp/speedbar.el | 9 | ||||
| -rw-r--r-- | lisp/subr.el | 5 | ||||
| -rw-r--r-- | src/ChangeLog | 5 | ||||
| -rw-r--r-- | src/gmalloc.c | 21 |
5 files changed, 46 insertions, 5 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 713a1aab838..f96921d4329 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,12 @@ | |||
| 1 | 2014-08-15 Leo Liu <sdl.web@gmail.com> | ||
| 2 | |||
| 3 | * speedbar.el (speedbar-generic-list-tag-p): Allow special | ||
| 4 | elements from imenu. | ||
| 5 | |||
| 6 | 2014-08-15 Glenn Morris <rgm@gnu.org> | ||
| 7 | |||
| 8 | * subr.el (with-output-to-temp-buffer): Doc fix; from elisp manual. | ||
| 9 | |||
| 1 | 2014-08-13 Jan Nieuwenhuizen <janneke@gnu.org> | 10 | 2014-08-13 Jan Nieuwenhuizen <janneke@gnu.org> |
| 2 | 11 | ||
| 3 | * progmodes/compile.el (compilation-error-regexp-alist-alist): | 12 | * progmodes/compile.el (compilation-error-regexp-alist-alist): |
| @@ -7,7 +16,7 @@ | |||
| 7 | 16 | ||
| 8 | * progmodes/gud.el (guiler): New function. Starts the Guile REPL; | 17 | * progmodes/gud.el (guiler): New function. Starts the Guile REPL; |
| 9 | add Guile debugger support for GUD. | 18 | add Guile debugger support for GUD. |
| 10 | 19 | ||
| 11 | 2014-08-13 Stefan Monnier <monnier@iro.umontreal.ca> | 20 | 2014-08-13 Stefan Monnier <monnier@iro.umontreal.ca> |
| 12 | 21 | ||
| 13 | * obsolete/mouse-sel.el (mouse-sel-mode): Use add/remove-function. | 22 | * obsolete/mouse-sel.el (mouse-sel-mode): Use add/remove-function. |
diff --git a/lisp/speedbar.el b/lisp/speedbar.el index 55e86e7fef3..11d2d435383 100644 --- a/lisp/speedbar.el +++ b/lisp/speedbar.el | |||
| @@ -2111,9 +2111,10 @@ cell of the form ( 'DIRLIST . 'FILELIST )." | |||
| 2111 | ;; in order to make it look nice. | 2111 | ;; in order to make it look nice. |
| 2112 | ;; | 2112 | ;; |
| 2113 | ;; A generic list is of the form: | 2113 | ;; A generic list is of the form: |
| 2114 | ;; ( ("name" . marker-or-number) <-- one tag at this level | 2114 | ;; ( ("name" . marker-or-number) <-- one tag at this level |
| 2115 | ;; ("name" ("name" . mon) ("name" . mon) ) <-- one group of tags | 2115 | ;; ("name" marker-or-number goto-fun . args) <-- one tag at this level |
| 2116 | ;; ("name" mon ("name" . mon) ) <-- group w/ a position and tags | 2116 | ;; ("name" ("name" . mon) ("name" . mon) ) <-- one group of tags |
| 2117 | ;; ("name" mon ("name" . mon) ) <-- group w/ a position and tags | ||
| 2117 | (defun speedbar-generic-list-group-p (sublst) | 2118 | (defun speedbar-generic-list-group-p (sublst) |
| 2118 | "Non-nil if SUBLST is a group. | 2119 | "Non-nil if SUBLST is a group. |
| 2119 | Groups may optionally contain a position." | 2120 | Groups may optionally contain a position." |
| @@ -2144,6 +2145,8 @@ Groups may optionally contain a position." | |||
| 2144 | (and (stringp (car-safe sublst)) | 2145 | (and (stringp (car-safe sublst)) |
| 2145 | (or (and (number-or-marker-p (cdr-safe sublst)) | 2146 | (or (and (number-or-marker-p (cdr-safe sublst)) |
| 2146 | (not (cdr-safe (cdr-safe sublst)))) | 2147 | (not (cdr-safe (cdr-safe sublst)))) |
| 2148 | (ignore-errors (and (number-or-marker-p (nth 1 sublst)) | ||
| 2149 | (functionp (nth 2 sublst)))) | ||
| 2147 | ;; For semantic/bovine items, this is needed | 2150 | ;; For semantic/bovine items, this is needed |
| 2148 | (symbolp (car-safe (cdr-safe sublst)))) | 2151 | (symbolp (car-safe (cdr-safe sublst)))) |
| 2149 | )) | 2152 | )) |
diff --git a/lisp/subr.el b/lisp/subr.el index 9accb9d36c5..c168cf5fdb2 100644 --- a/lisp/subr.el +++ b/lisp/subr.el | |||
| @@ -3102,6 +3102,11 @@ buffer temporarily current, and the window that was used to display it | |||
| 3102 | temporarily selected. But it doesn't run `temp-buffer-show-hook' | 3102 | temporarily selected. But it doesn't run `temp-buffer-show-hook' |
| 3103 | if it uses `temp-buffer-show-function'. | 3103 | if it uses `temp-buffer-show-function'. |
| 3104 | 3104 | ||
| 3105 | By default, the setup hook puts the buffer into Help mode before running BODY. | ||
| 3106 | If BODY does not change the major mode, the show hook makes the buffer | ||
| 3107 | read-only, and scans it for function and variable names to make them into | ||
| 3108 | clickable cross-references. | ||
| 3109 | |||
| 3105 | See the related form `with-temp-buffer-window'." | 3110 | See the related form `with-temp-buffer-window'." |
| 3106 | (declare (debug t)) | 3111 | (declare (debug t)) |
| 3107 | (let ((old-dir (make-symbol "old-dir")) | 3112 | (let ((old-dir (make-symbol "old-dir")) |
diff --git a/src/ChangeLog b/src/ChangeLog index b3d38fa0310..91b72e479d7 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2014-08-15 Ken Brown <kbrown@cornell.edu> | ||
| 2 | |||
| 3 | * gmalloc.c (_malloc_mutex, _aligned_blocks_mutex) [CYGWIN]: Use | ||
| 4 | ERRORCHECK mutexes. (Bug#18222) | ||
| 5 | |||
| 1 | 2014-08-12 Martin Rudalics <rudalics@gmx.at> | 6 | 2014-08-12 Martin Rudalics <rudalics@gmx.at> |
| 2 | 7 | ||
| 3 | * frame.c (set_menu_bar_lines_1): Remove. | 8 | * frame.c (set_menu_bar_lines_1): Remove. |
diff --git a/src/gmalloc.c b/src/gmalloc.c index ab1dfd07db2..27965e37539 100644 --- a/src/gmalloc.c +++ b/src/gmalloc.c | |||
| @@ -490,8 +490,18 @@ register_heapinfo (void) | |||
| 490 | } | 490 | } |
| 491 | 491 | ||
| 492 | #ifdef USE_PTHREAD | 492 | #ifdef USE_PTHREAD |
| 493 | /* On Cygwin prior to 1.7.31, pthread_mutexes were ERRORCHECK mutexes | ||
| 494 | by default. When the default changed to NORMAL in Cygwin-1.7.31, | ||
| 495 | deadlocks occurred (bug#18222). As a temporary workaround, we | ||
| 496 | explicitly set the mutexes to be of ERRORCHECK type, restoring the | ||
| 497 | previous behavior. */ | ||
| 498 | #ifdef CYGWIN | ||
| 499 | pthread_mutex_t _malloc_mutex = PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP; | ||
| 500 | pthread_mutex_t _aligned_blocks_mutex = PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP; | ||
| 501 | #else /* not CYGWIN */ | ||
| 493 | pthread_mutex_t _malloc_mutex = PTHREAD_MUTEX_INITIALIZER; | 502 | pthread_mutex_t _malloc_mutex = PTHREAD_MUTEX_INITIALIZER; |
| 494 | pthread_mutex_t _aligned_blocks_mutex = PTHREAD_MUTEX_INITIALIZER; | 503 | pthread_mutex_t _aligned_blocks_mutex = PTHREAD_MUTEX_INITIALIZER; |
| 504 | #endif /* not CYGWIN */ | ||
| 495 | int _malloc_thread_enabled_p; | 505 | int _malloc_thread_enabled_p; |
| 496 | 506 | ||
| 497 | static void | 507 | static void |
| @@ -526,14 +536,23 @@ malloc_enable_thread (void) | |||
| 526 | initialized mutexes when they are used first. To avoid such a | 536 | initialized mutexes when they are used first. To avoid such a |
| 527 | situation, we initialize mutexes here while their use is | 537 | situation, we initialize mutexes here while their use is |
| 528 | disabled in malloc etc. */ | 538 | disabled in malloc etc. */ |
| 539 | #ifdef CYGWIN | ||
| 540 | /* Use ERRORCHECK mutexes; see comment above. */ | ||
| 541 | pthread_mutexattr_t attr; | ||
| 542 | pthread_mutexattr_init (&attr); | ||
| 543 | pthread_mutexattr_settype (&attr, PTHREAD_MUTEX_ERRORCHECK); | ||
| 544 | pthread_mutex_init (&_malloc_mutex, &attr); | ||
| 545 | pthread_mutex_init (&_aligned_blocks_mutex, &attr); | ||
| 546 | #else /* not CYGWIN */ | ||
| 529 | pthread_mutex_init (&_malloc_mutex, NULL); | 547 | pthread_mutex_init (&_malloc_mutex, NULL); |
| 530 | pthread_mutex_init (&_aligned_blocks_mutex, NULL); | 548 | pthread_mutex_init (&_aligned_blocks_mutex, NULL); |
| 549 | #endif /* not CYGWIN */ | ||
| 531 | pthread_atfork (malloc_atfork_handler_prepare, | 550 | pthread_atfork (malloc_atfork_handler_prepare, |
| 532 | malloc_atfork_handler_parent, | 551 | malloc_atfork_handler_parent, |
| 533 | malloc_atfork_handler_child); | 552 | malloc_atfork_handler_child); |
| 534 | _malloc_thread_enabled_p = 1; | 553 | _malloc_thread_enabled_p = 1; |
| 535 | } | 554 | } |
| 536 | #endif | 555 | #endif /* USE_PTHREAD */ |
| 537 | 556 | ||
| 538 | static void | 557 | static void |
| 539 | malloc_initialize_1 (void) | 558 | malloc_initialize_1 (void) |