From 39cad77f7d78583668053b3d38c6507d78b11e79 Mon Sep 17 00:00:00 2001 From: Hafiz Date: Tue, 12 Aug 2025 10:26:02 -0500 Subject: [PATCH] Await genericPurchase completion before page reload to prevent request cancellation. Also adds defensive check for undefined error.response in axios interceptor to prevent "t.response undefined" errors. --- website/client/src/app.vue | 3 +++ website/client/src/components/shops/buyModal.vue | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/website/client/src/app.vue b/website/client/src/app.vue index d8f561c3c3..a3b9480aad 100644 --- a/website/client/src/app.vue +++ b/website/client/src/app.vue @@ -209,6 +209,9 @@ export default { return response; }, error => { // Set up Error interceptors if (error.response.status >= 400) { + if (!error.response) { + return Promise.reject(error); + } const isBanned = this.checkForBannedUser(error); if (isBanned === true) return null; // eslint-disable-line consistent-return diff --git a/website/client/src/components/shops/buyModal.vue b/website/client/src/components/shops/buyModal.vue index 408c790045..df6a2763a0 100644 --- a/website/client/src/components/shops/buyModal.vue +++ b/website/client/src/components/shops/buyModal.vue @@ -851,7 +851,7 @@ export default { return; } if (this.genericPurchase) { - this.makeGenericPurchase(this.item, 'buyModal', this.selectedAmountToBuy); + await this.makeGenericPurchase(this.item, 'buyModal', this.selectedAmountToBuy); await this.purchased(this.item.text); } }