This repository was archived by the owner on Oct 23, 2024. It is now read-only.
File tree Expand file tree Collapse file tree 2 files changed +15
-6
lines changed Expand file tree Collapse file tree 2 files changed +15
-6
lines changed Original file line number Diff line number Diff line change @@ -69,9 +69,10 @@ FramePacket::FramePacket (AVPacket *packet)
69
69
: m_packet(NULL )
70
70
{
71
71
m_packet = (AVPacket *)malloc (sizeof (AVPacket));
72
-
73
- av_init_packet (m_packet);
74
- av_packet_ref (m_packet, packet);
72
+ if (m_packet) {
73
+ av_init_packet (m_packet);
74
+ av_packet_ref (m_packet, packet);
75
+ }
75
76
}
76
77
77
78
FramePacket::~FramePacket ()
@@ -1153,6 +1154,10 @@ bool LiveStreamIn::parse_avcC(AVPacket *pkt) {
1153
1154
1154
1155
nals_buf_length += nalsize + 4 ;
1155
1156
nals_buf = (uint8_t *)realloc (nals_buf, nals_buf_length);
1157
+ if (nals_buf == nullptr ) {
1158
+ ELOG_ERROR_T (" OOM! Allocate size %d" , nals_buf_length);
1159
+ return false ;
1160
+ }
1156
1161
}
1157
1162
1158
1163
nals_buf[nals_size] = 0 ;
Original file line number Diff line number Diff line change @@ -466,9 +466,13 @@ void MsdkFrameDecoder::updateBitstream(const Frame& frame)
466
466
}
467
467
468
468
if (m_bitstream->DataOffset + m_bitstream->DataLength + frame.length > m_bitstream->MaxLength ) {
469
- memmove (m_bitstream->Data , m_bitstream->Data + m_bitstream->DataOffset , m_bitstream->DataLength );
470
- m_bitstream->DataOffset = 0 ;
471
- ELOG_TRACE_T (" Move bitstream buffer offset" );
469
+ if (m_bitstream->Data ) {
470
+ memmove (m_bitstream->Data , m_bitstream->Data + m_bitstream->DataOffset , m_bitstream->DataLength );
471
+ m_bitstream->DataOffset = 0 ;
472
+ ELOG_TRACE_T (" Move bitstream buffer offset" );
473
+ } else { // make code scanner happy
474
+ return ;
475
+ }
472
476
}
473
477
474
478
memcpy (m_bitstream->Data + m_bitstream->DataOffset + m_bitstream->DataLength , frame.payload , frame.length );
You can’t perform that action at this time.
0 commit comments