emscripten-core / emscripten-core/emscripten

Wasmfs - Running an app using opfs at some point stdout gets rerouted to opfs for some reason

Open
#24,681 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
27.6k
Forks
3.6k
Avg merge
1d 1h
Merged PRs (30d)
105

Description

Please include the following in your bug report:

**Version of emscripten/emsdk:**
4.0.10

I'm struggling to debug this, it's fine for a bit and then whenever I call `std::cout << "Something"` it crashes with:

```
VehicleDataVisualiser.js:90 Uncaught RuntimeError: unreachable
at VehicleDataVisualiser.wasm.__trap (http://localhost:8080/VehicleDataVisualiser.wasm:wasm-function[188769]:0x3751cc8)
at abort (http://localhost:8080/VehicleDataVisualiser.js:839:5)
at ___assert_fail (http://localhost:8080/VehicleDataVisualiser.js:1654:10)
at VehicleDataVisualiser.wasm.(anonymous namespace)::OPFSFile::write(unsigned char const*, unsigned long, long long) (http://localhost:8080/VehicleDataVisualiser.wasm:wasm-function[188227]:0x3738e4f)
at VehicleDataVisualiser.wasm.wasmfs::DataFile::Handle::write(unsigned char const*, unsigned long, long long) (http://localhost:8080/VehicleDataVisualiser.wasm:wasm-function[188534]:0x374375d)
at VehicleDataVisualiser.wasm.writeAtOffset(OffsetHandling, unsigned int, __wasi_ciovec_t const*, unsigned long, unsigned long*, unsigned long long) (http://localhost:8080/VehicleDataVisualiser.wasm:wasm-function[188533]:0x3743564)
at VehicleDataVisualiser.wasm.__wasi_fd_write (http://localhost:8080/VehicleDataVisualiser.wasm:wasm-function[188532]:0x374327c)
at VehicleDataVisualiser.wasm.__stdio_write (http://localhost:8080/VehicleDataVisualiser.wasm:wasm-function[165586]:0x300491e)
at VehicleDataVisualiser.wasm.__fwritex (http://localhost:8080/VehicleDataVisualiser.wasm:wasm-function[165750]:0x300a5a1)
at VehicleDataVisualiser.wasm.fwrite (http://localhost:8080/VehicleDataVisualiser.wasm:wasm-function[165751]:0x300a62f)
$__trap @ __trap.c:2
abort @ VehicleDataVisualiser.js:839
___assert_fail @ VehicleDataVisualiser.js:1654
$(anonymous namespace)::OPFSFile::write(unsigned char const*, unsigned long, long long) @ opfs_backend.cpp:231
$wasmfs::DataFile::Handle::write(unsigned char const*, unsigned long, long long) @ file.h:363
$writeAtOffset(OffsetHandling, unsigned int, __wasi_ciovec_t const*, unsigned long, unsigned long*, unsigned long long) @ VehicleDataVisualiser.wasm:0x3743564
$__wasi_fd_write @ VehicleDataVisualiser.wasm:0x374327c
$__stdio_write @ __stdio_write.c:17
$__fwritex @ fwrite.c:16
$fwrite @ fwrite.c:33
$std::__2::__do_fputc(char, _IO_FILE*) @ VehicleDataVisualiser.wasm:0x36fbc03
$std::__2::__stdoutbuf::overflow(int) @ VehicleDataVisualiser.wasm:0x36fbafd
$std::__2::basic_streambuf>::sputc[abi:ne200100](char) @ VehicleDataVisualiser.wasm:0x36f3c1e
$std::__2::ostreambuf_iterator>::operator=[abi:ne200100](char) @ VehicleDataVisualiser.wasm:0x36f690e
$std::__2::basic_ostream>::put(char) @ VehicleDataVisualiser.wasm:0x36f6997
$std::__2::basic_ostream>& std::__2::endl[abi:ne200100]>(std::__2::basic_ostream>&) @ basic_ostream.h:540
$std::__2::basic_ostream>::operator<<[abi:ne200100](std::__2::basic_ostream>& (*)(std::__2::basic_ostream>&)) @ basic_ostream.h:77
$apg::CarSelectorWidget::init()
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.