rem: message.origin.thread = thread->id; message.origin.team = thread->team->id; message.origin.nub_port = nubPort;
context: _user_debugger(const char *userMessage){	// install the default debugger, if there is none yet	struct thread *thread = thread_get_current_thread();	port_id nubPort;	status_t error = ensure_debugger_installed(B_CURRENT_TEAM, &nubPort);	if (error != B_OK) {		// time to commit suicide		char buffer[128];		ssize_t length = user_strlcpy(buffer, userMessage, sizeof(buffer));		if (length >= 0) {			dprintf("_user_debugger(): Failed to install debugger. Message is: "				"`%s'\n", buffer);		} else {			dprintf("_user_debugger(): Failed to install debugger. Message is: "				"%p (%s)\n", userMessage, strerror(length));		}		_user_exit_team(1);	}	// prepare the message	debug_debugger_call message;	message.origin.thread = thread->id;	message.origin.team = thread->team->id;	message.origin.nub_port = nubPort;	message.message = (void*)userMessage;	thread_hit_debug_event(B_DEBUGGER_MESSAGE_DEBUGGER_CALL, &message,		sizeof(message), true);}