Robin Christ

Results 47 comments of Robin Christ

AMD64 and Linux... Yeah, an ABI mismatch is a possibility, but I don't know how I could prove or disprove this...

> I missed that doing it twice causes a problem. However, `auto test = Nan::TypedArrayContents(dataArr);` seems a bit off, `Nan::TypedArrayContents` does not permit assigning, copying or even moving. Well that'd...

I've got a stacktrace with a debug version of Electron (9.0.0, but same for all other versions) ``` bt * thread #1, name = 'electron', stop reason = signal SIGILL:...

@addaleax Compile Flags for Electron 9 (that happens to be the version I have a debug build of...) ``` /usr/bin/c++ -DEIGEN_MPL2_ONLY -DNOGDI -DNOMINMAX -DSPDLOG_ACTIVE_LEVEL=SPDLOG_LEVEL_DEBUG -DSPDLOG_COMPILED_LIB -DSPDLOG_FMT_EXTERNAL -DSPDLOG_NO_ATOMIC_LEVELS -DV8_31BIT_SMIS_ON_64BIT_ARCH -DV8_COMPRESS_POINTERS -DVCL_NAMESPACE=vcl...

Yeah it definitely sticks out... But I'm not sure where the ABI mismatch could be. I'm definitely building against the right node version (otherwise the addon wouldn't be able to...

Yes, in the original version. But this definitely happens inside the main loop (in an async worker). I have prepared another minimal example (don't know whether I'll be able to...

``` bt * thread #1, name = 'electron', stop reason = signal SIGILL: illegal instruction operand * frame #0: 0x000055d4a39df572 electron`v8::base::OS::Abort() at platform-posix.cc:457:5 frame #1: 0x000055d4a39d9ad5 electron`::V8_Fatal() at logging.cc:167:3 frame...

Update: Only in the release version does the renderer crash depend on the array size For the debug version, the renderer crash happens regardless of the array size

Oh yeah, I forgot to follow up. TL;DR I'm almost certain that this is an ABI issue Electron and Node are built against libc++ whereas the default on Linux is...

Maybe this should be added to the "Known issues" section? And it would probably be good to place a warning at the very top like ``` Please be aware that...