Skip to content

Commit 3ddc3e7

Browse files
committed
Fix browser.test_fetch_stream_abort_asan race condition by avoiding double free of the fetch structure.
1 parent ffb1e90 commit 3ddc3e7

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

test/fetch/test_fetch_stream_abort.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111
#include <emscripten/fetch.h>
1212
#include <emscripten/eventloop.h>
1313

14+
bool fetch_abort_queued = false;
15+
1416
int main() {
1517
emscripten_fetch_attr_t attr;
1618
emscripten_fetch_attr_init(&attr);
@@ -32,6 +34,8 @@ int main() {
3234
fetch->dataOffset,
3335
fetch->dataOffset + fetch->numBytes);
3436

37+
if (fetch_abort_queued) return;
38+
fetch_abort_queued = true;
3539
emscripten_set_immediate([](void *arg) {
3640
emscripten_fetch_t *fetch = (emscripten_fetch_t *)arg;
3741
printf("Abort fetch when downloading\n");

0 commit comments

Comments
 (0)