summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kernel/syscalls/stat.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/kernel/syscalls/stat.c b/kernel/syscalls/stat.c
index 103ac34..c430725 100644
--- a/kernel/syscalls/stat.c
+++ b/kernel/syscalls/stat.c
@@ -6,6 +6,8 @@ int syscall_stat(SYS_STAT_PARAMS *args) {
const char *pathname = copy_and_allocate_user_string(args->pathname);
struct stat *statbuf = args->statbuf;
int fd = vfs_open(pathname, O_READ, 0);
+ if(0 > fd)
+ return -ENOENT;
int rc = vfs_fstat(fd, statbuf);
vfs_close(fd);
return rc;