Browse Source

Fixed missing wrap in rtcAddTrack()

Paul-Louis Ageneau 4 years ago
parent
commit
5dd57204dd
1 changed files with 11 additions and 9 deletions
  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) {