소스 검색

Fixed missing wrap in rtcAddTrack()

Paul-Louis Ageneau 5 년 전
부모
커밋
5dd57204dd
1개의 변경된 파일11개의 추가작업 그리고 9개의 파일을 삭제
  1. 11 9
      src/capi.cpp

+ 11 - 9
src/capi.cpp

@@ -325,15 +325,17 @@ int rtcDeleteDataChannel(int dc) {
 }
 
 int rtcAddTrack(int pc, const char *mediaDescriptionSdp) {
-	if (!mediaDescriptionSdp)
-		throw std::invalid_argument("Unexpected null pointer for track media description");
-
-	auto peerConnection = getPeerConnection(pc);
-	Description::Media media{string(mediaDescriptionSdp)};
-	int tr = emplaceTrack(peerConnection->addTrack(std::move(media)));
-	if (auto ptr = getUserPointer(pc))
-		rtcSetUserPointer(tr, *ptr);
-	return tr;
+	return WRAP({
+		if (!mediaDescriptionSdp)
+			throw std::invalid_argument("Unexpected null pointer for track media description");
+
+		auto peerConnection = getPeerConnection(pc);
+		Description::Media media{string(mediaDescriptionSdp)};
+		int tr = emplaceTrack(peerConnection->addTrack(std::move(media)));
+		if (auto ptr = getUserPointer(pc))
+			rtcSetUserPointer(tr, *ptr);
+		return tr;
+	});
 }
 
 int rtcDeleteTrack(int tr) {