aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pk/syscall.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/pk/syscall.c b/pk/syscall.c
index ec53b32..bda4393 100644
--- a/pk/syscall.c
+++ b/pk/syscall.c
@@ -129,7 +129,9 @@ static int at_kfd(int dirfd)
file_t* dir = file_get(dirfd);
if (dir == NULL)
return -1;
- return dir->kfd;
+ int kfd = dir->kfd;
+ file_decref(dir);
+ return kfd;
}
int sys_openat(int dirfd, const char* name, int flags, int mode)