aboutsummaryrefslogtreecommitdiff
path: root/client-web/source/user/remote.ts
diff options
context:
space:
mode:
Diffstat (limited to 'client-web/source/user/remote.ts')
-rw-r--r--client-web/source/user/remote.ts8
1 files changed, 4 insertions, 4 deletions
diff --git a/client-web/source/user/remote.ts b/client-web/source/user/remote.ts
index 59d811a..8921b04 100644
--- a/client-web/source/user/remote.ts
+++ b/client-web/source/user/remote.ts
@@ -33,12 +33,12 @@ export class RemoteUser extends User {
this.peer.ontrack = ev => {
console.log(ev)
const t = ev.track
- const id = ev.streams[0].id
- if (!id) return log({ scope: "media", warn: true }, "got a track without stream")
+ const id = ev.streams[0]?.id
+ if (!id) { ev.transceiver.stop(); return log({ scope: "media", warn: true }, "got a track without stream") }
const r = this.resources.get(id)
- if (!r) return log({ scope: "media", warn: true }, "got an unassociated track")
+ if (!r) { ev.transceiver.stop(); return log({ scope: "media", warn: true }, "got an unassociated track") }
if (r instanceof TrackResource) r.track = new TrackHandle(t);
- else log({ scope: "media", warn: true }, "got a track for a resource that should use data channel")
+ else { ev.transceiver.stop(); return log({ scope: "media", warn: true }, "got a track for a resource that should use data channel") }
log("media", `remote track: ${this.display_name}`, t)
this.update_stats()
}