diff --git a/packages/ra-core/src/auth/useLogoutIfAccessDenied.ts b/packages/ra-core/src/auth/useLogoutIfAccessDenied.ts index 5e9429dcae6..d49e4ab4280 100644 --- a/packages/ra-core/src/auth/useLogoutIfAccessDenied.ts +++ b/packages/ra-core/src/auth/useLogoutIfAccessDenied.ts @@ -43,6 +43,7 @@ const useLogoutIfAccessDenied = (): LogoutIfAccessDenied => { const logout = useLogout(); const notify = useNotify(); const history = useHistory(); + const logoutIfAccessDenied = useCallback( (error?: any, disableNotification?: boolean) => authProvider diff --git a/packages/ra-core/src/dataProvider/performQuery/performOptimisticQuery.ts b/packages/ra-core/src/dataProvider/performQuery/performOptimisticQuery.ts index e016658de3b..c462c3bd0b9 100644 --- a/packages/ra-core/src/dataProvider/performQuery/performOptimisticQuery.ts +++ b/packages/ra-core/src/dataProvider/performQuery/performOptimisticQuery.ts @@ -89,7 +89,10 @@ export const performOptimisticQuery = ({ console.error(error); } return logoutIfAccessDenied(error).then(loggedOut => { - if (loggedOut) return; + if (loggedOut) { + dispatch({ type: FETCH_END }); + return; + } dispatch({ type: `${action}_FAILURE`, error: error.message ? error.message : error, diff --git a/packages/ra-core/src/dataProvider/performQuery/performPessimisticQuery.ts b/packages/ra-core/src/dataProvider/performQuery/performPessimisticQuery.ts index 9daeec1b245..214c4e34cc4 100644 --- a/packages/ra-core/src/dataProvider/performQuery/performPessimisticQuery.ts +++ b/packages/ra-core/src/dataProvider/performQuery/performPessimisticQuery.ts @@ -71,7 +71,10 @@ export const performPessimisticQuery = ({ console.error(error); } return logoutIfAccessDenied(error).then(loggedOut => { - if (loggedOut) return; + if (loggedOut) { + dispatch({ type: FETCH_END }); + return; + } dispatch({ type: `${action}_FAILURE`, error: error.message ? error.message : error, diff --git a/packages/ra-core/src/dataProvider/performQuery/performUndoableQuery.ts b/packages/ra-core/src/dataProvider/performQuery/performUndoableQuery.ts index 8716f80d64f..fae1f64dc3c 100644 --- a/packages/ra-core/src/dataProvider/performQuery/performUndoableQuery.ts +++ b/packages/ra-core/src/dataProvider/performQuery/performUndoableQuery.ts @@ -129,7 +129,10 @@ export const performUndoableQuery = ({ console.error(error); } return logoutIfAccessDenied(error).then(loggedOut => { - if (loggedOut) return; + if (loggedOut) { + dispatch({ type: FETCH_END }); + return; + } dispatch({ type: `${action}_FAILURE`, error: error.message ? error.message : error,