From 848f339ec9419bd9d1bd90414eeb9320c4067b08 Mon Sep 17 00:00:00 2001 From: michele papalini Date: Fri, 22 Nov 2019 09:50:31 +0100 Subject: [HICN-409] remove race condition in rtc procuder socket Signed-off-by: michele papalini Change-Id: Ifdc5d912b8687bae3da78fadb05524d78e767f5a --- libtransport/src/hicn/transport/interfaces/rtc_socket_producer.cc | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'libtransport/src/hicn') diff --git a/libtransport/src/hicn/transport/interfaces/rtc_socket_producer.cc b/libtransport/src/hicn/transport/interfaces/rtc_socket_producer.cc index c1a45ebb7..f1057aa57 100644 --- a/libtransport/src/hicn/transport/interfaces/rtc_socket_producer.cc +++ b/libtransport/src/hicn/transport/interfaces/rtc_socket_producer.cc @@ -150,8 +150,9 @@ void RTCProducerSocket::produce(std::unique_ptr &&buffer) { producedBytes_ += (uint32_t)(buffer_size + headerSize_ + TIMESTAMP_LEN); producedPackets_++; + Name n(flowName_); auto content_object = - std::make_shared(flowName_.setSuffix(currentSeg_.load())); + std::make_shared(n.setSuffix(currentSeg_.load())); auto payload = utils::MemBuf::create(TIMESTAMP_LEN); memcpy(payload->writableData(), &now, TIMESTAMP_LEN); @@ -340,8 +341,9 @@ void RTCProducerSocket::sendNack(uint32_t sequence) { nack_payload->append(NACK_HEADER_SIZE); ContentObject nack; + Name n(flowName_); nack.appendPayload(std::move(nack_payload)); - nack.setName(flowName_.setSuffix(sequence)); + nack.setName(n.setSuffix(sequence)); uint32_t *payload_ptr = (uint32_t *)nack.getPayload()->data(); *payload_ptr = currentSeg_.load(); -- cgit 1.2.3-korg