git.ucc.asn.au
/
tpg
/
acess2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Kernel - Changed MM_GetPhysAddr to take a pointer
[tpg/acess2.git]
/
KernelLand
/
Kernel
/
vfs
/
io.c
diff --git
a/KernelLand/Kernel/vfs/io.c
b/KernelLand/Kernel/vfs/io.c
index
e7a2a06
..
dacf720
100644
(file)
--- a/
KernelLand/Kernel/vfs/io.c
+++ b/
KernelLand/Kernel/vfs/io.c
@@
-20,12
+20,24
@@
Uint64 VFS_Read(int FD, Uint64 Length, void *Buffer)
ENTER("iFD XLength pBuffer", FD, Length, Buffer);
h = VFS_GetHandle(FD);
ENTER("iFD XLength pBuffer", FD, Length, Buffer);
h = VFS_GetHandle(FD);
- if(!h) LEAVE_RET('i', -1);
+ if(!h) {
+ LOG("Bad Handle");
+ LEAVE_RET('i', -1);
+ }
- if( !(h->Mode & VFS_OPENFLAG_READ) || h->Node->Flags & VFS_FFLAG_DIRECTORY )
+ if( !(h->Mode & VFS_OPENFLAG_READ) ) {
+ LOG("Bad mode");
+ LEAVE_RET('i', -1);
+ }
+ if( (h->Node->Flags & VFS_FFLAG_DIRECTORY) ) {
+ LOG("Reading directory");
LEAVE_RET('i', -1);
LEAVE_RET('i', -1);
+ }
- if(!h->Node->Type || !h->Node->Type->Read) LEAVE_RET('i', 0);
+ if(!h->Node->Type || !h->Node->Type->Read) {
+ LOG("No read method");
+ LEAVE_RET('i', -1);
+ }
ret = h->Node->Type->Read(h->Node, h->Position, Length, Buffer);
if(ret == -1) LEAVE_RET('i', -1);
ret = h->Node->Type->Read(h->Node, h->Position, Length, Buffer);
if(ret == -1) LEAVE_RET('i', -1);
UCC
git Repository :: git.ucc.asn.au