emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] trunk r112929: Tickle glib by waiting for Emacs itself, no


From: Paul Eggert
Subject: [Emacs-diffs] trunk r112929: Tickle glib by waiting for Emacs itself, not for process 0.
Date: Tue, 11 Jun 2013 18:34:10 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 112929
revision-id: address@hidden
parent: address@hidden
fixes bug: http://debbugs.gnu.org/14569
committer: Paul Eggert <address@hidden>
branch nick: trunk
timestamp: Tue 2013-06-11 11:34:06 -0700
message:
  Tickle glib by waiting for Emacs itself, not for process 0.
  
  * process.c (init_process_emacs) [HAVE_GLIB && !WINDOWSNT]:
  Wait for self, not for 0.  This can't hurt on GNU or similar
  system, and may help with Cygwin.
modified:
  src/ChangeLog                  changelog-20091113204419-o5vbwnq5f7feedwu-1438
  src/process.c                  process.c-20091113204419-o5vbwnq5f7feedwu-462
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2013-06-11 04:15:49 +0000
+++ b/src/ChangeLog     2013-06-11 18:34:06 +0000
@@ -1,5 +1,10 @@
 2013-06-11  Paul Eggert  <address@hidden>
 
+       Tickle glib by waiting for Emacs itself, not for process 0 (Bug#14569).
+       * process.c (init_process_emacs) [HAVE_GLIB && !WINDOWSNT]:
+       Wait for self, not for 0.  This can't hurt on GNU or similar
+       system, and may help with Cygwin.
+
        * keyboard.c: Don't use PROP (...) as an lvalue.
        (parse_tool_bar_item) [!USE_GTK && !HAVE_NS]:
        Use set_prop (A, B), not PROP (A) = B.

=== modified file 'src/process.c'
--- a/src/process.c     2013-06-08 18:13:24 +0000
+++ b/src/process.c     2013-06-11 18:34:06 +0000
@@ -7068,9 +7068,10 @@
 #endif
     {
 #if defined HAVE_GLIB && !defined WINDOWSNT
-      /* Tickle glib's child-handling code so that it initializes its
+      /* Tickle glib's child-handling code.  Ask glib to wait for Emacs itself;
+        this should always fail, but is enough to initialize glib's
         private SIGCHLD handler.  */
-      g_source_unref (g_child_watch_source_new (0));
+      g_source_unref (g_child_watch_source_new (getpid ()));
 #endif
       catch_child_signal ();
     }


reply via email to

[Prev in Thread] Current Thread [Next in Thread]