Skip to content

Commit ca0f1ca

Browse files
fix: preserve effect cleanup for async pre-flight in OdometerReceiptStitcher
1 parent ae001d4 commit ca0f1ca

1 file changed

Lines changed: 8 additions & 5 deletions

File tree

src/pages/iou/request/step/confirmation/OdometerReceiptStitcher.tsx

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,12 @@ function OdometerReceiptStitcher({
121121
{uri: endUri, image: odometerEndImage},
122122
].filter((item): item is {uri: string; image: typeof odometerStartImage} => !!item.uri && item.uri.startsWith('blob:'));
123123

124+
const cleanup = () => {
125+
ignore = true;
126+
onStitchingChange(false);
127+
cancelSpan(CONST.TELEMETRY.SPAN_ODOMETER_IMAGE_STITCH);
128+
};
129+
124130
if (localImages.length > 0) {
125131
let hasExpiredImages = false;
126132
Promise.all(
@@ -147,14 +153,11 @@ function OdometerReceiptStitcher({
147153
}
148154
runStitch();
149155
});
150-
return;
156+
return cleanup;
151157
}
152158
runStitch();
153159

154-
return () => {
155-
ignore = true;
156-
cancelSpan(CONST.TELEMETRY.SPAN_ODOMETER_IMAGE_STITCH);
157-
};
160+
return cleanup;
158161
}, [isOdometerDistanceRequest, isFocused, odometerStartImage, odometerEndImage, transaction, reportID, backToReport, translate, iouType, onStitchingChange, onStitchError]);
159162

160163
return null;

0 commit comments

Comments
 (0)