[uClibc-cvs] CVS uClibc/libpthread/linuxthreads

CVS User jocke jocke at codepoet.org
Tue Feb 1 16:43:29 UTC 2005


Update of /var/cvs/uClibc/libpthread/linuxthreads
In directory nail:/tmp/cvs-serv9449

Modified Files:
	join.c 
Log Message:
Fix death event reporting properly.
Now GDB is happy and death events are reported as
[Thread 5126 (LWP 192) exited]
without GDB bailing out.


--- /var/cvs/uClibc/libpthread/linuxthreads/join.c	2005/01/31 17:53:01	1.4
+++ /var/cvs/uClibc/libpthread/linuxthreads/join.c	2005/02/01 16:43:29	1.5
@@ -42,8 +42,6 @@
   /* Store return value */
   __pthread_lock(THREAD_GETMEM(self, p_lock), self);
   THREAD_SETMEM(self, p_retval, retval);
-  /* Say that we've terminated */
-  THREAD_SETMEM(self, p_terminated, 1);
   /* See whether we have to signal the death.  */
   if (THREAD_GETMEM(self, p_report_events))
     {
@@ -61,12 +59,12 @@
 	  THREAD_SETMEM(self, p_eventbuf.eventdata, self);
 	  __pthread_last_event = self;
 
-#if 0 /* Appears like DEATH event reporting is broken */
 	  /* Now call the function to signal the event.  */
 	  __linuxthreads_death_event();
-#endif
 	}
     }
+  /* Say that we've terminated */
+  THREAD_SETMEM(self, p_terminated, 1);
   /* See if someone is joining on us */
   joining = THREAD_GETMEM(self, p_joining);
 PDEBUG("joining = %p, pid=%d\n", joining, joining->p_pid);



More information about the uClibc-cvs mailing list