Skip to content

Commit 72d7714

Browse files
committed
[Windows]fix sei crash final.
1 parent 6643baa commit 72d7714

1 file changed

Lines changed: 10 additions & 10 deletions

File tree

windows/APIExample/APIExample/Advanced/VideoMetadata/CAgoraMetaDataDlg.cpp

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ void CAgoraMetaDataObserver::onMetadataReceived(const Metadata &metadata)
5757
recvMetaData->uid = metadata.uid;
5858
recvMetaData->timeStampMs = metadata.timeStampMs;
5959
if (metadata.size > 0) {
60-
recvMetaData->buffer = new unsigned char[metadata.size];
60+
recvMetaData->buffer = new unsigned char[metadata.size + 1];
6161
memcpy_s(recvMetaData->buffer, metadata.size, metadata.buffer, metadata.size);
6262
recvMetaData->buffer[metadata.size] = 0;
6363
}
@@ -456,17 +456,17 @@ LRESULT CAgoraMetaDataDlg::OnEIDRemoteVideoStateChanged(WPARAM wParam, LPARAM lP
456456
LRESULT CAgoraMetaDataDlg::OnEIDMetadataReceived(WPARAM wParam, LPARAM lParam)
457457
{
458458
IMetadataObserver::Metadata* metaData = (IMetadataObserver::Metadata*)wParam;
459-
CString strInfo;
460-
strInfo.Format(_T("onMetadataReceived:uid:%u, ts=%d, size:%d."), metaData->uid, metaData->timeStampMs, metaData->size);
459+
CString strInfo;
460+
strInfo.Format(_T("onMetadataReceived:uid:%u, ts=%d, size:%d."), metaData->uid, metaData->timeStampMs, metaData->size);
461461

462-
if (metaData->size > 0) {
463-
CString str;
464-
TCHAR szBuf[2 * MAX_PATH] = { 0 };
465-
MultiByteToWideChar(CP_UTF8, MB_USEGLYPHCHARS, std::string((char*)metaData->buffer).c_str(), 2 * MAX_PATH, szBuf, 2 * MAX_PATH);
466-
str.Format(_T("Info: %s"), CString(szBuf));
467-
strInfo += str;
468-
}
462+
if (metaData->size > 0) {
463+
CString str;
464+
str.Format(_T("Info: %s"), utf82cs((char *)metaData->buffer));
465+
strInfo += str;
466+
}
469467
m_edtRecvSEI.SetWindowText(strInfo);
468+
delete metaData->buffer;
469+
delete metaData;
470470
return 0;
471471
}
472472

0 commit comments

Comments
 (0)