diff --git a/reflector/DVHeaderPacket.cpp b/reflector/DVHeaderPacket.cpp index ae3e2e4..d0e2cd3 100644 --- a/reflector/DVHeaderPacket.cpp +++ b/reflector/DVHeaderPacket.cpp @@ -86,7 +86,8 @@ CDvHeaderPacket::CDvHeaderPacket(const CM17Packet &m17) : CPacket(m17) m_uiFlag1 = m_uiFlag2 = m_uiFlag3 = 0; m_uiCrc = 0; m_csUR = CCallsign("CQCQCQ"); - m_csMY = m_csRPT1 = m_csRPT2 = m17.GetSourceCallsign(); + m_csMY = m17.GetSourceCallsign(); + m_csRPT1 = m_csRPT2 = m17.GetDestCallsign(); m_csRPT1.SetCSModule('G'); } diff --git a/reflector/Protocol.cpp b/reflector/Protocol.cpp index 5bd5c1d..e9a7f22 100644 --- a/reflector/Protocol.cpp +++ b/reflector/Protocol.cpp @@ -134,7 +134,7 @@ void CProtocol::OnDvFramePacketIn(std::unique_ptr &Frame, const if ( stream ) { // set the packet module, the transcoder needs this - Frame->SetPacketModule(stream->GetRpt2Module()); + Frame->SetPacketModule(stream->GetOwnerClient()->GetReflectorModule()); // and push stream->Lock(); stream->Push(std::move(Frame)); diff --git a/reflector/Reflector.cpp b/reflector/Reflector.cpp index 581e3d7..fda829d 100644 --- a/reflector/Reflector.cpp +++ b/reflector/Reflector.cpp @@ -181,9 +181,10 @@ std::shared_ptr CReflector::OpenStream(std::unique_ptrSetPacketModule(client->GetReflectorModule()); // get the module's queue char module = DvHeader->GetRpt2Module(); - DvHeader->SetPacketModule(module); auto stream = GetStream(module); if ( stream == nullptr ) {