Screen Sharing Constant Spinner - Mac OS 12.6

Hey guys,

Seeing an issue with screen sharing on Mac OS 12.6 with jitsi version - 2.0.6826

We are having our own desktop app that makes use of jitsi electron sdk and when user tries to share screen - they “sometimes” keep seeing the spinner and doesn’t show up any window/tap to be shared. Is this a known issue or any idea what might be wrong?

ps: It isn’t reproducible always and it can work again after restarting an app. We are working on moving to latest stable jitsi versions (7882) - meanwhile, wonder if we have any temporary/quick fix that can be made on our production environment.

Thanks!

This sounds like a problem on the electron side. I haven’t seen reports like this.

I see Damien…These are the logs we just collected when it happens -

Console logs

Logger.js:154 2022-10-14T18:23:43.270Z [JitsiMeetJS.js] <Object.getGlobalOnErrorHandler>: UnhandledError: Called JitsiMeetElectron.obtainDesktopStreams but it is not defined Script: null Line: null Column: null StackTrace: Error: Called JitsiMeetElectron.obtainDesktopStreams but it is not defined
at https://domain.com/libs/app.bundle.min.js?v=158:138:517440
at new Promise ()
at e.length.thumbnailSize (https://domain.com/libs/app.bundle.min.js?v=158:138:517240)
at ine._updateSources (https://domain.com/libs/app.bundle.min.js?v=158:138:517567)
at ine._startPolling (https://domain.com/libs/app.bundle.min.js?v=158:138:516891)
at ine.componentDidMount (https://domain.com/libs/app.bundle.min.js?v=158:138:515154)
at ss (https://domain.com/libs/app.bundle.min.js?v=158:138:1471758)
at bl (https://domain.com/libs/app.bundle.min.js?v=158:138:1489384)
at t.unstable_runWithPriority (https://domain.com/libs/app.bundle.min.js?v=158:138:1648084)
at Vr (https://domain.com/libs/app.bundle.min.js?v=158:138:1433487)
at gl (https://domain.com/libs/app.bundle.min.js?v=158:138:1486050)
at al (https://domain.com/libs/app.bundle.min.js?v=158:138:1482204)
at https://domain.com/libs/app.bundle.min.js?v=158:138:1433778
at t.unstable_runWithPriority (https://domain.com/libs/app.bundle.min.js?v=158:138:1648084)
at Vr (https://domain.com/libs/app.bundle.min.js?v=158:138:1433487)
at Kr (https://domain.com/libs/app.bundle.min.js?v=158:138:1433723)
at Gr (https://domain.com/libs/app.bundle.min.js?v=158:138:1433658)
at rl (https://domain.com/libs/app.bundle.min.js?v=158:138:1482296)
at Object.notify (https://domain.com/libs/app.bundle.min.js?v=158:2:2977)
at e.t.notifyNestedSubs (https://domain.com/libs/app.bundle.min.js?v=158:2:2547)
at t.n.notifySubscribers (https://domain.com/libs/app.bundle.min.js?v=158:2:4217)
at e.t.handleChangeWrapper (https://domain.com/libs/app.bundle.min.js?v=158:2:2615)
at p (https://domain.com/libs/app.bundle.min.js?v=158:2:11246)
at https://domain.com/libs/app.bundle.min.js?v=158:138:1634328
at https://domain.com/libs/app.bundle.min.js?v=158:138:773154
at https://domain.com/libs/app.bundle.min.js?v=158:138:745806
at https://domain.com/libs/app.bundle.min.js?v=158:138:745115
at https://domain.com/libs/app.bundle.min.js?v=158:138:742483
at https://domain.com/libs/app.bundle.min.js?v=158:138:742150
at https://domain.com/libs/app.bundle.min.js?v=158:138:741543
at https://domain.com/libs/app.bundle.min.js?v=158:138:738413
at https://domain.com/libs/app.bundle.min.js?v=158:138:737552
at https://domain.com/libs/app.bundle.min.js?v=158:138:735118
at https://domain.com/libs/app.bundle.min.js?v=158:138:735042
at https://domain.com/libs/app.bundle.min.js?v=158:138:720091
at https://domain.com/libs/app.bundle.min.js?v=158:138:713653
at https://domain.com/libs/app.bundle.min.js?v=158:138:712895
at https://domain.com/libs/app.bundle.min.js?v=158:138:711907
at https://domain.com/libs/app.bundle.min.js?v=158:138:706884
at https://domain.com/libs/app.bundle.min.js?v=158:138:704973
at https://domain.com/libs/app.bundle.min.js?v=158:138:703538
at https://domain.com/libs/app.bundle.min.js?v=158:138:703370
at https://domain.com/libs/app.bundle.min.js?v=158:138:703045
at https://domain.com/libs/app.bundle.min.js?v=158:138:702034
at https://domain.com/libs/app.bundle.min.js?v=158:138:701627
at https://domain.com/libs/app.bundle.min.js?v=158:138:698952
at https://domain.com/libs/app.bundle.min.js?v=158:138:696789
at https://domain.com/libs/app.bundle.min.js?v=158:138:696644
at https://domain.com/libs/app.bundle.min.js?v=158:138:696361
at https://domain.com/libs/app.bundle.min.js?v=158:138:696322
at https://domain.com/libs/app.bundle.min.js?v=158:138:690869
at https://domain.com/libs/app.bundle.min.js?v=158:138:690059
at https://domain.com/libs/app.bundle.min.js?v=158:138:689786
at https://domain.com/libs/app.bundle.min.js?v=158:138:686946
at https://domain.com/libs/app.bundle.min.js?v=158:138:686578
at https://domain.com/libs/app.bundle.min.js?v=158:138:686174
at https://domain.com/libs/app.bundle.min.js?v=158:138:684641
at https://domain.com/libs/app.bundle.min.js?v=158:138:682426
at https://domain.com/libs/app.bundle.min.js?v=158:138:681008
at https://domain.com/libs/app.bundle.min.js?v=158:138:679216
at https://domain.com/libs/app.bundle.min.js?v=158:138:678953
at https://domain.com/libs/app.bundle.min.js?v=158:138:678883
at https://domain.com/libs/app.bundle.min.js?v=158:138:677412
at https://domain.com/libs/app.bundle.min.js?v=158:138:672649
at https://domain.com/libs/app.bundle.min.js?v=158:138:671855
at https://domain.com/libs/app.bundle.min.js?v=158:138:668590
at https://domain.com/libs/app.bundle.min.js?v=158:138:666062
at https://domain.com/libs/app.bundle.min.js?v=158:138:664648
at https://domain.com/libs/app.bundle.min.js?v=158:138:663400
at https://domain.com/libs/app.bundle.min.js?v=158:138:663361
at https://domain.com/libs/app.bundle.min.js?v=158:138:661862
at https://domain.com/libs/app.bundle.min.js?v=158:138:660952
at https://domain.com/libs/app.bundle.min.js?v=158:138:660678
at https://domain.com/libs/app.bundle.min.js?v=158:138:654541
at https://domain.com/libs/app.bundle.min.js?v=158:138:651927
at https://domain.com/libs/app.bundle.min.js?v=158:138:646323
at https://domain.com/libs/app.bundle.min.js?v=158:138:643831
at https://domain.com/libs/app.bundle.min.js?v=158:138:642930
at https://domain.com/libs/app.bundle.min.js?v=158:138:642574
at https://domain.com/libs/app.bundle.min.js?v=158:138:641582
at https://domain.com/libs/app.bundle.min.js?v=158:138:640912
at https://domain.com/libs/app.bundle.min.js?v=158:138:640367
at https://domain.com/libs/app.bundle.min.js?v=158:138:638478
at https://domain.com/libs/app.bundle.min.js?v=158:138:637333
at https://domain.com/libs/app.bundle.min.js?v=158:138:637295
at https://domain.com/libs/app.bundle.min.js?v=158:138:635994
at https://domain.com/libs/app.bundle.min.js?v=158:138:635765
at https://domain.com/libs/app.bundle.min.js?v=158:138:633931
at https://domain.com/libs/app.bundle.min.js?v=158:138:632441
at https://domain.com/libs/app.bundle.min.js?v=158:138:632365
at https://domain.com/libs/app.bundle.min.js?v=158:138:630633
at https://domain.com/libs/app.bundle.min.js?v=158:138:629644
at https://domain.com/libs/app.bundle.min.js?v=158:138:627483
at https://domain.com/libs/app.bundle.min.js?v=158:138:626541
at https://domain.com/libs/app.bundle.min.js?v=158:138:622272
at Object.dispatch (https://domain.com/libs/app.bundle.min.js?v=158:138:621860)
at Object.openDesktopPicker (https://domain.com/libs/app.bundle.min.js?v=158:138:557067)
at Object.obtainScreenOnElectron (https://domain.com/libs/lib-jitsi-meet.min.js?v=158:2:411396)
at https://domain.com/libs/lib-jitsi-meet.min.js?v=158:2:499051
at new Promise ()
at vi._getDesktopMedia (https://domain.com/libs/lib-jitsi-meet.min.js?v=158:2:499027)
at vi. (https://domain.com/libs/lib-jitsi-meet.min.js?v=158:2:499949)
at vi.obtainAudioAndVideoPermissions (https://domain.com/libs/lib-jitsi-meet.min.js?v=158:2:501249)
at Function.obtainAudioAndVideoPermissions (https://domain.com/libs/lib-jitsi-meet.min.js?v=158:2:576345)
at Object.createLocalTracks (https://domain.com/libs/lib-jitsi-meet.min.js?v=158:2:697202)
at https://domain.com/libs/app.bundle.min.js?v=158:2:255767
at async Object.toggleScreenSharing (https://domain.com/libs/app.bundle.min.js?v=158:138:572950)
r @ Logger.js:154
getGlobalOnErrorHandler @ JitsiMeetJS.js:530
window.onunhandledrejection @ middleware.js:127
functions.js:42 Uncaught (in promise) Error: Called JitsiMeetElectron.obtainDesktopStreams but it is not defined

ps - Using “electron”: “^18.1.0” version

This is a problem where electron utils did not manage to register the handler.

This was not called on that iframe: jitsi-meet-electron-sdk/render.js at 6bc03e026071b9ae890f4b8e0711d5ac9118393c · jitsi/jitsi-meet-electron-sdk · GitHub

hmmm…Thanks for pointing that out Damien. I’ll check it.