Fix a bug introduced in r. 1.28: when copy{in,out} would fail for an
iovec that was not the last one in the uio, the error would be ignored silently. Bug found and fix proposed by: jhb
This commit is contained in:
parent
8519d4e5fc
commit
2333d112fb
@ -104,7 +104,7 @@ uiomove(cp, n, uio)
|
||||
else
|
||||
error = copyin(iov->iov_base, cp, cnt);
|
||||
if (error)
|
||||
break;
|
||||
goto out;
|
||||
break;
|
||||
|
||||
case UIO_SYSSPACE:
|
||||
@ -123,6 +123,7 @@ uiomove(cp, n, uio)
|
||||
cp += cnt;
|
||||
n -= cnt;
|
||||
}
|
||||
out:
|
||||
if (td != curthread) printf("uiomove: IT CHANGED!");
|
||||
td = curthread; /* Might things have changed in copyin/copyout? */
|
||||
if (td) {
|
||||
|
Loading…
Reference in New Issue
Block a user