| Index: webrtc/common_video/h264/h264_bitstream_parser.cc
|
| diff --git a/webrtc/common_video/h264/h264_bitstream_parser.cc b/webrtc/common_video/h264/h264_bitstream_parser.cc
|
| index 4ad0ed4b283dcbf22b29f359dfcdcd5b73732214..bbd40e8f05b2d1bdd13c83132524ee3a73773b45 100644
|
| --- a/webrtc/common_video/h264/h264_bitstream_parser.cc
|
| +++ b/webrtc/common_video/h264/h264_bitstream_parser.cc
|
| @@ -27,10 +27,10 @@ const int kMaxQpValue = 51;
|
|
|
| namespace webrtc {
|
|
|
| -#define RETURN_ON_FAIL(x, res) \
|
| - if (!(x)) { \
|
| - LOG_F(LS_ERROR) << "FAILED: " #x; \
|
| - return res; \
|
| +#define RETURN_ON_FAIL(x, res) \
|
| + if (!(x)) { \
|
| + LOG_F(LS_WARNING) << "FAILED: " #x; \
|
| + return res; \
|
| }
|
|
|
| #define RETURN_INV_ON_FAIL(x) RETURN_ON_FAIL(x, kInvalidStream)
|
| @@ -64,7 +64,11 @@ H264BitstreamParser::Result H264BitstreamParser::ParseNonParameterSetNalu(
|
| RETURN_INV_ON_FAIL(slice_reader.ReadExponentialGolomb(&golomb_tmp));
|
| // slice_type: ue(v)
|
| uint32_t slice_type;
|
| - RETURN_INV_ON_FAIL(slice_reader.ReadExponentialGolomb(&slice_type));
|
| + if (!slice_reader.ReadExponentialGolomb(&slice_type)) {
|
| + // This is a temporary logging to help diagnose the issue.
|
| + LOG_F(LS_WARNING) << "Failed to read slice type: " << nalu_type;
|
| + return kInvalidStream;
|
| + }
|
| // slice_type's 5..9 range is used to indicate that all slices of a picture
|
| // have the same value of slice_type % 5, we don't care about that, so we map
|
| // to the corresponding 0..4 range.
|
|
|