Index: webrtc/modules/rtp_rtcp/source/rtp_format_h264.cc |
diff --git a/webrtc/modules/rtp_rtcp/source/rtp_format_h264.cc b/webrtc/modules/rtp_rtcp/source/rtp_format_h264.cc |
index ebd46b02e0e04a9381693ef1a25f981bdf3d0a94..a5b42ab3e0e2c27661fe6ba16bed9ae7a7983df2 100644 |
--- a/webrtc/modules/rtp_rtcp/source/rtp_format_h264.cc |
+++ b/webrtc/modules/rtp_rtcp/source/rtp_format_h264.cc |
@@ -10,6 +10,7 @@ |
#include <string.h> |
+#include "webrtc/base/logging.h" |
#include "webrtc/modules/interface/module_common_types.h" |
#include "webrtc/modules/rtp_rtcp/source/byte_io.h" |
#include "webrtc/modules/rtp_rtcp/source/h264_sps_parser.h" |
@@ -316,6 +317,11 @@ bool RtpDepacketizerH264::Parse(ParsedPayload* parsed_payload, |
const uint8_t* payload_data, |
size_t payload_data_length) { |
assert(parsed_payload != NULL); |
+ if (payload_data_length == 0) { |
+ LOG(LS_ERROR) << "Empty payload."; |
+ return false; |
+ } |
+ |
uint8_t nal_type = payload_data[0] & kTypeMask; |
size_t offset = 0; |
if (nal_type == kFuA) { |