I'm sorry to say so, but WASM memory and FS are two different things by design.
There's no need to make things more complex than keeping FS while resetting memory. I do it with my computer every day (almost) ;) Kind regards, Ilya Kantor > On 10 Feb 2023, at 00:05, 'Sam Clegg' via emscripten-discuss > <emscripten-discuss@googlegroups.com> wrote: > > If you are using MEMFS then its contents would (by design) be reset when you > reset your memory. > > If you want to preserve data between runs you would need some kind of > persistent store. Perhaps IDBFS? > > On Thu, Feb 9, 2023 at 2:34 PM Ilya Kantor <ilia...@gmail.com > <mailto:ilia...@gmail.com>> wrote: >> That's a great hint, thank you! >> >> I tried to do so, but bumped into a problem: I need to pass FS from the old >> module to the new one. >> I'm using the most basic default MEMFS. >> >> Any idea how to do it? >> >> Or maybe I should recursively walk and copy files? That's not the most >> elegant solution, but should work. >> >> Kind regards, >> Ilya Kantor >> >>> On 9 Feb 2023, at 20:30, 'Sam Clegg' via emscripten-discuss >>> <emscripten-discuss@googlegroups.com >>> <mailto:emscripten-discuss@googlegroups.com>> wrote: >>> >>> Hi Ilya, >>> >>> Emscripten doesn't have any way to do that today (at least not that I know >>> of). >>> >>> Your best bet is probably to use `-sMODULARIZE` and then construct a new >>> instance for each time you want to call `main`. i.e `new MyModule()` each >>> time. >>> >>> cheers, >>> sam >>> >>> On Thu, Feb 9, 2023 at 11:18 AM Ilya Kantor <ilia...@gmail.com >>> <mailto:ilia...@gmail.com>> wrote: >>>> Hello, >>>> >>>> I use Emscripten to compile a CLI application, and then run its _main many >>>> times. >>>> >>>> The problem is that it expects every call to be "from the scratch", with >>>> uninitialized data structures. >>>> >>>> Right now, e.g. a file has `struct my_type s`, and initializes it on the >>>> first run, then it survives till the second run and spoils it. >>>> >>>> How to re-init WASM, to clear memory for new runs (start afresh) while >>>> keeping FS untouched? >>>> >>>> >>>> -- >>>> You received this message because you are subscribed to the Google Groups >>>> "emscripten-discuss" group. >>>> To unsubscribe from this group and stop receiving emails from it, send an >>>> email to emscripten-discuss+unsubscr...@googlegroups.com >>>> <mailto:emscripten-discuss+unsubscr...@googlegroups.com>. >>>> To view this discussion on the web visit >>>> https://groups.google.com/d/msgid/emscripten-discuss/140af2b7-874c-4308-8563-044e066fd89fn%40googlegroups.com >>>> >>>> <https://groups.google.com/d/msgid/emscripten-discuss/140af2b7-874c-4308-8563-044e066fd89fn%40googlegroups.com?utm_medium=email&utm_source=footer>. >>> >>> >>> -- >>> You received this message because you are subscribed to the Google Groups >>> "emscripten-discuss" group. >>> To unsubscribe from this group and stop receiving emails from it, send an >>> email to emscripten-discuss+unsubscr...@googlegroups.com >>> <mailto:emscripten-discuss+unsubscr...@googlegroups.com>. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/emscripten-discuss/CAL_va28RpzVOUzTAr3zO5bX%2BQWTq%3DdMn08Xwc2y9odMFZKmw-g%40mail.gmail.com >>> >>> <https://groups.google.com/d/msgid/emscripten-discuss/CAL_va28RpzVOUzTAr3zO5bX%2BQWTq%3DdMn08Xwc2y9odMFZKmw-g%40mail.gmail.com?utm_medium=email&utm_source=footer>. >> >> >> -- >> You received this message because you are subscribed to the Google Groups >> "emscripten-discuss" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to emscripten-discuss+unsubscr...@googlegroups.com >> <mailto:emscripten-discuss+unsubscr...@googlegroups.com>. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/emscripten-discuss/D9B1D151-C606-4E89-AC79-823E58B61BA0%40gmail.com >> >> <https://groups.google.com/d/msgid/emscripten-discuss/D9B1D151-C606-4E89-AC79-823E58B61BA0%40gmail.com?utm_medium=email&utm_source=footer>. > > > -- > You received this message because you are subscribed to the Google Groups > "emscripten-discuss" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to emscripten-discuss+unsubscr...@googlegroups.com > <mailto:emscripten-discuss+unsubscr...@googlegroups.com>. > To view this discussion on the web visit > https://groups.google.com/d/msgid/emscripten-discuss/CAL_va2-yO%2BOY6ANUzuBU5qOfv6BikyTonT5oUomOU4FbfHAwTA%40mail.gmail.com > > <https://groups.google.com/d/msgid/emscripten-discuss/CAL_va2-yO%2BOY6ANUzuBU5qOfv6BikyTonT5oUomOU4FbfHAwTA%40mail.gmail.com?utm_medium=email&utm_source=footer>. -- You received this message because you are subscribed to the Google Groups "emscripten-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to emscripten-discuss+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/emscripten-discuss/93C2E4B0-FDDD-4B2E-B55F-ADFC4815756E%40gmail.com.