summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Djärv <jan.h.d@swipnet.se>2012-08-21 22:50:31 +0200
committerJan Djärv <jan.h.d@swipnet.se>2012-08-21 22:50:31 +0200
commitd18e2bb65d39d73954c422c1f36657f026cf2f56 (patch)
treeb72179941e56f3d942901605a87416278f1dda2d
parent79aba01279160e9c1dea4a4f0b74ef6b2cb9f025 (diff)
downloademacs-d18e2bb65d39d73954c422c1f36657f026cf2f56.tar.gz
* nsterm.m (fd_handler:): Alloc and release a NSAutoreleasePool in
the loop. Fixes: debbugs:12247
-rw-r--r--src/ChangeLog5
-rw-r--r--src/nsterm.m4
2 files changed, 9 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index ffd706a9a82..79406894a58 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
+2012-08-21 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.m (fd_handler:): Alloc and release a NSAutoreleasePool in
+ the loop (Bug#12247).
+
2012-08-21 Paul Eggert <eggert@cs.ucla.edu>
* lisp.h (vcopy): Use memcpy rather than our own loop.
diff --git a/src/nsterm.m b/src/nsterm.m
index 3ab9358467a..12ca52684e6 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -4600,11 +4600,15 @@ not_in_argv (NSString *arg)
SELECT_TYPE readfds, writefds, *wfds;
EMACS_TIME timeout, *tmo;
+ NSAutoreleasePool *pool = nil;
/* NSTRACE (fd_handler); */
for (;;)
{
+ [pool release];
+ pool = [[NSAutoreleasePool alloc] init];
+
if (waiting)
{
SELECT_TYPE fds;