2008-07-17  Roland McGrath  <roland@redhat.com>

	* process.c (printwaitn): When current personality's wordsize is
	smaller than native, sign-extend the PID argument from 32 bits.
diff --git a/process.c b/process.c
index ec41b49..6791ba3 100644
--- a/process.c
+++ b/process.c
@@ -1947,7 +1947,13 @@
 	int exited = 0;
 
 	if (entering(tcp)) {
-		tprintf("%ld, ", tcp->u_arg[0]);
+		/*
+		 * Sign-extend a 32-bit value when that's what it is.
+		 */
+		long pid = tcp->u_arg[0];
+		if (personality_wordsize[current_personality] < sizeof pid)
+			pid = (long) (int) pid;
+		tprintf("%ld, ", pid);
 	} else {
 		/* status */
 		if (!tcp->u_arg[1])