kern: fix very old bug in syscall tracing

This commit is contained in:
Giacomo Tesio 2017-11-17 01:23:53 +01:00
parent 7ae04d282f
commit 8ea71b1c66
2 changed files with 4 additions and 2 deletions

View File

@ -323,13 +323,15 @@ syscall(Syscalls scallnr, Ureg* ureg)
} }
if(up->syscallq != nil){ if(up->syscallq != nil){
qlock(&up->debug); qlock(&up->debug);
if(up->syscallq != nil){ if(up->syscallq != nil
&& !waserror()){
notedefer(); notedefer();
if(!waserror()){ if(!waserror()){
qwrite(up->syscallq, str, jehanne_strlen(str)); qwrite(up->syscallq, str, jehanne_strlen(str));
poperror(); poperror();
} }
noteallow(); noteallow();
poperror();
} }
qunlock(&up->debug); qunlock(&up->debug);
} }