Skip to content

Commit d44e0a2

Browse files
committed
Fix camera permissions race condition
1 parent f7e37b6 commit d44e0a2

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

src/components/modals/ScanModal.tsx

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,10 @@ export const ScanModal: React.FC<Props> = props => {
7575
handleBarCodeRead(codes)
7676
}
7777
})
78-
const cameraPermission = useSelector(state => state.permissions.camera)
78+
const reduxCameraPermission = useSelector(state => state.permissions.camera)
79+
const [cameraPermission, setCameraPermission] = React.useState(
80+
reduxCameraPermission
81+
)
7982
const [torchEnabled, setTorchEnabled] = React.useState(false)
8083
const [scanEnabled, setScanEnabled] = React.useState(false)
8184

@@ -87,7 +90,11 @@ export const ScanModal: React.FC<Props> = props => {
8790
// Mount effects
8891
React.useEffect(() => {
8992
setScanEnabled(true)
90-
checkAndRequestPermission('camera').catch(showError)
93+
checkAndRequestPermission('camera')
94+
.then(status => {
95+
setCameraPermission(status)
96+
})
97+
.catch(showError)
9198
return () => {
9299
setScanEnabled(false)
93100
}

0 commit comments

Comments
 (0)