[mirotalksfu] - fix loop in exit room

هذا الالتزام موجود في:
Miroslav Pejic
2025-07-23 23:36:56 +02:00
الأصل a42c5ef77d
التزام 0f86d7270a
6 ملفات معدلة مع 20 إضافات و8 حذوفات

عرض الملف

@@ -76,7 +76,7 @@ let BRAND = {
},
about: {
imageUrl: '../images/mirotalk-logo.gif',
title: '<strong>WebRTC SFU v1.9.10</strong>',
title: '<strong>WebRTC SFU v1.9.11</strong>',
html: `
<button
id="support-button"

عرض الملف

@@ -11,7 +11,7 @@ if (location.href.substr(0, 5) !== 'https') location.href = 'https' + location.h
* @license For commercial or closed source, contact us at license.mirotalk@gmail.com or purchase directly via CodeCanyon
* @license CodeCanyon: https://codecanyon.net/item/mirotalk-sfu-webrtc-realtime-video-conferences/40769970
* @author Miroslav Pejic - miroslav.pejic.85@gmail.com
* @version 1.9.10
* @version 1.9.11
*
*/
@@ -306,6 +306,8 @@ let workletNode = null;
let RoomURL = window.location.origin + '/join/' + room_id;
let isExiting = false;
let transcription;
let showFreeAvatars = true;
@@ -3553,6 +3555,9 @@ function handleRoomClientEvents() {
show(startRtmpURLButton);
});
rc.on(RoomClient.EVENTS.exitRoom, () => {
if (isExiting) return;
isExiting = true;
console.log('Room event: Client leave room');
endRoomSession();
@@ -5471,7 +5476,7 @@ function showAbout() {
position: 'center',
imageUrl: BRAND.about?.imageUrl && BRAND.about.imageUrl.trim() !== '' ? BRAND.about.imageUrl : image.about,
customClass: { image: 'img-about' },
title: BRAND.about?.title && BRAND.about.title.trim() !== '' ? BRAND.about.title : 'WebRTC SFU v1.9.10',
title: BRAND.about?.title && BRAND.about.title.trim() !== '' ? BRAND.about.title : 'WebRTC SFU v1.9.11',
html: `
<br />
<div id="about">

عرض الملف

@@ -9,7 +9,7 @@
* @license For commercial or closed source, contact us at license.mirotalk@gmail.com or purchase directly via CodeCanyon
* @license CodeCanyon: https://codecanyon.net/item/mirotalk-sfu-webrtc-realtime-video-conferences/40769970
* @author Miroslav Pejic - miroslav.pejic.85@gmail.com
* @version 1.9.10
* @version 1.9.11
*
*/
@@ -3493,11 +3493,18 @@ class RoomClient {
}
exitRoom(disconnectAll = false) {
if (isExiting) return;
isExiting = true;
const switchDisconnectAllOnLeave = getId('switchDisconnectAllOnLeave');
if (isPresenter && (disconnectAll || (switchDisconnectAllOnLeave && switchDisconnectAllOnLeave.checked))) {
this.ejectAllOnLeave();
}
this.exit();
setTimeout(() => {
isExiting = false;
}, 2000);
}
// ####################################################