rem: if (oldfd >= context->table_size || newfd >= context->table_size
add: if ((uint32)oldfd >= context->table_size || (uint32)newfd >= context->table_size
context: dup2_fd(int oldfd, int newfd, bool kernel){	struct file_descriptor *evicted = NULL;	struct io_context *context;	TRACE(("dup2_fd: ofd = %d, nfd = %d\n", oldfd, newfd));	// quick check	if (oldfd < 0 || newfd < 0)		return B_FILE_ERROR;	// Get current I/O context and lock it	context = get_current_io_context(kernel);	mutex_lock(&context->io_mutex);	// Check if the fds are valid (mutex must be locked because	// the table size could be changed)	if (oldfd >= context->table_size		|| newfd >= context->table_size		|| context->fds[oldfd] == NULL) {		mutex_unlock(&context->io_mutex);		return B_FILE_ERROR;	}	// Check for identity, note that it cannot be made above	// because we always want to return an error on invalid	// handles	if (oldfd != newfd) {		// Now do the work		evicted = context->fds[newfd];		atomic_add(&context->fds[oldfd]->ref_count, 1);		context->fds[newfd] = context->fds[oldfd];	}	mutex_unlock(&context->io_mutex);	// Say bye bye to the evicted fd	if (evicted)		put_fd(evicted);	return newfd;}