@@ -297,27 +297,29 @@ function MoneyRequestConfirmationList({
297297 const isTypeInvoice = iouType === CONST . IOU . TYPE . INVOICE ;
298298 const isScanRequest = useMemo ( ( ) => isScanRequestUtil ( transaction ) , [ transaction ] ) ;
299299 const isCreateExpenseFlow = ! ! transaction ?. isFromGlobalCreate && ! isPerDiemRequest ;
300+ const isMovingTransactionFromTrackExpense = isMovingTransactionFromTrackExpenseUtil ( action ) ;
300301
301302 const transactionID = transaction ?. transactionID ;
302303 const customUnitRateID = getRateID ( transaction ) ;
303304
304305 const subRates = transaction ?. comment ?. customUnit ?. subRates ?? [ ] ;
306+ const defaultRate = defaultMileageRate ?. customUnitRateID ;
307+ const lastSelectedRate = policy ?. id ? ( lastSelectedDistanceRates ?. [ policy . id ] ?? defaultRate ) : defaultRate ;
305308
306309 useEffect ( ( ) => {
307- if ( customUnitRateID !== '-1' || ! isDistanceRequest || ! transactionID || ! policy ?. id ) {
310+ if (
311+ ! [ '-1' , CONST . CUSTOM_UNITS . FAKE_P2P_ID ] . includes ( customUnitRateID ) ||
312+ ! isDistanceRequest ||
313+ ! isPolicyExpenseChat ||
314+ ! transactionID ||
315+ ! lastSelectedRate ||
316+ isMovingTransactionFromTrackExpense
317+ ) {
308318 return ;
309319 }
310320
311- const defaultRate = defaultMileageRate ?. customUnitRateID ;
312- const lastSelectedRate = lastSelectedDistanceRates ?. [ policy . id ] ?? defaultRate ;
313- const rateID = lastSelectedRate ;
314-
315- if ( ! rateID ) {
316- return ;
317- }
318-
319- setCustomUnitRateID ( transactionID , rateID ) ;
320- } , [ defaultMileageRate , customUnitRateID , lastSelectedDistanceRates , policy ?. id , transactionID , isDistanceRequest ] ) ;
321+ setCustomUnitRateID ( transactionID , lastSelectedRate ) ;
322+ } , [ customUnitRateID , transactionID , lastSelectedRate , isDistanceRequest , isPolicyExpenseChat , isMovingTransactionFromTrackExpense ] ) ;
321323
322324 const mileageRate = DistanceRequestUtils . getRate ( { transaction, policy, policyDraft} ) ;
323325 const rate = mileageRate . rate ;
@@ -350,8 +352,6 @@ function MoneyRequestConfirmationList({
350352 setMoneyRequestTaxRate ( transactionID , defaultTaxCode ) ;
351353 } , [ defaultTaxCode , transactionID , isReadOnly ] ) ;
352354
353- const isMovingTransactionFromTrackExpense = isMovingTransactionFromTrackExpenseUtil ( action ) ;
354-
355355 const distance = getDistanceInMeters ( transaction , unit ) ;
356356 const prevDistance = usePrevious ( distance ) ;
357357
0 commit comments