From 0aa54d86503dd69b1c7015d3b009773bc35435b0 Mon Sep 17 00:00:00 2001 From: Vlad Piersec Date: Fri, 19 Jun 2020 16:21:00 +0300 Subject: [PATCH] (prejoin): fix mobile --- react/features/base/devices/functions.js | 6 +++++- react/features/device-selection/middleware.js | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/react/features/base/devices/functions.js b/react/features/base/devices/functions.js index 5c84e487a..28586e687 100644 --- a/react/features/base/devices/functions.js +++ b/react/features/base/devices/functions.js @@ -234,7 +234,7 @@ export function getVideoDeviceIds(state: Object) { } /** - * Returns true if there are devices of a specific type. + * Returns true if there are devices of a specific type or on native platform. * * @param {Object} state - The state of the application. * @param {string} type - The type of device: VideoOutput | audioOutput | audioInput. @@ -242,6 +242,10 @@ export function getVideoDeviceIds(state: Object) { * @returns {boolean} */ export function hasAvailableDevices(state: Object, type: string) { + if (state['features/base/devices'] === undefined) { + return true; + } + return state['features/base/devices'].availableDevices[type].length > 0; } diff --git a/react/features/device-selection/middleware.js b/react/features/device-selection/middleware.js index d1d9e5d98..cf7ced47f 100644 --- a/react/features/device-selection/middleware.js +++ b/react/features/device-selection/middleware.js @@ -18,7 +18,7 @@ MiddlewareRegistry.register(store => next => action => { if (action.type === UPDATE_DEVICE_LIST) { const state = store.getState(); const { popupDialogData } = state['features/device-selection']; - const { availableDevices } = state['features/base/devices']; + const { availableDevices } = state['features/base/devices'] || {}; if (popupDialogData) { popupDialogData.transport.sendEvent({