2009-01-08 10:24:32 +01:00
|
|
|
--- a/syscall.c
|
|
|
|
+++ b/syscall.c
|
|
|
|
@@ -1016,6 +1016,15 @@ struct tcb *tcp;
|
2007-01-20 13:57:04 +01:00
|
|
|
/*
|
|
|
|
* Note: we only deal with only 32-bit CPUs here.
|
|
|
|
*/
|
|
|
|
+
|
|
|
|
+ if (!(tcp->flags & TCB_INSYSCALL) &&
|
|
|
|
+ (tcp->flags & TCB_WAITEXECVE)) {
|
|
|
|
+ /* caught a fake syscall from the execve's exit */
|
|
|
|
+ tcp->flags &= ~TCB_WAITEXECVE;
|
|
|
|
+ return 0;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
if (regs.ARM_cpsr & 0x20) {
|
|
|
|
/*
|
|
|
|
* Get the Thumb-mode system call number
|