Index: webrtc/modules/rtp_rtcp/source/forward_error_correction.cc |
diff --git a/webrtc/modules/rtp_rtcp/source/forward_error_correction.cc b/webrtc/modules/rtp_rtcp/source/forward_error_correction.cc |
index 7a9a8beecf033e66830ef5555e4d689c9a65f25e..e28dc27c22d43a5c491f147f109a2a096f57015d 100644 |
--- a/webrtc/modules/rtp_rtcp/source/forward_error_correction.cc |
+++ b/webrtc/modules/rtp_rtcp/source/forward_error_correction.cc |
@@ -129,9 +129,7 @@ int32_t ForwardErrorCorrection::GenerateFEC(const PacketList& media_packet_list, |
int num_maskBytes = l_bit ? kMaskSizeLBitSet : kMaskSizeLBitClear; |
// Do some error checking on the media packets. |
- PacketList::const_iterator media_list_it = media_packet_list.begin(); |
- while (media_list_it != media_packet_list.end()) { |
- Packet* media_packet = *media_list_it; |
+ for (Packet* media_packet : media_packet_list) { |
assert(media_packet); |
if (media_packet->length < kRtpHeaderSize) { |
@@ -146,7 +144,6 @@ int32_t ForwardErrorCorrection::GenerateFEC(const PacketList& media_packet_list, |
LOG(LS_WARNING) << "Media packet " << media_packet->length << " bytes " |
<< "with overhead is larger than " << IP_PACKET_SIZE; |
} |
- media_list_it++; |
} |
int num_fec_packets = |
@@ -167,29 +164,30 @@ int32_t ForwardErrorCorrection::GenerateFEC(const PacketList& media_packet_list, |
// -- Generate packet masks -- |
// Always allocate space for a large mask. |
- uint8_t* packet_mask = new uint8_t[num_fec_packets * kMaskSizeLBitSet]; |
- memset(packet_mask, 0, num_fec_packets * num_maskBytes); |
+ rtc::scoped_ptr<uint8_t[]> packet_mask( |
+ new uint8_t[num_fec_packets * kMaskSizeLBitSet]); |
+ memset(packet_mask.get(), 0, num_fec_packets * num_maskBytes); |
internal::GeneratePacketMasks(num_media_packets, num_fec_packets, |
num_important_packets, use_unequal_protection, |
- mask_table, packet_mask); |
+ mask_table, packet_mask.get()); |
- int num_maskBits = InsertZerosInBitMasks(media_packet_list, packet_mask, |
- num_maskBytes, num_fec_packets); |
+ int num_mask_bits = InsertZerosInBitMasks( |
+ media_packet_list, packet_mask.get(), num_maskBytes, num_fec_packets); |
- l_bit = (num_maskBits > 8 * kMaskSizeLBitClear); |
+ l_bit = (num_mask_bits > 8 * kMaskSizeLBitClear); |
- if (num_maskBits < 0) { |
- delete[] packet_mask; |
+ if (num_mask_bits < 0) { |
return -1; |
} |
if (l_bit) { |
num_maskBytes = kMaskSizeLBitSet; |
} |
- GenerateFecBitStrings(media_packet_list, packet_mask, num_fec_packets, l_bit); |
- GenerateFecUlpHeaders(media_packet_list, packet_mask, l_bit, num_fec_packets); |
+ GenerateFecBitStrings(media_packet_list, packet_mask.get(), num_fec_packets, |
+ l_bit); |
+ GenerateFecUlpHeaders(media_packet_list, packet_mask.get(), l_bit, |
+ num_fec_packets); |
- delete[] packet_mask; |
return 0; |
} |