summaryrefslogtreecommitdiff
path: root/src/emacs.c
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2013-07-01 14:06:12 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2013-07-01 14:06:12 -0700
commit8f43ce497c3fcd76d0d3be2d8a0506c53c757fb3 (patch)
tree196afeabe60fd7b5e2b1ec27e8d8f793c32edc11 /src/emacs.c
parent24827db9c4dd4597715958a3f6178cd2173251e1 (diff)
downloademacs-8f43ce497c3fcd76d0d3be2d8a0506c53c757fb3.tar.gz
Fix bug re noninteractive multithreaded memory allocation.
* emacs.c (malloc_enable_thread): Hoist extern decl to top level. (main) [HAVE_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]: Invoke malloc_enable_thread even when not interactive. Problem reported by Ken Brown in <http://bugs.gnu.org/14569#275>. * process.c (init_process_emacs) [CYGWIN]: Tickle glib even in this case, since the underlying bug has now been fixed.
Diffstat (limited to 'src/emacs.c')
-rw-r--r--src/emacs.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/emacs.c b/src/emacs.c
index 77ae977b37c..08be786de95 100644
--- a/src/emacs.c
+++ b/src/emacs.c
@@ -127,6 +127,8 @@ extern int malloc_set_state (void*);
/* True if the MALLOC_CHECK_ environment variable was set while
dumping. Used to work around a bug in glibc's malloc. */
static bool malloc_using_checking;
+#elif defined HAVE_PTHREAD && !defined SYSTEM_MALLOC
+extern void malloc_enable_thread (void);
#endif
Lisp_Object Qfile_name_handler_alist;
@@ -1074,13 +1076,8 @@ Using an Emacs configured with --with-x-toolkit=lucid does not have this problem
#endif /* DOS_NT */
}
-#if defined (HAVE_PTHREAD) && !defined (SYSTEM_MALLOC) && !defined (DOUG_LEA_MALLOC)
- if (! noninteractive)
- {
- extern void malloc_enable_thread (void);
-
- malloc_enable_thread ();
- }
+#if defined HAVE_PTHREAD && !defined SYSTEM_MALLOC && !defined DOUG_LEA_MALLOC
+ malloc_enable_thread ();
#endif
init_signals (dumping);