Blame SOURCES/strace-rh971352.patch

1ca6dd
diff -Nrup a/strace.c b/strace.c
1ca6dd
--- a/strace.c	2013-07-17 14:39:50.603696069 -0600
1ca6dd
+++ b/strace.c	2013-07-17 14:43:27.625962443 -0600
1ca6dd
@@ -2184,6 +2184,11 @@ handle_stopped_tcbs(struct tcb *tcp)
1ca6dd
 		status = tcp->wait_status;
1ca6dd
 		pid = tcp->pid;
1ca6dd
 
1ca6dd
+		/* we must re-fetch all registers for each pid in list */
1ca6dd
+		clear_regs();
1ca6dd
+		if (WIFSTOPPED(status))
1ca6dd
+			get_regs(pid);
1ca6dd
+
1ca6dd
                 event = ((unsigned)status >> 16);
1ca6dd
 		if (WIFSIGNALED(status)) {
1ca6dd
 			if (pid == strace_child)