diff --git a/userprog/syscall_close.c b/userprog/syscall_close.c
index 1448e04184e60f0cec1d29bd2d99740032de6e05..651173b53910e646cfe56c9417fe49a87d495939 100644
--- a/userprog/syscall_close.c
+++ b/userprog/syscall_close.c
@@ -22,9 +22,7 @@ void syscall_close(struct intr_frame *f) {
 		return;
 	}
 	// Close the file using file_close, defined in file.h
-	file_close(file); 
-	if (disassociate_file_descriptor(file_descriptor) == false) { // Checking if file is empty or non-existent
-		f->eax = -1; // Returning a failure state
-		return;
-	}
+	file_close(file);
+	// Remove the file_descriptor
+	disassociate_file_descriptor(file_descriptor);
 }
\ No newline at end of file