diff --git a/src/sys/kernel/file.c b/src/sys/kernel/file.c index 8cba84d..1a6765f 100644 --- a/src/sys/kernel/file.c +++ b/src/sys/kernel/file.c @@ -145,6 +145,12 @@ ************************************************************************/ void sysFread(void *data,long size,userFileDescriptor *userFd) { + /* TODO : coredump? */ + if (userFd == NULL) + return; + if (userFd->fd == NULL) + return; + fread(data,size,1,userFd->fd); /* Return */ return; @@ -199,6 +205,12 @@ } void sysFseek(userFileDescriptor *userFd,long offset,int whence) { + // TODO : coredump? + if (userFd == NULL) + return; + if (userFd->fd == NULL) + return; + userFd->fd->offset = offset+whence; } @@ -245,6 +257,9 @@ /*** $Log$ + Revision 1.17 2004/09/11 12:11:11 reddawg + Cleaning up the VFS more changes to follow... + Revision 1.16 2004/09/08 23:19:58 reddawg hmm diff --git a/src/sys/vfs/file.c b/src/sys/vfs/file.c index 5feca74..5deabb4 100644 --- a/src/sys/vfs/file.c +++ b/src/sys/vfs/file.c @@ -54,6 +54,16 @@ ************************************************************************/ void sysFclose(userFileDescriptor *userFd,int *status) { + if (userFd == NULL) + { + *status = -1; + return; + } + if (userFd->fd == NULL) + { + *status = -1; + return; + } *status = fclose(userFd->fd); /* Return */ return; @@ -288,6 +298,9 @@ /*** $Log$ + Revision 1.22 2004/09/11 12:11:11 reddawg + Cleaning up the VFS more changes to follow... + Revision 1.21 2004/08/21 17:36:57 reddawg updates: converted to software task switching however it is not working yet