rem: if (descriptor != NULL && (descriptor->open_mode & O_CLOEXEC) != 0) {
add: if (descriptor != NULL && fd_close_on_exec(context, i)) {
context: vfs_exec_io_context(void *_context){	struct io_context *context = (struct io_context *)_context;	uint32 i;	for (i = 0; i < context->table_size; i++) {		mutex_lock(&context->io_mutex);		struct file_descriptor *descriptor = context->fds[i];		bool remove = false;		if (descriptor != NULL && (descriptor->open_mode & O_CLOEXEC) != 0) {			context->fds[i] = NULL;			context->num_used_fds--;			remove = true;		}		mutex_unlock(&context->io_mutex);		if (remove) {			close_fd(descriptor);			put_fd(descriptor);		}	}}