Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 7 Apr 2005 14:20:07 GMT
From:      David Xu <davidxu@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 74665 for review
Message-ID:  <200504071420.j37EK7f2050189@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=74665

Change 74665 by davidxu@davidxu_alona on 2005/04/07 14:19:12

	Return TD_ERR not TD_NOEVENT, clear event buffer.

Affected files ...

.. //depot/projects/davidxu_thread/src/lib/libthread_db/libthr_db.c#6 edit

Differences ...

==== //depot/projects/davidxu_thread/src/lib/libthread_db/libthr_db.c#6 (text+ko) ====

@@ -450,7 +450,7 @@
 		ptr->u.bptaddr = ta->thread_death_bp_addr;
 		return (0);
 	default:
-		return (TD_NOEVENT);
+		return (TD_ERR);
 	}
 }
 
@@ -496,12 +496,18 @@
 	psaddr_t pt;
 	long lwp;
 	int ret;
+	int tmp;
 
 	TDBG_FUNC();
 
 	ret = ps_pread(ta->ph, ta->thread_event_addr, msg, sizeof(*msg));
 	if (ret != 0)
 		return (P2T(ret));
+	if (msg->event == 0)
+		return (TD_NOMSG);
+	/* clear event */
+	tmp = 0;
+	ps_pwrite(ta->ph, ta->thread_event_addr, &tmp, sizeof(int));
 	pt = (psaddr_t)msg->th_p;
 	ret = ps_pread(ta->ph, pt + ta->thread_off_tid, &lwp, sizeof(lwp));
 	if (ret != 0)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200504071420.j37EK7f2050189>