Skip to content

Commit 141a4f3

Browse files
committed
fix: Prevent event listener to be removed by unrelated event
Event listener should only remove self after it sends response.
1 parent e088271 commit 141a4f3

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

src/contentScript/main.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -132,14 +132,16 @@ runtime.onMessage.addListener((message, _sender, sendResponse) => {
132132

133133
document.addEventListener(
134134
'mh:tx-id:response',
135-
(ev: CustomEvent<MediaHarvest.TxIdResponseDetail>) => {
135+
function responseTxId(ev: CustomEvent<MediaHarvest.TxIdResponseDetail>) {
136136
const { uuid: respUUID, value } = ev.detail
137137
if (respUUID !== uuid) return
138+
138139
sendResponse(
139140
messageResult.value.makeResponse(true, { transactionId: value })
140141
)
141-
},
142-
{ once: true }
142+
143+
document.removeEventListener('mh:tx-id:response', responseTxId)
144+
}
143145
)
144146

145147
document.dispatchEvent(

0 commit comments

Comments
 (0)