rem: messenger.SendMessage(&message);
add: BHandler *noHandler = NULL;  if(messenger.SendMessage(&message, noHandler, 100000) != B_OK) send_data(sender, B_OK, NULL, 0);
context: PPPInterfaceListenerThread::Run(){	ppp_report_packet packet;	ppp_interface_id *interfaceID;	int32 code;	thread_id sender;		BMessage message;	bool sendMessage;		while(true) {		code = receive_data(&sender, &packet, sizeof(packet));				if(code == QUIT_REPORT_THREAD)			break;		else if(code != PPP_REPORT_CODE)			continue;				BMessenger messenger(fListener->Target());		sendMessage = messenger.IsValid();				if(sendMessage) {			message.MakeEmpty();						message.what = PPP_REPORT_MESSAGE;			message.AddInt32("sender", sender);			message.AddInt32("type", packet.type);			message.AddInt32("code", packet.code);						if(packet.length >= sizeof(ppp_interface_id)					&& ((packet.type == PPP_MANAGER_REPORT							&& packet.code == PPP_REPORT_INTERFACE_CREATED)						|| packet.type >= PPP_INTERFACE_REPORT_TYPE_MIN)) {				interfaceID = reinterpret_cast<ppp_interface_id*>(packet.data);				message.AddInt32("interface", static_cast<int32>(*interfaceID));			}						messenger.SendMessage(&message);		}	}		return B_OK;}